Я бы хотел настроить двухдисковое устройство RAID1 mdadm с функцией dm-целостность для резервирования.
Я знаю, как разделить и добавить диски на устройство RAID1 с помощью mdadm, но я не знаю, как убедиться, что dm-целостность настроена правильно, и поскольку это необходимо, я был бы рад если кто-то с большим опытом мог бы объяснить безопасный способ сделать это.
Нужно ли добавлять сценарий запуска, чтобы открывать устройства при каждой загрузке? Требуется ли действие для ручной проверки ошибок или существует автоматическая отчетность?
После создания использования устройства:
integritysetup status <name>
В терминале можно использовать man dm-integrity
считать Ваши опции. Eeryone еще может считать то же в Интернете:
integritysetup - manage dm-integrity (block level integrity) volumes
integritysetup <options> <action> <action args>
Integritysetup is used to configure dm-integrity managed device-
mapper mappings.
Device-mapper integrity target provides read-write transparent
integrity checking of block devices. The dm-integrity target emulates
additional data integrity field per-sector. You can use this
additional field directly with integritysetup utility, or indirectly
(for authenticated encryption) through cryptsetup.
Integritysetup supports these operations:
format <device>
Formats <device> (calculates space and dm-integrity superblock
and wipes the device).
<options> can be [--data-device, --batch-mode, --no-wipe,
--journal-size, --interleave-sectors, --tag-size, --integrity,
--integrity-key-size, --integrity-key-file, --sector-size,
--progress-frequency]
open <device> <name>
create <name> <device> (OBSOLETE syntax)
Open a mapping with <name> backed by device <device>.
<options> can be [--data-device, --batch-mode,
--journal-watermark, --journal-commit-time, --buffer-sectors,
--integrity, --integrity-key-size, --integrity-key-file,
--integrity-no-journal, --integrity-recalculate,
--integrity-recovery-mode]
close <name>
Removes existing mapping <name>.
For backward compatibility, there is remove command alias for
the close command.
status <name>
Reports status for the active integrity mapping <name>.
dump <device>
Reports parameters from on-disk stored superblock.
Я использовал это в качестве примера
https://gist.github.com/MawKKe/caa2bbf7edcc072129d73b61ae7815fb
Отформатируйте диск с luksFormat:
dd if=/dev/urandom of=key.bin bs=512 count=1
cryptsetup luksFormat -q --type luks2 --integrity hmac-sha256 disk1.img key.bin
cryptsetup luksFormat -q --type luks2 --integrity hmac-sha256 disk2.img key.bin
Откройтесь/присоедините зашифрованные диски
cryptsetup luksOpen disk1.img disk1luks --key-file key.bin
cryptsetup luksOpen disk2.img disk2luks --key-file key.bin
Создайте raid1:
mdadm \
--create \
--verbose --level 1 \
--metadata=1.2 \
--raid-devices=2 \
/dev/md/mdtest \
/dev/mapper/disk1luks \
/dev/mapper/disk2luks
Создайте файловую систему, добавьте к группе объема LVM и т.д...
mkfs.ext4 /dev/md/mdtest