เชฌเชงเชพเชจเซ เชถเซเชญ เชฆเชฟเชตเชธ เช เชจเซ เชฐเชพเชค! เช เชชเซเชธเซเช เชคเซ เชฒเซเชเซ เชฎเชพเชเซ เชเชชเชฏเซเชเซ เชฅเชถเซ เชเซเช LUKS เชกเซเชเชพ เชเชจเซเชเซเชฐเชฟเชชเซเชถเชจเชจเซ เชเชชเชฏเซเช เชเชฐเซ เชเซ เช เชจเซ Linux (Debian, Ubuntu) เชนเซเช เชณ เชกเชฟเชธเซเชเชจเซ เชกเชฟเชเซเชฐเชฟเชชเซเช เชเชฐเชตเชพ เชฎเชพเชเซ เชเซ. เชฐเซเช เชชเชพเชฐเซเชเซเชถเชจเชจเซ เชกเชฟเชเซเชฐเชฟเชชเซเช เชเชฐเชตเชพเชจเชพ เชคเชฌเชเซเชเชพ. เช เชจเซ เชฎเชจเซ เชเชจเซเชเชฐเชจเซเช เชชเชฐ เชเชตเซ เชฎเชพเชนเชฟเชคเซ เชฎเชณเซ เชถเชเซ เชจเชฅเซ.
เชคเชพเชเซเชคเชฐเชฎเชพเช, เชเชพเชเชฒเซเชเชฎเชพเช เชกเชฟเชธเซเชเชจเซ เชธเชเชเซเชฏเชพเชฎเชพเช เชตเชงเชพเชฐเชพ เชธเชพเชฅเซ, เชนเซเช /etc/crypttab เชฆเซเชตเชพเชฐเชพ เชเชพเชฃเซเชคเซ เชชเชฆเซเชงเชคเชฟเชจเซ เชเชชเชฏเซเช เชเชฐเซเชจเซ เชกเชฟเชธเซเชเชจเซ เชกเชฟเชเซเชฐเชฟเชชเซเช เชเชฐเชตเชพเชจเซ เชธเชฎเชธเซเชฏเชพเชจเซ เชธเชพเชฎเชจเซ เชเชฐเซ เชฐเชนเซเชฏเซ เชเซเช. เช เชเชเชค เชฐเซเชคเซ, เชนเซเช เช เชชเชฆเซเชงเชคเชฟเชจเซ เชเชชเชฏเซเช เชเชฐเชตเชพเชฎเชพเช เชเซเชเชฒเซเช เชธเชฎเชธเซเชฏเชพเช เชชเซเชฐเชเชพเชถเชฟเชค เชเชฐเซเช เชเซเช, เชเชเชฒเซ เชเซ เชซเชพเชเชฒ เชตเชพเชเชเชตเชพเชฎเชพเช เชเชตเซ เชฐเชนเซ เชเซ เชฐเซเช เชชเชพเชฐเซเชเซเชถเชจ เชฒเซเชก (เชฎเชพเชเชจเซเช) เชเชฐเซเชฏเชพ เชชเชเซ เช, เชเซ ZFS เชเชฏเชพเชคเซเชจเซ เชจเชเชพเชฐเชพเชคเซเชฎเช เชฐเซเชคเซ เช เชธเชฐ เชเชฐเซ เชเซ, เชเชพเชธ เชเชฐเซเชจเซ เชเซ เชคเซเช *_crypt เชเชชเชเชฐเชฃ เชชเชฐ เชชเชพเชฐเซเชเซเชถเชจเซเชฎเชพเชเชฅเซ เชฌเชจเชพเชตเชตเชพเชฎเชพเช เชเชตเซเชฏเชพ เชนเซเชฏ, เช เชฅเชตเชพ mdadm เชฐเซเชเชกเซเชธ เชชเชฃ เชชเชพเชฐเซเชเซเชถเชจเซเชฎเชพเชเชฅเซ เชฌเชจเซเชฒ เชนเซเชฏ. เช เชฎเซ เชฌเชงเชพ เชเชพเชฃเซเช เชเซเช เชเซ เชคเชฎเซ LUKS เชเชจเซเชเซเชจเชฐ เชชเชฐ เชชเชพเชฐเซเชเซเชกเชจเซ เชเชชเชฏเซเช เชเชฐเซ เชถเชเซ เชเซ, เชฌเชฐเชพเชฌเชฐ? เช เชจเซ เช เชจเซเชฏ เชธเซเชตเชพเชเชจเซ เชชเซเชฐเชพเชฐเชเชญเชฟเช เชถเชฐเซเชเชคเชจเซ เชธเชฎเชธเซเชฏเชพ เชชเชฃ, เชเซเชฏเชพเชฐเซ เชนเชเซ เชธเซเชงเซ เชเซเช เชเชฐเซ เชจเชฅเซ, เชชเชฐเชเชคเซ เชเชชเชฏเซเช เชเชฐเซ เชฎเชจเซ เชชเชนเซเชฒเซเชฅเซ เช เชเชเชเช เชเซเชเช เชเซ (เชนเซเช iSCSI เชชเชฐ เชเซเชฒเชธเซเชเชฐเซเชก Proxmox VE 5.x เช เชจเซ ZFS เชธเชพเชฅเซ เชเชพเชฎ เชเชฐเซเช เชเซเช).
ZFSoverISCSI เชตเชฟเชถเซ เชฅเซเชกเซเชiSCSI เชฎเชพเชฐเชพ เชฎเชพเชเซ LIO เชฎเชพเชฐเชซเชคเซ เชเชพเชฎ เชเชฐเซ เชเซ, เช เชจเซ เชตเชพเชธเซเชคเชตเชฎเชพเช, เชเซเชฏเชพเชฐเซ iscsi เชฒเชเซเชทเซเชฏ เชถเชฐเซ เชฅเชพเชฏ เชเซ เช เชจเซ ZVOL เชเชชเชเชฐเชฃเซเชจเซ เชเซเชคเซเช เชจเชฅเซ, เชคเซเชฏเชพเชฐเซ เชคเซ เชซเชเซเชค เชคเซเชฎเชจเซ เชฐเซเชชเชฐเซเชเชพเชเชเชจเชฎเชพเชเชฅเซ เชฆเซเชฐ เชเชฐเซ เชเซ, เชเซ เชฎเชนเซเชฎเชพเชจ เชธเชฟเชธเซเชเชฎเซเชจเซ เชฌเซเช เชฅเชตเชพเชฅเซ เช เชเชเชพเชตเซ เชเซ. เชเชฅเซ, เชเชพเช เชคเซ json เชซเชพเชเชฒ เชฌเซเชเช เชช เชชเซเชจเชเชธเซเชฅเชพเชชเชฟเชค เชเชฐเชตเซเช, เช เชฅเชตเชพ เชฆเชฐเซเช VM เชฎเชพเชเซ เชเชณเชเชเชฐเซเชคเชพเช เชธเชพเชฅเซ เชฎเซเชจเซเชฏเซเช เชฒเซ เชเชชเชเชฐเชฃเซ เชเชฎเซเชฐเชตเชพ, เชเซ เชเชตเชพ เชกเชเชจเซเช เชฎเชถเซเชจเซ เชนเซเชฏ เช เชจเซ เชฆเชฐเซเช เชฐเซเชชเชฐเซเชเชพเชเชเชจเชฎเชพเช 1 เชฅเซ เชตเชงเซ เชกเชฟเชธเซเช เชนเซเชฏ เชคเซเชฏเชพเชฐเซ เชคเซ เชญเชฏเชเชเชฐ เชนเซเชฏ เชเซ.
เช
เชจเซ เชฌเซเชเซ เชชเซเชฐเชถเซเชจ เชเซ เชเซ เชนเซเช เชงเซเชฏเชพเชจเชฎเชพเช เชฒเชเชถ เชคเซ เชเซ เชเซเชตเซ เชฐเซเชคเซ เชกเชฟเชเซเชฐเชฟเชชเซเช เชเชฐเชตเซเช (เช เชฒเซเชเชจเซ เชฎเซเชเซเชฏ เชฎเซเชฆเซเชฆเซ เชเซ). เช
เชจเซ เช
เชฎเซ เชจเซเชเซ เช เชตเชฟเชถเซ เชตเชพเชค เชเชฐเซเชถเซเช, เชเช เชนเซเช เชณ เชเชพเช!
เชฎเซเชเซเชญเชพเชเซ, เชเชจเซเชเชฐเชจเซเช เชชเชฐ, เชเซ เชซเชพเชเชฒเชจเซ เชเชชเชฏเซเช เชเชฐเชตเชพเชฎเชพเช เชเชตเซ เชเซ (เช เชชเชนเซเชฒเชพเช เชธเซเชฒเซเชเชฎเชพเช เชธเซเชต-เชเชฎเซเชฐเชตเชพเชฎเชพเช เชเชตเซ เชเซ - เชเซเชฐเชฟเชชเซเชเชธเซเชเช
เชช luksAddKey), เช
เชฅเชตเชพ เชฆเซเชฐเซเชฒเชญ เช
เชชเชตเชพเชฆเซเชฎเชพเช (เชฐเชถเชฟเชฏเชจ-เชญเชพเชทเชพเชจเชพ เชเชจเซเชเชฐเชจเซเช เชชเชฐ เชเซเชฌ เชเชเซ เชฎเชพเชนเชฟเชคเซ เชเซ) - decrypt_derived เชธเซเชเซเชฐเชฟเชชเซเช /lib/cryptsetup/script/ เชฎเชพเช เชธเซเชฅเชฟเชค เชเซ (เช
เชฒเชฌเชคเซเชค, เชคเซเชฏเชพเช เช
เชจเซเชฏ เชฐเซเชคเซ เชเซ, เชชเชฐเชเชคเซ เชฎเซเช เช เชฌเซเชจเซ เชเชชเชฏเซเช เชเชฐเซเชฏเซ, เชเซเชฃเซ เชฒเซเชเชจเซ เชเชงเชพเชฐ เชฌเชจเชพเชตเซเชฏเซ). เชฎเซเช เชเชจเซเชธเซเชฒเชฎเชพเช เชเซเชเชชเชฃ เชตเชงเชพเชฐเชพเชจเชพ เชเชฆเซเชถเซ เชตเชฟเชจเชพ, เชฐเซเชฌเซเช เชเชฐเซเชฏเชพ เชชเชเซ เชธเชเชชเซเชฐเซเชฃ เชธเซเชตเชพเชฏเชคเซเชค เชธเชฎเชพเชตเซเชถ เชฎเชพเชเซ เชชเชฃ เชชเซเชฐเชฏเชคเซเชจ เชเชฐเซเชฏเซ, เชเซเชฅเซ เชฎเชพเชฐเชพ เชฎเชพเชเซ เชเช เช เชธเชฎเชฏเซ เชฌเชงเซเช "เชเชกเซ เชเชพเชฏ". เชคเซเชฅเซ, เชถเชพ เชฎเชพเชเซ เชฐเชพเชน เชเซเช? -
เชเชพเชฒเซ, เชถเชฐเซ เชเชฐเซเช!
เชเชพเชฒเซ เชงเชพเชฐเซเช เชเซ เชกเซเชฌเชฟเชฏเชจ เชเซเชตเซ เชธเชฟเชธเซเชเชฎ, sda3_crypt เชเซเชฐเชฟเชชเซเชเซ เชชเชพเชฐเซเชเซเชถเชจ เชชเชฐ เชเชจเซเชธเซเชเซเชฒ เชเชฐเซเชฒ เชเซ เช เชจเซ เชเช เชกเชเชจ เชกเชฟเชธเซเช เชเชจเชเซเชฐเชฟเชชเซเช เชเชฐเชตเชพ เชฎเชพเชเซ เชคเซเชฏเชพเชฐ เชเซ เช เชจเซ เชคเชฎเชพเชฐเชพ เชนเซเชฆเชฏเชจเซ เชธเชพเชฎเชเซเชฐเซ เชฎเชพเชเซ เชฌเชจเชพเชตเชตเชพเชฎเชพเช เชเชตเซ เชเซ. sda3_crypt เชจเซ เช เชจเชฒเซเช เชเชฐเชตเชพ เชฎเชพเชเซ เช เชฎเชพเชฐเซ เชชเชพเชธเซ เชชเชพเชธเชซเซเชฐเซเช (เชชเชพเชธเชซเซเชฐเซเช) เชเซ, เช เชจเซ เช เชชเชพเชฐเซเชเซเชถเชจเชฎเชพเชเชฅเซ เช เชเชชเชฃเซ เชเชพเชฒเซ เชฐเชนเซเชฒเซ (เชกเชฟเชเซเชฐเชฟเชชเซเชเซเชก) เชธเชฟเชธเซเชเชฎ เชชเชฐเชจเชพ เชชเชพเชธเชตเชฐเซเชกเชฎเชพเชเชฅเซ "เชนเซเชถ" เชฆเซเชฐ เชเชฐเซเชถเซเช เช เชจเซ เชคเซเชจเซ เชฌเชพเชเซเชจเซ เชกเชฟเชธเซเชเชฎเชพเช เชเชฎเซเชฐเซเชถเซเช. เชฌเชงเซเช เชชเซเชฐเชพเชฅเชฎเชฟเช เชเซ, เชเชจเซเชธเซเชฒเชฎเชพเช เชเชชเชฃเซ เชเชฒเชพเชตเซเช เชเซเช:
/lib/cryptsetup/scripts/decrypt_derived sda3_crypt | cryptsetup luksFormat /dev/sdX
เชเซเชฏเชพเช X เช เชเชชเชฃเซ เชกเชฟเชธเซเช, เชชเชพเชฐเซเชเซเชถเชจเซ เชตเชเซเชฐเซ เชเซ.
เช เชฎเชพเชฐเชพ เชชเชพเชธเชซเซเชฐเซเชเชฎเชพเชเชฅเซ "เชนเซเชถ" เชธเชพเชฅเซ เชกเชฟเชธเซเชเชจเซ เชเชจเซเชเซเชฐเชฟเชชเซเช เชเชฐเซเชฏเชพ เชชเชเซ, เชคเชฎเชพเชฐเซ UUID เช เชฅเชตเชพ ID เชถเซเชงเชตเชพเชจเซ เชเชฐเซเชฐ เชเซ - เชเซเชฃ เชถเซเช เช เชจเซ เชถเซเช เชฎเชพเชเซ เชตเชชเชฐเชพเชฏ เชเซ เชคเซเชจเชพ เชเชงเชพเชฐเซ. เช เชฎเซ เช เชจเซเชเซเชฐเชฎเซ /dev/disk/by-uuid เช เชจเซ by-id เชชเชฐเชฅเซ เชกเซเชเชพ เชฒเชเช เชเซเช.
เชเชเชณเชจเซเช เชชเชเชฒเซเช เชเชชเชฃเชจเซ เชเชฐเซเชฐเซ เชเชพเชฐเซเชฏเซ เชฎเชพเชเซ เชซเชพเชเชฒเซ เช เชจเซ เชฎเซเชจเซ-เชธเซเชเซเชฐเซเชชเซเชเซเชธ เชคเซเชฏเชพเชฐ เชเชฐเชตเชพเชจเซเช เชเซ, เชเชพเชฒเซ เชเชเชณ เชตเชงเซเช:
cp -p /usr/share/initramfs-tools/hooks/cryptroot /etc/initramfs-tools/hooks/
cp -p /usr/share/initramfs-tools/scripts/local-top/cryptroot /etc/initramfs-tools/scripts/local-top/
เชตเชงเซ
touch /etc/initramfs-tools/hooks/decrypt && chmod +x /etc/initramfs-tools/hooks/decrypt
../เชกเชฟเชเซเชฐเชฟเชชเซเชเชจเซ เชธเชพเชฎเชเซเชฐเซ
#!/bin/sh
cp -p /lib/cryptsetup/scripts/decrypt_derived "$DESTDIR/bin/decrypt_derived"
เชตเชงเซ
touch /etc/initramfs-tools/hooks/partcopy && chmod +x /etc/initramfs-tools/hooks/partcopy
../partcopy เชจเซ เชธเชพเชฎเชเซเชฐเซ
#!/bin/sh
cp -p /sbin/partprobe "$DESTDIR/bin/partprobe"
cp -p /lib/x86_64-linux-gnu/libparted.so.2 "$DESTDIR/lib/x86_64-linux-gnu/libparted.so.2"
cp -p /lib/x86_64-linux-gnu/libreadline.so.7 "$DESTDIR/lib/x86_64-linux-gnu/libreadline.so.7"
เชฅเซเชกเซ เชตเชงเซ
touch /etc/initramfs-tools/scripts/local-bottom/partprobe && chmod +x /etc/initramfs-tools/scripts/local-bottom/partprobe
เชธเชพเชฎเชเซเชฐเซ ../เชชเชพเชฐเซเชเชชเซเชฐเซเชฌ
#!/bin/sh
$DESTDIR/bin/partprobe
เช เชจเซ เชเซเชฒเซเชฒเซ, เช เชชเชกเซเช-initramfs เชชเชนเซเชฒเชพเช, เชคเชฎเชพเชฐเซ /etc/initramfs-tools/scripts/local-top/cryptroot เชซเชพเชเชฒเชจเซ เชธเชเชชเชพเชฆเชฟเชค เชเชฐเชตเชพเชจเซ เชเชฐเซเชฐ เชเซ, ~360, เชจเซเชเซ เชเซเชก เชธเซเชจเชฟเชชเซเชเชฅเซ เชถเชฐเซ เชเชฐเซเชจเซ
เชฎเซเชณ
# decrease $count by 1, apparently last try was successful.
count=$(( $count - 1 ))
message "cryptsetup ($crypttarget): set up successfully"
break
เช เชจเซ เชคเซเชจเซ เช เชซเซเชฐเซเชฎ เชชเชฐ เชฒเชพเชตเซ
เชธเชเชชเชพเชฆเชฟเชค
# decrease $count by 1, apparently last try was successful.
count=$(( $count - 1 ))
/bin/decrypt_derived $crypttarget | cryptsetup luksOpen /dev/disk/by-uuid/ *CRYPT_MAP*
/bin/decrypt_derived $crypttarget | cryptsetup luksOpen /dev/disk/by-id/ *CRYPT_MAP*
message "cryptsetup ($crypttarget): set up successfully"
break
เชจเซเชเชง เชเชฐเซ เชเซ เช เชนเซเช UUID เช เชฅเชตเชพ ID เชจเซ เชเชชเชฏเซเช เชเชฐเซ เชถเชเชพเชฏ เชเซ. เชฎเซเชเซเชฏ เชตเชธเซเชคเซ เช เชเซ เชเซ HDD / SSD เชเชชเชเชฐเชฃเซ เชฎเชพเชเซ เชเชฐเซเชฐเซ เชกเซเชฐเชพเชเชตเชฐเซ /etc/initramfs-tools/modules เชฎเชพเช เชเชฎเซเชฐเชตเชพเชฎเชพเช เชเชตเซ เชเซ. เชเชฎเชพเชจเซเชก เชตเชกเซ เชคเชฎเซ เชถเซเชงเซ เชถเชเซ เชเซ เชเซ เชเชฏเชพ เชกเซเชฐเชพเชเชตเชฐเชจเซ เชเชชเชฏเซเช เชเชฐเชตเชพเชฎเชพเช เชเชตเซ เชฐเชนเซเชฏเซ เชเซ udevadm เชฎเชพเชนเชฟเชคเซ -a -n /dev/sdX | egrep 'เชฒเซเชเชฟเชเช|เชกเซเชฐเชพเชเชตเชฐ'.
เชนเชตเซ เช เชฎเซ เชชเซเชฐเซเชฃ เชเชฐเซ เชฒเซเชงเซเช เชเซ เช เชจเซ เชฌเชงเซ เชซเชพเชเชฒเซ เชธเซเชฅเชพเชจเซ เชเซ, เชเชฒเชพเชตเซ เช เชชเชกเซเช-initramfs -u -k all -v, เชฒเซเชเซเชเชเชฎเชพเช เชจ เชนเซเชตเซ เชเซเชเช เช เชฎเชพเชฐเซ เชธเซเชเซเชฐเชฟเชชเซเชเซเชจเซ เชเชเซเชเซเชเซเชฏเซเชถเชจ เชญเซเชฒเซ. เช เชฎเซ เชฐเซเชฌเซเช เชเชฐเซเช เชเซเช, เชชเชพเชธเชซเซเชฐเซเช เชฆเชพเชเชฒ เชเชฐเซเช เชเซเช เช เชจเซ เชกเชฟเชธเซเชเชจเซ เชธเชเชเซเชฏเชพเชจเชพ เชเชงเชพเชฐเซ เชฅเซเชกเซ เชฐเชพเชน เชเซเช. เชเชเชณ, เชธเชฟเชธเซเชเชฎ เชถเชฐเซ เชฅเชถเซ เช เชจเซ เชฒเซเชเชเชจเชพ เช เชเชคเชฟเชฎ เชคเชฌเชเซเชเซ, เชเชเชฒเซ เชเซ เชฐเซเช เชชเชพเชฐเซเชเซเชถเชจเชจเซ โเชฎเชพเชเชจเซเชโ เชเชฐเซเชฏเชพ เชชเชเซ, เชชเชพเชฐเซเชเชชเซเชฐเซเชฌ เชเชฆเซเชถ เชเชฒเชพเชตเชตเชพเชฎเชพเช เชเชตเชถเซ - เชคเซ LUKS เชเชชเชเชฐเชฃเซ เช เชจเซ เชเซเชเชชเชฃ เชเชฐเซ เชชเชฐ เชฌเชจเชพเชตเซเชฒ เชคเชฎเชพเชฎ เชชเชพเชฐเซเชเซเชถเชจเซ เชถเซเชงเซ เช เชจเซ เชชเชธเชเชฆ เชเชฐเชถเซ, เชชเชเซ เชคเซ ZFS เชนเซเชฏ เช เชฅเชตเชพ mdadm, เชธเชฎเชธเซเชฏเชพ เชตเชฟเชจเชพ เชเชธเซเชฎเซเชฌเชฒ เชเชฐเชตเชพเชฎเชพเช เชเชตเชถเซ! เช เชจเซ เช เชฌเชงเซเช เชฒเซเชก เชเชฐเชคเชพ เชชเชนเซเชฒเชพ เชฎเซเชเซเชฏ เชธเซเชตเชพเช เช เชจเซ เชธเซเชตเชพเช เชเซ เชเซเชจเซ เช เชกเชฟเชธเซเช/เชเชฐเซเชจเซ เชเชฐเซเชฐ เชเซ.
เช
เชชเชกเซเช 1: เชเซเชตเซ เชฐเซเชคเซ
เชธเซเชฐเซเชธ: www.habr.com