Есть ли в Ubuntu поддержка команды TRIM для использования с SSD?

SSD-накопители должны быть «очищены / сброшены» после того, как накопитель заполнен, для поддержания производительности. Это делается с помощью команды TRIM для новых накопителей SSD. Поддерживает ли Ubuntu команду TRIM (через hdparm и т. Д.) Для очистки / сброса этих дисков?

34
задан 25 October 2012 в 08:48

5 ответов

Похоже, что есть поддержка TRIM в 10.10 и более новых версиях:

[ 113] Кроме того, работа с TRIM происходит автоматически - пустые блоки автоматически освобождаются, когда они больше не нужны (например, вы удаляете файл), если диск сообщает, что он поддерживает TRIM. Вам не нужно вручную вводить команду hdparm, чтобы это работало.

0
ответ дан 25 October 2012 в 08:48

Linux поддерживает автоматический TRIM с файловой системой ETX4 начиная с ядра 2.6.33.

Первый релиз Ubuntu с автоматической поддержкой TRIM - 10.10 (Maveric), но его нужно активировать в fstab (как описано здесь ).

0
ответ дан 25 October 2012 в 08:48

Ответ Джереми не совсем точный AFAIK. В течение некоторого времени я работал с последними стабильными ядрами на Lucid и очень внимательно следил за состоянием TRIM, поскольку в качестве основного диска я использовал OCZ Agility.

Вот что (я думаю) я знаю:

  • Ядро поддерживает TRIM с 2.6.33 (Maverick - 2.6.35).

  • EXT4 поддерживает TRIM, но только когда ведение журнала отключено.

  • Принцип работы TRIM в ядре очень простой и довольно медленный. Диски, соответствующие спецификациям, могут принимать несколько диапазонов, но ядро ​​в настоящее время может использовать только один диапазон за раз. Это происходит от того, что я прочитал, возможно, месяц назад. Хотелось бы, чтобы у меня был источник, поскольку это может быть неверно или больше не может применяться.

Журналирование - это то, что убивает это для меня. Повреждение данных - это PITA.

Однако, более новые версии hdparm (v9.25 - Maverick - v9.27) поставляются со скриптом под названием wiper.sh, который выполняет быстрый анализ диска и затем обрезает все пустое пространство. Вместо того, чтобы терять функции, мне намного проще запускать cron wiper.sh раз в неделю (или раз в день / месяц / что угодно). Ухудшение SSD для диска ОС не происходит так быстро, если вы постоянно не разрываете вещи. Вам не нужно TRIMming в реальном времени.

Также существует интерфейс GUI под названием DiskTRIM , которого нет в репозиториях. Менее опытным пользователям может показаться, что это проще в использовании, чем настройка заданий cron.

Есть PPA для hdparm и disktrim, и все они могут быть запущены на Lucid (и обратно) без необходимости в ядрах 2.6.33+.

0
ответ дан 25 October 2012 в 08:48

У меня работает 11.04, и не похоже, что TRIM работает как положено.

Я протестировал , используя приведенные здесь инструкции, чтобы создать файл, удалить его и посмотреть, обнуляются ли / удаляются ли сектора .

Я попытался включить TRIM , используя приведенные здесь инструкции, , но без игры в кости.

Я запускаю wiper.sh, я получаю

/sbin/wiper.sh --verbose --commit /dev/sda1
wiper.sh: Linux SATA SSD TRIM utility, version 3.3, by Mark Lord.
rootdev=/dev/sda1
fsmode2: fsmode=read-write
/: fstype=ext4
freesize = 13785252 KB, reserved = 137852 KB
Preparing for online TRIM of free space on /dev/sda1 (ext4 mounted read-write at /).

This operation could silently destroy your data.  Are you sure (y/N)? y
Creating temporary file (13647400 KB)..
Syncing disks..
Beginning TRIM operations..
get_trimlist=/sbin/hdparm --fibmap WIPER_TMPFILE.9689

/dev/sda:
trimming 27294800 sectors from 462 ranges
succeeded
Removing temporary file..
Syncing disks..
Done.

Однако, если я его запускаю опять же, он показывает то же количество секторов / диапазонов, которые необходимо обрезать, и снова сообщает об успехе. Я получаю одно и то же каждый раз. Не похоже, что сектора когда-либо удаляются / освобождаются. Чтение их по-прежнему показывает те же данные.

Любопытно, если кто-то еще заставил его работать.

0
ответ дан 25 October 2012 в 08:48

В общем, да, потому что есть множество способов получить более новые ядра. Если мы уточним ваш вопрос следующим образом: «Имеет ли 10.04 LTS встроенную поддержку для команды?» тогда ответ - нет. Однако ядра Maverick и Natty (-generic, -generic-pae, -server и -virtual flavors) были перенесены в 10.04 LTS и доступны из $ release-updates в репозиториях Ubuntu, например, linux-image-generic-lts-backport-maverick это [ 111] Бэкпорт Маверика в Люсид .

0
ответ дан 25 October 2012 в 08:48

Другие вопросы по тегам:

Похожие вопросы: