Оптимізація Ubuntu 11.04 під SSD

Матеріал з Вікі ЦДУ
Перейти до: навігація, пошук
                                    080105 sandisc ssd.jpg


1. Почнемо з найпростішого , але , напевно , найважливішого - монтуємо кореневу файлову систему (і всі інші файлові системи цього диска) з опцією noatime . Вона відповідає за запис у файлову систему даних про те , коли до файлу зверталися в останній раз. Отже при будь-якому відкритті файлу на читання або виконання у файлову систему заноситися позначка.

Опцію необхідно додати у файл /etc/fstab як у прикладі:

                          /dev/sda1 / ext4 noatime,errors=remount-ro 0 1

2 . Переносимо /tmp, /var/tmp і /var/log в пам'ять. Під час роботи Ubuntu 11.04, та й інші версії і дистрибутиви ОС Linux, регулярно створюють тимчасові файли в /tmp, рідше в /var/tmp. Від звернень до диска при роботі з тимчасовими файлами можна позбутися якщо перенести їх у пам'ять. Так само, якщо системні логи вам не зовсім потрібні, можете перенести в пам'ять /var/log. Варто враховувати що всі логи і тимчасові файли будуть видалятися при кожному перезавантаженні. З іншого боку це дозволить позбутися від чергової пачки звернень до диску . В той же /etc/fstab слід внести наступні рядки:

                          tmpfs /var/log tmpfs defaults 0 0
                          tmpfs /tmp tmpfs defaults 0 0
                          tmpfs /var/tmp tmpfs defaults 0 0

3 . Просимо систему не використовувати розділ підкачки. При роботі з системою, якщо їй не вистачає пам'яті, вона починає робити дампи пам'яті в розділ підкачки. Це теж призводить до великої кількості записів на SSD диск. Уникнути цього можна вказавши системі що розділ підкачки слід використовувати тільки в самому крайньому випадку. Для цього у файлі /etc/sysctl.conf наступний необхідно додати параметр :

                           vm.swappiness = 1

Зміна набуде чинності після наступного перезавантаження або після виконання команди:

                           # sysctl -p

4 . Остання рекомендація торкнеться планувальника який використовується ядром для роботи з диском. Оптимізованим під SSD є Noop планувальник. Переглянути який саме в даний момент використовується системою можна виконати наступну команду :

                           boffin@ubuntu:~$ cat /sys/block/sda/queue/scheduler
                           noop deadline [cfq]

За умовчанням в Ubuntu 11.04 встановлений універсальний планувальник CFQ . Включити Noop можна при працюючій системі за допомогою команди:

                           echo noop > /sys/block/sda/queue/scheduler

Для того що б зміни збереглися після перезавантаження , необхідно підправити конфігураційний файл завантажувача ядра. Для цього в файл /etc/default/grub в опції GRUB_CMDLINE_LINUX_DEFAULT необхідно додати параметр elevator=noop. У моєму випадку вся строчка виглядає ось так :

                           GRUB_CMDLINE_LINUX_DEFAULT="quiet elevator=noop"

Після цього слід повідомити завантажувач про зміни , виконавши команду:

                           # update-grub

Все! Для набуття чинності змін з розділами жорсткого диска слід перезавантажити систему. Тепер ваш SSD диск прослужить значно довше. Більше того, ви напевно відчуєте приріст швидкості системи, так як вона стане менше писати на диск.