Jump to content
  • 1

TRIM подключенного SSD/HDD


redarmy

Question

Удалось заставить работать TRIM на внешнем диске WD MyPassport 5Tb (как знаете, сейчас большинство больших HDD стали с черепичной записью, из-за чего они поддерживают TRIM - чтобы не было проблем с быстродействием по мере заполнения диска). По идее это должно работать и на SSD.

 Настраивается все через OPKG, сам внешний диск/контроллер должны поддерживать TRIM. Файловая система EXT4.

- Устанавливаем необходимые пакеты

# opkg install fstrim

# opkg install lsblk

Во всех командах прописываете пути до своего диска и точки монтирования, у меня это

/dev/sda

/tmp/mnt/d572541d-d7c9-4540-bef3-8da2d0b4f9c2

- Проверяем, что сейчас TRIM не работает

# fstrim -v /tmp/mnt/d572541d-d7c9-4540-bef3-8da2d0b4f9c2

fstrim: /tmp/mnt/d572541d-d7c9-4540-bef3-8da2d0b4f9c2: the discard operation is not supported

 

# cat /sys/block/sda/device/scsi_disk/0\:0\:0\:0/provisioning_mode

disabled

 

# lsblk --discard /dev/sda

NAME   DISC-ALN DISC-GRAN DISC-MAX DISC-ZERO

sda        0     4K        0B         0

sda1       0     4K        0B         0

sda2       0     4K        0B         0

здесь DISC-MAX - по нулям

- Включаем поддержку TRIM

# echo -n unmap > /sys/block/sda/device/scsi_disk/0\:0\:0\:0/provisioning_mode

- Проверяем что включение поддержки сработало

# cat /sys/block/sda/device/scsi_disk/0\:0\:0\:0/provisioning_mode
unmap

Должен сохраниться unmap

 

# lsblk --discard /dev/sda

NAME   DISC-ALN DISC-GRAN DISC-MAX DISC-ZERO

sda         0       4K       4G         0

sda1        0       4K       4G         0

sda2        0       4K       4G         0

здесь  DISC-MAX теперь ненулевой - 4Gb

- Запускаем TRIM

# fstrim -v /tmp/mnt/d572541d-d7c9-4540-bef3-8da2d0b4f9c2

/tmp/mnt/d572541d-d7c9-4540-bef3-8da2d0b4f9c2: 4.5 TiB (4920666669056 bytes) trimmed

По выводу команды видно, что TRIM сработал, после удаления файлов тоже срабатывает как надо:

# fstrim -v /tmp/mnt/d572541d-d7c9-4540-bef3-8da2d0b4f9c2
/tmp/mnt/d572541d-d7c9-4540-bef3-8da2d0b4f9c2: 121.7 MiB (127647744 bytes) trimmed


Кому надо, для автоматизации могут добавить соответствующие команды в cron и т.д.

  • Thanks 1
Link to comment
Share on other sites

18 answers to this question

Recommended Posts

  • 0
1 час назад, redarmy сказал:

как знаете, сейчас большинство больших HDD стали с черепичной записью,

Так а зачем же вы покупаете мусор? Берите нормальные жесткие диски с CMR .....если интересуют hdd фирмы WD то это серии: WD RED PRO, WD BLACK , WD GOLD .

Покупая же мусорные диски, вы увеличиваете спрос на них и позволяете производителю устраивать беспредел дальше...они списки с типом записи  опубликовали только после скандала....

Использовать под nas диски с SMR записью ни в коем случае нельзя....

Edited by krass
Link to comment
Share on other sites

  • 0
1 час назад, redarmy сказал:

чтобы не было проблем с быстродействием по мере заполнения диска

И там важна проблема другая.....с черепичной записью по мере заполнения вы теряете данные...и TRIM от этого не спасет....ну и в RAID такие диски нельзя ставить

1 час назад, redarmy сказал:

По идее это должно работать и на SSD.

Про SSD: надежны только SLC, 2-bit MLC.....все остальные непригодны....( pSLC, 3-bit MLC, TLC,QLC,PLC итд итп) , к сожалению потребители покупают не глядя.....

