Wednesday, March 27, 2013

Установка системы на SSD: тонкости и тюнинг

В конфигурации два HDD:
  • sda: SSD Crucial M4 128 GB
  • sdb: HDD Seagate SATA-III 3Tb ST33000651AS
На SSD стоит Windows 7.
Схема разбиения для линуксовых разделов была принята следующая:
  • sda3 - /boot (200M)
  • sda4 - extended partition
  • sda5 - / (30G)
  • sda6 - swap (8G)
и
  • sdb4 - /tmp (10G)
  • sdb5 - /var/log (4G)
  • sdb6 - /home (сколько останется :)

В процессе установки выяснилось, что инсталлятор LMDE не умеет создавать разделы на разных устройствах. Пришлось выделить временно разделы на sda для /tmp, /var/log и /home (выделял по 2G).
После установки создал при помощи обожаемого GParted Live нужные разделы на sdb и скопировал разделы поштучно при помощи
$ cp -ax /old_content /new_content
The -a option preserves the original system as much as possible. The -x option limits cp to a single file system... (c) Источник
Т.е. опция -x нужна для предотвращения копирования подмонтированных файловых систем. В моём случае один раздел нужно просто скопировать в другой, так что опция -x теряет смысл (оставляю её здесь на память для себя).
После копирования старые разделы можно удалить, а для новых обновить /etc/fstab:
# /dev/sdb4
UUID=7aaf7a78-...   /tmp   ext4   rw,errors=remount-ro   0 0
# /dev/sdb5
UUID=aeacecfd-...   /var/log   ext4   rw,errors=remount-ro   0 0
# /dev/sdb6
UUID=0dff36fd-...   /home   ext4   rw,errors=remount-ro   0 0

После этого первым делом добавил опцию discard для раздела /, который находится на SSD:
# /dev/sda5
UUID=c97278c1-...   /   ext4   rw,discard,errors=remount-ro   0 1
И изменил кое-какие дополнительные настройки:
  • в /etc/sysctl.conf дописал:
vm.dirty_writeback_centisecs = 6000
vm.swappiness = 0
что заставляет свопить только при заполнении всей физической памяти, а также устанавливает лимит отложенной записи в 60 секунд (100 centisecs = 1 sec);
  • заменил I/O планировщик (по умолчанию CFQ) на DEADLINE, для этого:
    • а) в /etc/default/grub изменил строку GRUB_CMDLINE_LINUX_DEFAULT и добавил в конец elevator=deadline
    • б) для обновления Grub выполнил:
sudo update-grub

Источники информации: раз и два.

Вводная

Серия заметок про GNU/Linux.

Создана как хранилище полезных знаний, которые позже не лишним будет перечитать самому.

Стартовый дистрибутив - Linux Mint Debian Edition (LMDE), т.к. ноги растут из Debian, и помимо этого имеет человеческое лицо и шикарную рабочую среду Mate.

О подсветке синтаксиса в блоге читать здесь.
Пример для bash на сайте автора.

Плюс фикс стилей от NathanAldenSr, взят здесь: http://stackoverflow.com/questions/11804789/extra-lines-using-syntaxhighlighter-for-chrome-only

Поехали!