Optymalizacja systemu OS X pod kątem dysków SSD

Wymieniając tradycyjny dysk talerzowy na dysk SSD niewątpliwie odczujemy znaczne przyśpieszenie operacji dyskowych. System OS X można dodatkowo zoptymalizować pod kątem dysków SSD co nie tylko jeszcze bardziej poprawi komfort pracy ale co i nie mniej ważne przedłuży żywotność naszego dysku.

Aby dostosować nasz system do pracy z dyskiem SSD, należy wykonać kilka nieskomplikowanych operacji.
Większość czynności wykonamy w trybie tekstowym w konsoli systemowej.

WYŁĄCZENIE HIBERNACJI

user@local:$ sudo pmset -a hibernatemode 0

Po wpisaniu tego polecenia w konsoli zostanie wyłączona hibernacja systemu, dzięki temu nie będzie robiony zrzut pamięci RAM na nasz dysk. Za każdym razem kiedy usypialiśmy nasz komputer np. z 8GB RAM, to naszym dysku robiony jest zrzut tej pamięci. Prawdopodobnie tylko część danych jest zapisywana i poddawana kompresji ale to i tak jakaś pewnie nie mała porcja danych będzie drenowała nasz dysk. Dodatkowo oszczędzamy miejsce na dysku. Po wyłączeniu hibernacji usuwamy plik z obrazem pamięci:

user@local:$ sudo rm /var/vm/sleepimage

Niestety podczas restartu systemu plik sleepimage jest automatycznie tworzony ( w moim przypadku tworzy 2GB plik / chociaż moja pamięć RAM wynosi 16GB ) Następnie aby plik sleepimage nie był tworzony automatycznie po restarcie systemu należy wykonać poniższe czynności.

# sudo rm /var/vm/sleepimage
# sudo touch /var/vm/sleepimage
# sudo chflags uchg /var/vm/sleepimage

USTAWIENIE NOATIME

Czym jest noatime ? Otóż w systemach unixowych i ich pochodnych jak os x system podczas każda operacja na pliku jest rejestrowana przez znacznik czasu dla poszczególnych operacji: zapis, odczyt, modyfikacja etc. Wyłączenie NOATIME spowoduje, że system nie będzie aktualizował znacznika czasu dla pliku kiedy będzie otwierany/odczytywany.

Aby wyłączyć NOATIME tworzymy plik „com.nullvision.noatime.plist” w katalogu:
/Library/LaunchDaemons/

Jego zawartość jest następująca:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
        "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
    <dict>
        <key>Label</key>
        <string>com.nullvision.noatime</string>
        <key>ProgramArguments</key>
        <array>
            <string>mount</string>
            <string>-vuwo</string>
            <string>noatime</string>
            <string>/</string>
        </array>
        <key>RunAtLoad</key>
        <true/>
    </dict>
</plist>

Ustawiamy prawa dostępu do nowo utworzonego pliku:

user@local:$ sudo chown root:wheel /Library/LaunchDaemons/com.nullvision.noatime.plist

Po zrestartowaniu komputera, sprawdzamy w terminalu/konsoli czy operacja przebiegła prawidłowo:

user@local:$ mount | grep " / "

Jeśli w komunikacie zwrotnym dostajemy informacje o właściwościach dysku i mamy tam znacznik noatime to znaczy, że operacja zakończyła się sukcesem 🙂

/dev/disk0s2 on / (hfs, local, noatime)

WYŁĄCZENIE SUDDEN MOTION SENSOR

Jeśli w twoim komputerze jest tylko dysk SSD to nie ma sensu też aby była włączona opcja zabezpieczająca dysk talerzowy przed wibracjami czy upadkiem:

user@local:$ sudo pmset -a sms 0

Jeśli jednak w twoim komputerze jest choć jeden dysk talerzowy, to nic dokonuj żadnych zmian, gdyż  ustawienie działa globalnie na wszystkie dyski.

WYŁĄCZENIE JOURNALING

user@local:$ diskutil disableJournal "/Volumes/NAZWA_NASZEGO_DYSKU"

Musimy oczywiście podać nazwę naszego dysku w którym ma być wyłączony journaling.
Z wyłączeniem Journalingu należy być ostrożnym. W przypadku systemu pliku HFS+ brak Journalingu może zwiększyć prawdpodobieństwo uszkodzenia plików.

WYŁĄCZENIE TWORZENIA LOKALNYCH KOPII ZAPASOWYCH TIME MACHINE

Aby system nie tworzył na dysku systemowej lokalnej kopii, należy wykonać poniższe polecenie:

# sudo tmutil enablelocal

A kopie zapasowe trzymać na zewnętrznym dysku/serwerze wykorzystując TimeMachine lub konsolowy rsync tworząc kopie przyrostowe.

WŁACZENIE TRIM

Możliwość włączenia TRIM dla dysków nie wspieranych przez Apple wykonujemy za pomocą poniższego polecenia:

# sudo trimforce enable

RAMDYSK

Aby zaoszczędzić zapisu tymczasowych plików Cache i TMP bardzo dobrym rozwiązaniem jest utworzenie RAMDYSKu – czyli wirtualnego dysku, który wykorzystuje szybką pamięć RAM.
Więcej o tworzeniu ramdysku poniżej:

RamDysk OSX MacOS
Przenoszenie Cache do Ramdysku OSX MacOS

Testowane na systemach OS X: Lion, Mountain Lion, Mavericks, El Capitan, MacOS.

Dodaj komentarz