Link to comment
Share on other sites

  • 0
8 минут назад, krass сказал:

Про SSD: надежны только SLC, 2-bit MLC.....все остальные непригодны....( pSLC, 3-bit MLC, TLC,QLC,PLC итд итп) , к сожалению потребители покупают не глядя.....

Мифы не имеющие ничего общего с практикой. 

  • Upvote 2
Link to comment
Share on other sites

  • 0
17 минут назад, keenet07 сказал:

Мифы не имеющие ничего общего с практикой. 

Смотря под какие цели применения.....вставьте в NAS и посмотрите как долго прослужат эти ssd....или для работы MSSQLS

Link to comment
Share on other sites

  • 0
11 минуту назад, krass сказал:

Смотря под какие цели применения.....вставьте в NAS и посмотрите как долго прослужат эти ssd

В общем случае в NAS особой перезаписи и нет. Лежат файлопомои годами и никого не трогают. Разве что злоупотребление торрентами может подгрызть ресурс ssd. Мучить ssd торрентами или нет каждый решает сам. Износ ssd преимущественно прерогатива рабочих дисков, но в случае домашнего сценария запаса даже tlc хватает надолго.

  • Thanks 2
Link to comment
Share on other sites

  • 0
5 минут назад, Кинетиковод сказал:

о в случае домашнего сценария запаса даже tlc хватает надолго.

Если под домашним сценарием вы имеете ввиду соцсети, ютуб, фильмы и прочее развлекалово с торрентами.....то,возможно, так оно и есть....

А вот для тех,  кто занимается, например, видеомонтажом, долгосрочным ! хранением данных итд итп...такие диски уже непригодны....я же больше про расширенное применение... надежность....были ssd c гарантией 10 лет....сейчас их убрали т.к. люди берут и с 3х летней гарантией...

P.S. давали бы гарантию 10 лет как было ранее и проблем бы не было.....хоть на OctaLC делайте ну и ресурс по записи как на MLC

Edited by krass
Link to comment
Share on other sites

  • 0
3 минуты назад, krass сказал:

А вот для тех,  кто занимается видеомонтажом, долгосрочным

Это уже профзадачи. Монтажники вон Макбуки берут за очень дорого и на ssd деньги найдут.

4 минуты назад, krass сказал:

были ssd c гарантией 10 лет....сейчас их убрали т.к. люди берут и с 3х летней гарантией...

SLC конечно найти трудно, но MLC ещё есть в продаже. Думаю профессионалов MLC вполне устроит. А вот для простого люда TLC предпочтительней, т.к. они заметно дешевле и их ресурс для дома достаточен.

  • Thanks 1
Link to comment
Share on other sites

  • 0
Только что, Кинетиковод сказал:

Это уже профзадачи. Монтажники вон Макбуки берут за очень дорого и на ssd деньги найдут.

SLC конечно найти трудно, но MLC ещё есть в продаже. Думаю профессионалов MLC вполне устроит. А вот для простого люда TLC предпочтительней, т.к. они заметно дешевле и их ресурс для дома достаточен.

Есть нюанс -- теперь вместо честных 2-bit MLC стали ставить 3-bit MLC ( это на самом деле TLC) .....( в обзорах одна начинка у ssd и контроллер, а потом раз и производитель меняет и начинку и контроллер, ухудшая параметры и надежность без объявления войны  на своем офиц. сайте )

Мне тенденция не нравится.....подождите 2-3 года и мы уже и TLC не увидим.....будут QLC/PLC, а ресурс записи всё ниже и ниже.....и гарантия всё меньше и меньше...

Очень много обмана по дискам, как пример серия black у wd --- если для 3.5 дисков они сохранили CMR, то та же серия, но для 2.5 уже на SMR -- вот что это? кроме как пакость и слова другого нет....в итоге под ноутбуки HDD пригодных нет ни у одной фирмы....приходится брать ssd 2-bit MLC ....пока они еще есть в продаже.....

Link to comment
Share on other sites

  • 0
22 минуты назад, krass сказал:

Есть нюанс -- теперь вместо честных 2-bit MLC стали ставить 3-bit MLC ( это на самом деле TLC) .....( в обзорах одна начинка у ssd и контроллер, а потом раз и производитель меняет и начинку и контроллер, ухудшая параметры и надежность без объявления войны  на своем офиц. сайте )

Мне тенденция не нравится.....подождите 2-3 года и мы уже и TLC не увидим.....будут QLC/PLC, а ресурс записи всё ниже и ниже.....и гарантия всё меньше и меньше...

Очень много обмана по дискам, как пример серия black у wd --- если для 3.5 дисков они сохранили CMR, то та же серия, но для 2.5 уже на SMR -- вот что это? кроме как пакость и слова другого нет....в итоге под ноутбуки HDD пригодных нет ни у одной фирмы....приходится брать ssd 2-bit MLC ....пока они еще есть в продаже.....

Как будто бы это всё они делают просто так или из вредности. А ёмкость SSD за счёт чего растет? При этом не увеличивая его стоимость кратно? С ростом ёмкости уменьшается и нагрузка и износ конкретных ячеек памяти. Всё за счёт технологии выравнивания износа, которая сейчас практически в любом SSD присутствует. 

 

Link to comment
Share on other sites

  • 0
В 24.01.2022 в 15:22, redarmy сказал:

Кому надо, для автоматизации могут добавить соответствующие команды в cron и т.д.

Давайте кончно.

И еще неплохо бы в инструкции добавить команду как посмотреть точки монтирования, я например смотрю по

mount | grep sd
Link to comment
Share on other sites

  • 0

а в таком варианте поддержка трим на ntfs разделах есть?

в сравнении с инструкцией в первом посте у меня имеются некоторые отличия.

~ # cat /sys/block/sda/device/scsi_disk/0\:0\:0\:0/provisioning_mode
full
~ # lsblk --discard /dev/sda
NAME   DISC-ALN DISC-GRAN DISC-MAX DISC-ZERO
sda           0        0B       0B         0
├─sda1        0        0B       0B         0
├─sda2        0        0B       0B         0
├─sda3        0        0B       0B         0
└─sda4        0        0B       0B         0

после unmap стало:

~ # cat /sys/block/sda/device/scsi_disk/0\:0\:0\:0/provisioning_mode
unmap
~ # lsblk --discard /dev/sda
NAME   DISC-ALN DISC-GRAN DISC-MAX DISC-ZERO
sda           0      512B       4G         0
├─sda1        0      512B       4G         0
├─sda2        0      512B       4G         0
├─sda3        0      512B       4G         0
└─sda4        0      512B       4G         0

и по итогу:

~ # fstrim -v /tmp/mnt/C2064E47064E3CA3
fstrim: /tmp/mnt/C2064E47064E3CA3: the discard operation is not supported

спасибо.

Link to comment
Share on other sites

  • 0

 

В 12.07.2023 в 15:24, z_mashine сказал:

поддержка трим на ntfs разделах есть

C NTFS может и не работать - тут все зависит от драйвера NTFS-3G, который в кинетике используется, в нем может быть и отключена возможности trim'a (по крайней мере раньше на линуксах было упоминание о возможных проблемах trim'a с ним).

Еще зависит от того, как диск подключен, есть дешевые китайские переходники sata-usb, которые просто физически команду trim не пропускают, и с ними это никогда не заработает.

 

Link to comment
Share on other sites

  • 0
2 hours ago, redarmy said:

Еще зависит от того, как диск подключен, есть дешевые китайские переходники sata-usb, которые просто физически команду trim не пропускают, и с ними это никогда не заработает.

Коробка от Orico на Jmicron JMS567. Трим точно умеет.

Link to comment
Share on other sites

  • 0
3 часа назад, redarmy сказал:

тут все зависит от драйвера NTFS-3G, который в кинетике используется, в нем может быть и отключена возможности trim'a

