LINUX.ORG.RU

discard при LVM on LUKS

 , , ,


0

1

Добрый день. У меня LVM on LUKS на SSD. На Archwiki про настройку discard сказано:

For non-root filesystems, configure /etc/crypttab to include discard in the list of options for encrypted block devices located on a SSD (see Dm-crypt/System configuration#crypttab).

For the root filesystem, follow the instructions from Dm-crypt/TRIM support for SSD to add the right kernel parameter to the bootloader configuration.

У меня в crypttab только расшифровка физического тома LVM. Каким из этих путей мне следовать? Заранее спасибо.

★★

ИМХО, выполнить лучше и то, и другое

trim нужно будет включить во всех местах, где только можно. И в crypttab, и в fstab, и в lvm.conf, и параметрах, передаваемых ядру

router ★★★★★
()
Ответ на: комментарий от router

Меня что смущает - у меня в конфиге grub пункт меню выглядит так:

linux ... root=/dev/mapper/notebook-root ro ...
Т.е. к этому этапу LVM расшифрован самим GRUB'ом. ArchWiki предполагает что-то иное: https://wiki.archlinux.org/index.php/Dm-crypt/Specialties#Discard.2FTRIM_supp...

Norong ★★
() автор топика
Последнее исправление: Norong (всего исправлений: 2)

У меня:

/etc/crypttab

sda2_crypt UUID=f5e9f39d-b214-4b08-9c4e-5357b24c3bf8 none luks,discard

/etc/lvm/lvm.conf

issue_discards = 1

В /etc/grub/defaults параметры ядра:

cryptdevice=/dev/sda2:sys:discard

update-grub или update-grub2 не забудь сделать

/etc/fstab

/dev/mapper/sys-root /               xfs     defaults,discard        0       1
# /boot was on /dev/sda1 during installation
UUID=f5a95ddd-4772-4b35-9f08-072a898b2334 /boot           ext4    defaults        0       2
/dev/mapper/sys-home /home           xfs     defaults,discard        0       2
/dev/mapper/sys-swap none            swap    sw,discard              0       0 

Всё работает. SSD жив)

chaos_dremel ★★
()
Последнее исправление: chaos_dremel (всего исправлений: 1)
Ответ на: комментарий от Norong

Т.е. к этому этапу LVM расшифрован самим GRUB'ом

Нет :D

grub обычно даже не трогает lvm, не говоря уже про dm-crypt

Ты в grub пароль для диска вводишь? Вот именно

grub находит и загружает в память ядро linux и ramdisk ( initrd, initramfs ), после чего передаёт управление ядру linux. То, что ты процитировал, grub как есть ( в виде строки ) передаёт ядру linux ( kernel cmdline )

router ★★★★★
()
Последнее исправление: router (всего исправлений: 1)
Ответ на: комментарий от router

Ты в grub пароль для диска вводишь? Вот именно

Что «именно»? Я, например, в GRUB ввожу пароль для dm-crypt. Повторная расшифровка в initramfs выполняется уже с помощью вшитого туда ключа.

anonymous
()
Ответ на: комментарий от router

В GRUB2 я ввожу пароль для диска. Меня смущает вот что:

To add support during boot, you will need to add :allow-discards to the cryptdevice option. The TRIM option may look like this:
cryptdevice=/dev/sdaX:root:allow-discards

Т.е. добавление к уже существующему cryptdevice=...

А у меня (Debian) его нет, и, видимо, не нужно (иначе было бы по умолчанию).

Norong ★★
() автор топика
Ответ на: комментарий от Norong

/etc/default/grub

GRUB_CMDLINE_LINUX_DEFAULT=«quiet cryptdevice=/dev/sda2:sys:discard scsi_mod.use_blk_mq=Y zswap.enabled=1 zswap.compressor=lz4 zswap.max_pool_percent=25»

/boot/grub/grub.cfg

linux /vmlinuz-4.9.0-1-amd64 root=/dev/mapper/sys-root ro initrd=/install/initrd.gz quiet cryptdevice=/dev/sda2:sys:discard scsi_mod.use_blk_mq=Y zswap.enabled=1 zswap.compressor=lz4 zswap.max_pool_percent=25

P.S. И да, у меня Дебиан и я прописывал cryptdevice=/dev/sda2:sys:discard вручную

chaos_dremel ★★
()
Последнее исправление: chaos_dremel (всего исправлений: 1)
Ответ на: комментарий от anonymous

fstrim это всего лишь программа работающая на уровне файловой системы. Для того, чтобы она сработала надо прописать discard для luks и lvm.

chaos_dremel ★★
()
Ответ на: комментарий от anonymous

У меня во fstab нет discard, fstrim по таймеру. Но разве не должна быть поддержка discard на каждом из уровней, чтобы TRIM работал, вне зависимости от того, монтирую ли я с discard или fstrim'лю?

Norong ★★
() автор топика
Ответ на: комментарий от chaos_dremel

Понял, спасибо! Так и сделаю.

Norong ★★
() автор топика
Ответ на: комментарий от Norong

Поддержка нужна, но опция discard может понадобиться только в lvm.conf и crypttab, но НЕ в fstab (в этом случае discard выполняется всегда по команде драйвера ФС).

anonymous
()
Ответ на: комментарий от anonymous

Перечитайте ещё раз моё сообщение, я писал как раз про LVM и luks. Действия fstrim и опции монтирования discard в fstab равносильны с точки зрения используемых механизмов.

chaos_dremel ★★
()
Ответ на: комментарий от chaos_dremel

fstrim делается в удобное время, а discard в fstab обеспечивает тормозами стабильно.

anonymous
()
Ответ на: комментарий от Norong

Попробуй без него тогда. Может в новых ядрах оно автоматически определяет.

chaos_dremel ★★
()
Ответ на: комментарий от chaos_dremel

Если мне не изменяет память...

Для LVM необязательно. discard для LVM не влияет на ФС вообще. Оно влияет только на вызов trim во время операций с томами, например, lvresize.

anonymous00 ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.