Поддавшись всебеларуской волне покупательского ажиотажа, я спас часть свободно неконвертируемой валюты в виде Crucial CT120M500SSD1. На самом деле, меня окончательно расстроила отрисовка фоток в полсекунды, на ста фотках теряем почти минуту. Данный диск шёл в комплектации, практически аналогичной OEM: о SATA-кабели и салазках предстоит позаботиться самостоятельно. Вдохновившись настольными книгами (1, 2) зюзоида о SSD, я поспешил установить принудительный AHCI-режим в BIOSe и обновить прошивку контроллера. Если первый вопрос решился монотонным перебиранием синеэкранных настроек, то iso производителя с freeDOS меня обижал, не загружаясь после раскатывания на флешку с помощью dd. Что ж, оказавшийся под рукой unetbootin справился с задачей успешно, и я узнал, что последняя прошивка уже установлена :)
Я уже начал раскидывать карты, когда мне будет не лень заняться переносом+обновлением/установкой системы, но трёхлетний /home в btrfs перемонтировался в режим только для чтения. Вот тут надо было делать экстренный бэкап, но я, вооружившись верой в никсы в общем и oracle в частности, сделал проверку файловой системы с исправлением ошибок. Не сложно почувствовать, что припарка полумёртвому не только не помогла, но даже и добила. Я серьёзно, никогда (слышите, никогда!) не пробуйте исправить ошибки в файловой системе btrfs без бэкапа оной. Разработчики всерьёз рекомендуют не париться и развернуть данные на отформатированный раздел.
Свежий образ зузи с кедами был успешно раскатан с помощью dd на ту же флешку. SSD разбился на корень и раздел под фоточки в ext4, разделы с первой выжившей бунтой и ex-btrfs стали /var и /home в xfs (да-да, жизнь меня ничему не учит), всем разделам был добавлен флаг монтирования noatime, который отключает сохранения времени последнего доступа (не изменения, а именно доступа) и уменьшает количество операций записи, а разделам — ещё и discard для задействования TRIM. Совершив небольшой флешбек, добавим /tmp в tmpfs c noatime, поскольку он перестал создаваться по умолчанию, и nodiratime к xfs. Также выберем deadline или noop как менеджер операция ввода/вывода по умолчанию.
Пропустим никому неинтересный этап установки и удаления пакетов, разворачивания бэкапа в хомяк и перенос рутовых настроек. Создадим правило udev для корректного распределения менеджеров ввода/вывода по устройствам, например, /etc/udev/rules.d/60-sched.rules :
#set deadline scheduler for non-rotating disks
ACTION=="add|change", KERNEL=="sd[a-z]", ATTR{queue/rotational}=="0", ATTR{queue/scheduler}="deadline"
# set cfq scheduler for rotating disks
ACTION=="add|change", KERNEL=="sd[a-z]", ATTR{queue/rotational}=="1", ATTR{queue/scheduler}="cfq"
Выключим readahead: sudo systemctl disable systemd-readahead-collect.service ; sudo systemctl disable systemd-readahead-replay.service
Вот, пожалуй, и всё на сегодня, о привнесённых новым релизом проблемах и их решении напишу в следующей записи. И да, ssd — это круто!