В KeeneticOS используется коммерческий драйвер NTFS от Tuxera.

Link to comment
Share on other sites

  • 0
В 24.01.2022 в 15:22, redarmy сказал:

Кому надо, для автоматизации могут добавить соответствующие команды в cron и т.д.

Спасибо за инструкцию. Всё сделал и добавил в cron ежедневное задание. Работает как часы. Только вот потом подумал, что эта команда:

В 24.01.2022 в 15:22, redarmy сказал:

- Включаем поддержку TRIM

# echo -n unmap > /sys/block/sda/device/scsi_disk/0\:0\:0\:0/provisioning_mode

При добавлении её в cron, производит каждый раз запись на внутренний накопитель, что не очень хорошо судя по статье от разработчика. Причем именно в одну и ту же ячейку, т. к. тут простейший транслятор, а не SSD. И, если не ошибаюсь (поправьте), пишется на внутренний накопитель даже независимо от того, куда установлен entware, т. к. путь монтирования /sys/block. А если не добавлять это в cron, то, понятно, слетает после переподключения накопителя или перезагрузки роутера и fstrim уже не будет работать.

Решил это через проверку состояния if-then-fi - если provisioning_mode уже unmap, то не пишем. Но, может, как-то можно сделать, чтобы папка /sys/block/sda вообще не удалялась после отключения накопителя или так нереально сделать?

Edited by DzmitryK
Link to comment
Share on other sites

  • 0
23 часа назад, DzmitryK сказал:

производит каждый раз запись на внутренний накопитель, что не очень хорошо судя по статье от разработчика. Причем именно в одну и ту же ячейку, т. к. тут простейший транслятор, а не SSD. И, если не ошибаюсь (поправьте), пишется на внутренний накопитель даже независимо от того, куда установлен entware, т. к. путь монтирования /sys/block.

А откуда такая  информация? Вроде не должно такого быть, путь /sys/ - это виртуальная файловая система sysfs, она полностью находится в оперативной памяти (фактически это доступ к текущим настройкам ОС, просто он сделан так, как будто это доступ к файлам, поэтому после отключения диска нужная папка исчезает). Т.е. ни на внутреннюю память, ни на диск ничего не должно писаться.

Я у себя сделал, чтобы только при старте роутера unmap выставлялся, т.к. диск никогда не отключаю.   С if-then-fi решение нормальное.

Link to comment
Share on other sites

  • 0
1 минуту назад, redarmy сказал:

А откуда такая  информация?

Методом исключения) Т. к. и у внутренней памяти и у подключенного накопителя - другие пути монтирования. Но да, тоже думал может быть в ОЗУ (на это намекало удаление настроек после перезапуска роутера), а не в память, пишет. Поэтому и написал, чтобы поправили)

2 минуты назад, redarmy сказал:

Я у себя сделал, чтобы только при старте роутера unmap выставлялся

Подскажите, пожалуйста, каким образом?

3 минуты назад, redarmy сказал:

С if-then-fi решение нормальное.

Выложу тогда, мало ли кому понадобится)

if [ $(cat /sys/block/sda/device/scsi_disk/0\:0\:0\:0/provisioning_mode) != unmap ]; then echo -n unmap > /sys/block/sda/device/scsi_disk/0\:0\:0\:0/provisioning_mode; fi; fstrim -v /tmp/mnt/путь_монтирования

Если кто будет делать, учтите, что для cron нужно код именно так писать, в одну строку, по-другому он почему-то не понимает...

Link to comment
Share on other sites

  • 0
33 минуты назад, DzmitryK сказал:
40 минут назад, redarmy сказал:

Я у себя сделал, чтобы только при старте роутера unmap выставлялся

Подскажите, пожалуйста, каким образом?

В   /opt/etc/init.d/ положил скрипт 'S99drivesetup', в котором выставляется unmap. Скрипт в аттаче (плюс не забыть сделать его исполняемым - chmod +x ./S99drivesetup), 

S99drivesetup

  • Thanks 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...