Я использую LVM thinvolumes для сетевой загрузки нескольких компьютеров через iSCSI. Время от времени я освобождаю место на этих машинах. К сожалению, это пространство не освобождается на тонких томах. Поэтому я время от времени partclone разделы, чтобы освободить место. В виртуализации вы можете использовать инструменты, которые обнуляют неиспользуемое пространство, что освобождает его. Существует ли подобный или лучший способ восстановления пространства с помощью тонких пулов / тонких томов LVM?

заранее спасибо

1 ответ1

1

LVM thin поддерживает DISCARD, более широко известный как TRIM. Теоретически должно быть возможно как-то заставить это работать с iSCSI (есть эквивалентная команда UNMAP), но я ничего не нашел по этому поводу.

На компьютере, на котором размещены эти тома, вы можете использовать fstrim для освобождения свободного места. Страница man даже упоминает об этом явно:

fstrim используется в смонтированной файловой системе для отбрасывания (или "обрезки") блоков, которые не используются файловой системой. Это полезно для твердотельных накопителей (SSD) и хранилищ с тонким предоставлением.

Чтобы это работало, Linux нуждается в поддержке файловой системы, и эта поддержка должна включать TRIM. Если на ваших компьютерах, загруженных по сети, установлена операционная система Windows, это, вероятно, NTFS. По-видимому, NTFS-3G поддерживает TRIM.

fstrim работает только на смонтированных файловых системах.

Это будет выглядеть так:

ОТКРЫТЬ демо

Обновление: как обсуждалось в комментариях, Linux SCSI Target предлагает флаг в своих хранилищах блоков, который идентифицирует SSD: is_nonrot . Он также поддерживает команду UNMAP SCSI. Windows (по крайней мере, Windows 10) правильно определяет SSD через iSCSI и выдает команды UNMAP, немедленно освобождая неиспользуемое пространство.

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