Сисадмин-любитель (ulrith) wrote,
Сисадмин-любитель
ulrith

установка linux на ssd-диск

В связи с установкой Ubuntu 11.04 на нетбук (EEE PC 901) решил обновить свою старую инструкцию добавив в неё кое-что из статьи, которую насоветовали в комментариях.

Чем у нас знаменит «твердотельный» ssd-диск? Тем, что как любая флэш-память, он имеет гораздо меньшее количество циклов перезаписи до своего выхода из строя, чем у обычного винчестера. Таким образом, при установке Linux на ssd-драйв желательно свести количество обращений к диску до минимума.

0. При разметке диска на разделы важно выравнивать разделы по секторам. Для этого в программе установки Ubuntu нужно задать Align: Clusters вместо Align: MiB у каждого раздела.

1. Первое и наиглавнейшее, что нужно сделать для разгрузки диска — это при разбиении диска отказаццо от раздела подкачки. Вот так просто взять и отказаццо. Как ни странно, всё будет прекрасно работать и без него.

Практика показала что это не лучшее решение: без свопа в случае исчерпания памяти нетбук просто выключается. Нашлось более изящное решение: добавить в конец /etc/sysctl.conf строку «vm.swappiness = 10» чтобы уменьшить использование свопа.

2. Затем, в современных Linux используюццо т.н. «журналируемые» файловые системы, т.е. те, которые сохраняют информацию обо всём что с ними происходит на диске, что, очевидно, сильно интенсифицирует его использование. Вместо самой популярной на сегодняшний день ext3 выбираем её предыдущую, не журналируемую версию — ext2.

3. Следующий трик заключается в запрете сервисам работы с диском отмечать в файлах время последнего обращения, которое по сравнению с мировой революцией большого значения не имеет, а вот для уменьшения количества обращений к диску существенно. Делается это параметром noataime в файле /etc/fstab для каждого раздела.

4. Есть ещё временные файлы, которые приложения в системах Unix хранят в папке /tmp. Их желательно перенести в оперативную память, создав для этого RAM-диск:

tmpfs /tmp tmpfs defaults,noatime,mode=1777 0 0
tmpfs /var/tmp tmpfs defaults,noatime,mode=1777 0 0
tmpfs /var/log tmpfs defaults,noatime,mode=0755 0 0

Последняя опция создаёт больше проблем, чем пользы. Вместо них опять же нашлось более изящное решение: в файлах /etc/syslog.conf или /etc/rsyslog.d/ во все пути вида /var/log/* добавить спереди минус: -/var/log/*, а в файл /etc/sysctl.conf дописать строку «vm.dirty_writeback_centisecs = 15000» для уменьшения интенсивности обращения к диску в процессе записи логов.

5. I/O планировщик cfq, по умолчанию использующийся в Linux, тоже рассчитан на обычные жоские диски, так что его желательно заменить на что-то более подходящее.

В Easy Peasy команда "cat /sys/block/sda/queue/scheduler" выдаёт "noop [cfq]", т.е. альтернатива только одна — это планировщик noop. Чтобы задействовать его вместо cfg я добавил в /etc/rc.local команды для обоих моих ssd-дисков и sd-карточки:
echo noop > /sys/block/sda/queue/scheduler
echo noop > /sys/block/sdb/queue/scheduler
echo noop > /sys/block/sdc/queue/scheduler

Вместо указанно лучше сделать так: в файле /etc/default/grub добавить в параметр GRUB_CMDLINE_LINUX_DEFAULT через пробел строку «elevator=noop» и сделать sudo update-grub.

6. Последний и архиважный типс касаеццо Firefox — нашего всё. Он хранит свои временные файлы не в /tmp, а в домашнем каталоге пользователя. Чтобы это изменить, надо на странице about:config добавить строковой параметр с именем browser.cache.disk.parent_directory и значением /tmp.
</lj-like>
Tags: eee, unixway
Subscribe
  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 0 comments