Я использую LUKS + LVM полное шифрование диска (/boot включен).

Однако после каждой перезагрузки система обрезает все по свободному пространству, не помня, какие блоки были обрезаны.

Я боюсь, что это изнашивает мой SSD.

Aug 07 15:49:18 /: 338.4 GiB (363312041984 bytes) trimmed
[REBOOT]
Aug 07 15:49:45 /: 225.5 MiB (236392448 bytes) trimmed
[NO REBOOT]
Aug 07 16:00:01 /: 1.4 GiB (1476653056 bytes) trimmed
[REBOOT]
Aug 09 08:08:43 /: 338.3 GiB (363260616704 bytes) trimmed
[NO REBOOT]
Aug 09 10:00:02 /: 1.6 GiB (1708560384 bytes) trimmed
[NO REBOOT]
Aug 09 16:00:02 /: 1.2 GiB (1317408768 bytes) trimmed
[NO REBOOT]
Aug 10 09:10:24 /: 4.9 GiB (5261406208 bytes) trimmed
[REBOOT]
Aug 10 15:02:24 /: 338.3 GiB (363209334784 bytes) trimmed

Это правильное поведение? Я ожидаю, что после перезагрузки он продолжит просто обрезать несколько ГиБ, а не все свободное пространство.

1 ответ1

1

Насколько я понимаю, твердотельные накопители, fstrim и соответствующие вещи, это выглядит так:

TL; DR На обычных твердотельных накопителях повторный запуск fstrim в тех же областях обычно не должен повредить.

fstim всю файловую систему, проверяет, какие блоки не используются fs, и сообщает накопителю.

Таким образом, SSD получает команду TRIM: «Блок 123 не используется ОС, вы можете делать с ним все, что захотите». Большинство твердотельных накопителей помечают блок как неиспользуемый и фактически обнуляют содержимое. Поэтому при следующей команде TRIM для того же блока SSD обычно делает следующее: «Эй, он уже помечен как неиспользованный. Я ничего не делаю и говорю пользователю, что все прошло успешно ".

Вы можете использовать smartctl --xall /dev/sdX до и после fstrim для проверки значений выравнивания износа (большинство SSD имеют некоторые атрибуты для выравнивания износа). Они не должны сильно меняться. Очень мало для тех немногих блоков, которые изменили ваши демоны.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .