Включение TRIM на SSD.
> LinuxДата обновления: 23 мая 2024 г. Дата публикации: 23 мая 2024 г. Автор: Стрекаловский Александр
Команда TRIM даёт возможность операционной системе проинформировать диск SSD, что конкретные блоки больше не используются и могут быть стёрты и использованы вновь. Без TRIM скорость SSD со временем снижается и ухудшается равномерное использование ячеек алгоритмами контроллера SSD.
hard drive, ssd, hdd
До включения TRIM убедитесь, что:
- Ядро линукс вашего дистрибутива старше 2.6.33
- Ваш SSD поддерживает TRIM. Узнайте версию прошивки sudo hdparm -i /dev/ваш_диск | grep -i Fw и прочтите на официальном сайте о поддержке или sudo hdparm -I /dev/sda | grep “TRIM”.
- Разделы у вас в ext4 или btrfs.
discard в fstab.
Самый, наверное, простой способ включить поддержку TRIM для диска SSD — это указать параметр discard у разделов в /etc/fstab.
sudo -e /etc/fstab
Это пример. Не копируйте весь текст целиком, а просто добавьте discard к тем разделам, которые физически размещаются на диске SSD.
# file system mount point type options dump pass
# / was on /dev/sda1 during installation
UUID=69006d4f-bdd7-4fb8-a4ff-fe3adbcc5c73 / ext4 discard,errors=remount-ro 0 1
Теперь, после перезагрузки компьютера, разделы, расположенные на SSD, будут подмонтированы с параметром discard.
TRIM через cron.
Если по неведомой причине, совет с discard не применим, то можно команду TRIM запланировать на работу через планировщик cron.
sudo -e /etc/cron.daily/trim
и вставьте строки и сохраните файл.
#!/bin/sh
LOG=/var/log/trim.log
echo "*** $(date -R) ***" >> $LOG
fstrim -v / >> $LOG
fstrim -v /home >> $LOG
В примере подразумевается что у вас два раздела, корень / и домашний раздел /home. Если это не так, то удалите лишнее или добавьте нужное.
До поручения планировщику заниматься выполнением TRIM, желательно самому в Терминале проверить работу команды fstrim — sudo fstrim-v /.
Не забудьте сделать /etc/cron.daily/trim исполняемым — sudo chmod +x /etc/cron.daily/trim.
Так как в Ubuntu используется anacron, то пропущенные задания будут выполнены, так что не стоит беспокоиться, что наше «дневное» задание будет пропущено. Гарантированно или раз в сутки или при включении компьютера, планировщик вызовет наш /etc/cron.daily/trim и выполнит fstrim для разделов.
TRIM для зашифрованных разделов.
ВЫ ДЕЙСТВУЕТЕ НА СВОЙ СТРАХ И РИСК.
Откройте с правами рута файл /etc/default/grub — sudo -e /etc/default/grub
Найдите параметр GRUB_CMDLINE_LINUX и добавьте параметры, так чтобы привести к виду GRUB_CMDLINE_LINUX=»allow-discards root_trim=yes».
Сохраните изменения и выполните команду sudo update-grub.
Откройте с правами рута файл /etc/crypttab — sudo -e /etc/crypttab. Аккуратно добавьте параметр discard, ориентируясь по примеру
#target name source device key file options
var UUID=01234567-89ab-cdef-0123-456789abcdef none luks,discard