На Ubuntu 16.04, с Samsung 850 EVO SSD, нужна ли какая-либо пост-конфигурация?

Samsung Evo 850 http://www.samsung.com/semiconductor/minisite/ssd/product/consumer/850evo.html

Следующий пост предполагает, что с Ubuntu 16.04 и 850 EVO, TRIM включен по умолчанию.

Однако,

cat /etc/cron.weekly/fstrim

возвращает

#!/bin/sh
# trim all mounted file systems which support it
/sbin/fstrim --all || true

, и я читал в другом месте, Какая оптимизация SSD необходима в последней версии Ubuntu? , Дэвид Амбарсумов ответил, что 16.04 не имеет опции -all. Так будет ли работать еженедельная TRIM? Я понимаю, что цитата заключается в том, что fstrim-all не доступен, но я не знаю, если это то же самое, и если fstrim - все работает, как задумано (это может быть просто моя нервозность и отсутствие понимания в этой области) .

Во-вторых, я читал в другом месте, что нужно установить параметр noatime в / etc / fstab. Это все еще актуально; В данный момент я не вижу ни noatime, ни относительного времени в этом файле?

Наконец, я прочитал, и я думаю, что это старое, что нужно выбрать другой планировщик, чем по умолчанию. Это правда, и если да, то какой?

Спасибо за ваше время !!! Большая часть информации о твердотельных накопителях устарела, и Linux и Ubuntu достигли значительных успехов за это время, поэтому это немного сбивает с толку.

4
задан 14 April 2017 в 01:24

1 ответ

fstrim поддерживает опцию --all на Ubuntu 16.04.

$ lsb_release -dirc
Distributor ID: Ubuntu
Description:    Ubuntu 16.04.1 LTS
Release:        16.04
Codename:       xenial

$ fstrim --help

Usage:
 fstrim [options] <mount point>

Discard unused blocks on a mounted filesystem.

Options:
 -a, --all           trim all mounted filesystems that are supported
 -o, --offset <num>  the offset in bytes to start discarding from
 -l, --length <num>  the number of bytes to discard
 -m, --minimum <num> the minimum extent length to discard
 -v, --verbose       print number of discarded bytes

 -h, --help     display this help and exit
 -V, --version  output version information and exit

For more details see fstrim(8).

По умолчанию Ubuntu 16.04 монтирует все файловые системы с relatime. Это работает намного лучше, чем noatime при добавлении только очень небольшого количества операций записи.

Не смешивайте с планировщиком ввода-вывода.

Для душевного спокойствия можно использовать smartctl (установите его с sudo apt-get install smartmontools в случае необходимости) время от времени для начинания работу Life_Curve_Status, SSD_Life_Left, и Lifetime_Writes_GiB:

$ sudo smartctl --all /dev/sda
...
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME      FLAG    VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
...
194 Temperature_Celsius 0x0022  047   063   000    Old_age   Always       -       47 (Min/Max 21/63)
...
230 Life_Curve_Status   0x0013  100   100   000    Pre-fail  Always       -       100
231 SSD_Life_Left       0x0013  100   100   010    Pre-fail  Always       -       0
...
241 Lifetime_Writes_GiB 0x0032  000   000   000    Old_age   Always       -       388
...

(Life_Curve_Status и SSD_Life_Left имейте значения в процентных пунктах: Вы захотите заменить SSD, когда они уменьшатся ниже 20% или 10%. Если Вы можете, сделать Ваши терминальные 132 столбца перед выполнением smartctl.)

Наконец, помните, что 850 EVO является высококачественный дорогой SSD от уважаемого производителя. Это эластично и продлится долгое время, вероятно, дольше, чем какой-либо вращающий диск. Единственная вещь, которую можно сделать, который Samsung признает, что помогла бы, состоит в том, чтобы сверхнастроить ее немного, то есть, при разделении отпуска приблизительно 5% неразделенного пространства. (Это позволит внутреннему переотображению / алгоритмы сборки "мусора" работают более эффективно; это Вы решаете сделать это затем, делает это только, когда SSD является новым или после обрезки полного диска или стирания безопасности так, чтобы сверхнастроенное пространство состояло полностью из блоков, которые, как известно, не использовались.)

7
ответ дан 14 April 2017 в 01:24
  • 1
    То, что Вы делали, отправляло вывод command1 в Telenet. Для отправки ' command1' буквально Вам было бы нужно echo command1 | telnet ..... Используя имя файла кошки, обычно легче, но если requirment очень прост, тогда отзываются эхом, то же. – Roger Irwin 22 October 2018 в 23:26

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

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