
Не так давно я наконец приобрёл себе SSD жёсткий диск. Острой нужды в нём не испытывал, но было очень интересно поиграться с ним. К сожалению, как только я его приобрёл, я сильно заболел. В итоге новенькое устройство две недели лежало без дела. Но таблетки помогли, я вновь полон сил, и собираюсь рассказать как настроить Ubuntu 11.10 для работы с SSD.
Лишние танцы с бубном нужны из за того, что у SSD куда более больший износ, чем у привычных HDD. Поэтому нужно ограничить число записей на жёсткий диск к минимуму. Я не утверждаю, что мой способ оптимизации самый лучший, но как мне показалось всё довольно таки неплохо.
Отмечу, что у меня на компьютере не только Ubuntu, но и Windows. Обе эти ОС стоят на одном SSD. Так же, помимо SSD на 60Gb, у меня установлен HDD на 1Tb.
Содержание
Установка Ubuntu 11.10 на SSD
Я решил установить Ubuntu с ноля. Стал вопрос о создании отдельных разделов. Путём чтения множества манов было выяснено, что самые частоперезаписываемые каталоги - это /home (ну это было очевидно), /tmp и /var. Можно было устроить заморочки, и настроить монтирование /tmp и /var в оперативную память. Так же были другие варианты, но я решил раз есть HDD, то и поставлю это всё на него. Так я слегка проигрываю в скорости, зато не так сильно изнашиваю SSD. Файловую систему я не трогал, так и оставил везде ext4, но слегка допилил.
Ах да. Файл подкачки я не ставил, ибо думаю, что восьми гигабайт оперативной памяти ОС хватит за глаза.
Файловая система и TRIM
Внимание! Инструкция ниже - ошибочная! Правильная технология включения TRIM описана тут: TRIM - Разгоняем SSD в Ubuntu. Добавлять discard в /etc/fstab не нужно!
Как известно, ext4 - журналируемая файловая система. Для SSD это не хорошо. Рекомендуют отключать его, но я обошёлся более простым способом, а именно - отключил запись времени обращения к файлам и папкам. Для этого открываем /etc/fstab:
1 |
sudo gedit /etc/fstab |
Нам нужна примерно такая строчка:
1 2 |
# / was on /dev/sda5 during installation UUID=a189806d-eb0e-4d69-8fc6-e7e3d7eb53d7 / ext4 errors=remount-ro 0 1 |
Нужно добавить некоторые дополнительные опции. Я добавил noatime, nodiratime и discard.
- discard - Включает технологию TRIM, которая распределяет нагрузку на SSD
- noatime и nodiratime - Благодаря этим опциям ОС не будет записывать время последнего обращения к файлам и папкам
Получилось примерно так:
1 2 |
# / was on /dev/sda5 during installation UUID=a189806d-eb0e-4d69-8fc6-e7e3d7eb53d7 / ext4 noatime,nodiratime,discard,errors=remount-ro 0 1 |
Отключаем работу с файлом подкачки
Хоть я и не делал swap раздел, я всё равно отключил работу с файлом подкачки. Так, на всякий случай. Для этого открываем файл /etc/sysctl.conf и прописываем следующий параметр:
1 |
vm.swappiness = 1 |
Что бы изменения вступили в силу, нужно перезагрузить компьютер, либо ввести следующую команду:
1 |
sudo sysctl -p |
Отложенная запись
С помощью отложенной записи ядро будет хранить данные, ожидающие записи на диск, и записывать их либо при острой необходимости, либо по истечении таймаута. Обычно время хранения ставится на 60 секунд, но можно и больше. Для этого открываем файл /etc/sysctl.conf:
1 |
sudo gedit /etc/sysctl.conf |
Далее добавляем нужные параметры:
1 2 |
vm.laptop_mode = 5 vm.dirty_writeback_centisecs = 6000 |
Меняем планировщик
Для работы с SSD диском больше подходит планировщик noop. Для начала проверим какой именно планировщик у вас включен:
1 |
cat /sys/block/sda/queue/scheduler |
В квадратных скобках выводится тот планировщик, что у вас установлен на данный момент. Если это не noop - исправляем. Для этого нужно отредактировать GRUB:
1 |
sudo gedit /etc/default/grub |
В открывшемся файле ищем опцию GRUB_CMDLINE_LINUX_DEFAULT. По дефлоту там стоит только "quiet splash". Прописываем рядом "elevator=noop". У меня получилось следующее:
1 |
GRUB_CMDLINE_LINUX_DEFAULT="elevator=noop" |
Я удалил значения "quiet splash", так как не нуждаюсь в красивой картинке при запуске, а выиграть пару секунд хотелось.
После всех манипуляций не забываем обновить GRUB:
1 |
sudo update-grub |
Итог
Что же я получил в итоге. Не скажу, что время на загрузку системы ощутимо уменьшилось, ибо оно и так было буквально несколько секунд. А вот программы действительно стали бегать ощутимо быстрее. Даже LibreOffice, который всегда загружался довольно долго, теперь готов к работе спустя несколько секунд после запуска.
В общем если вам важна каждая секунда - SSD ваш выбор. Если нет то можно легко обойтись, Ubuntu итак довольно быстрая система.