Оптимизация для работы с SSD-дисками

Материал из wiki.nntc.nnov.ru
Версия от 19:19, 16 мая 2012; Bond (обсуждение | вклад) (Новая: ===Включение поддержки TRIM=== Для включения поддержки TRIM в /etc/fstab нужно добавить параметр discard: sudo nano /etc/fs...)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к навигации Перейти к поиску

Включение поддержки TRIM

Для включения поддержки TRIM в /etc/fstab нужно добавить параметр discard:

sudo nano /etc/fstab

по умолчанию страка выглядит так:

   UUID=b49c6a96-ee65-4c12-9aca-66f5ea927aab / ext4 errors=remount-ro 0 1 

меняем на:

   UUID=b49c6a96-ee65-4c12-9aca-66f5ea927aab / ext4 discard,noatime,nodiratime,errors=remount-ro 0 1


Проверка работы TRIM

Проверить работу TRIM можно с помощью следующей последовательности команд исполняемых в консоли: 1. создаем временный файл заполненный случайными данными:

cd /

sudo dd if=/dev/urandom of=tmpfile count=10 bs=512k oflag=direct

2. находим номер сектора диска содержащего данные этого файла (нам нужно любое число из колонки begin_LBA):

sudo hdparm --fibmap tmpfile

3. проверяем содержимое этого сектора:

sudo hdparm --read-sector 17179648 /dev/sda

(вместо 17179648 подставьте номер сектора показанный командой из п.2 и вместо /dev/sda устройство которым обозначен SSD диск) будет показан набор случайных данных похожий на:

   …
   adb1 0d7a e027 042e 84ad 3231 2f6c 85f1
   58ee feb6 cac0 d403 5df0 46db 2cfe 531c
   3cbd 5a21 e0b6 9b57 799a 7ac8 dd15 3883 

4. удаляем файл:

sudo rm tmpfile
sudo sync

5. проверяем содержимое файла еще раз:

sudo hdparm --read-sector 17179648 /dev/sda

при включенной поддержке TRIM вывод будет содержать нули:

   …
   0000 0000 0000 0000 0000 0000 0000 0000
   0000 0000 0000 0000 0000 0000 0000 0000
   0000 0000 0000 0000 0000 0000 0000 0000 

если вывод содержит не нули, а данные из п. 3, то поддержка TRIM не осуществляется и нужно: Включить поддержку TRIM