ΠΠΎΠ±Π°Ρ Π΄Π΅Π½ ΠΈ Π½ΠΎΡ Π½Π° ΡΠΈΡΠ΅! ΠΠ²ΠΎΡ ΠΏΠΎΡΡ ΡΠ΅ Π±ΠΈΠ΄Π΅ ΠΊΠΎΡΠΈΡΠ΅Π½ Π·Π° ΠΎΠ½ΠΈΠ΅ ΠΊΠΎΠΈ ΠΊΠΎΡΠΈΡΡΠ°Ρ ΡΠΈΡΡΠΈΡΠ°ΡΠ΅ Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ LUKS ΠΈ ΡΠ°ΠΊΠ°Π°Ρ Π΄Π° Π΄Π΅ΡΠΈΡΡΠΈΡΠ°Π°Ρ Π΄ΠΈΡΠΊΠΎΠ²ΠΈ ΠΏΠΎΠ΄ Linux (Debian, Ubuntu) Π½Π° ΡΠ°Π·Π° Π½Π° Π΄Π΅ΡΠΈΡΡΠΈΡΠ°ΡΠ΅ Π½Π° root ΠΏΠ°ΡΡΠΈΡΠΈΡΠ°ΡΠ°. Π Π½Π΅ ΠΌΠΎΠΆΠ΅Π² Π΄Π° Π½Π°ΡΠ΄Π°ΠΌ ΡΠ°ΠΊΠ²ΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π½Π° ΠΠ½ΡΠ΅ΡΠ½Π΅Ρ.
ΠΠ΅ΠΎΠ΄Π°ΠΌΠ½Π°, ΡΠΎ Π·Π³ΠΎΠ»Π΅ΠΌΡΠ²Π°ΡΠ΅ Π½Π° Π±ΡΠΎΡΠΎΡ Π½Π° Π΄ΠΈΡΠΊΠΎΠ²ΠΈ Π½Π° ΠΏΠΎΠ»ΠΈΡΠΈΡΠ΅, Π½Π°ΠΈΠ΄ΠΎΠ² Π½Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΎΡ ΡΠΎ Π΄Π΅ΡΠΈΡΡΠΈΡΠ°ΡΠ΅ Π½Π° Π΄ΠΈΡΠΊΠΎΠ²ΠΈ ΡΠΎ ΠΏΠΎΠΌΠΎΡ Π½Π° ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΎΠ΄ Π΄ΠΎΠ±ΡΠΎ ΠΏΠΎΠ·Π½Π°ΡΠΈΠΎΡ ΠΌΠ΅ΡΠΎΠ΄ ΠΏΡΠ΅ΠΊΡ /etc/crypttab. ΠΠΈΡΠ½ΠΎ, ΠΈΡΡΠ°ΠΊΠ½ΡΠ²Π°ΠΌ Π½Π΅ΠΊΠΎΠ»ΠΊΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ ΡΠΎ ΠΊΠΎΡΠΈΡΡΠ΅ΡΠ΅ΡΠΎ Π½Π° ΠΎΠ²ΠΎΡ ΠΌΠ΅ΡΠΎΠ΄, ΠΈΠΌΠ΅Π½ΠΎ Π΄Π΅ΠΊΠ° Π΄Π°ΡΠΎΡΠ΅ΠΊΠ°ΡΠ° ΡΠ΅ ΡΠΈΡΠ° ΡΠ°ΠΌΠΎ ΠΏΠΎ Π²ΡΠΈΡΡΠ²Π°ΡΠ΅ (ΠΌΠΎΠ½ΡΠΈΡΠ°ΡΠ΅) Π½Π° root ΠΏΠ°ΡΡΠΈΡΠΈΡΠ°ΡΠ°, ΡΡΠΎ Π½Π΅Π³Π°ΡΠΈΠ²Π½ΠΎ Π²Π»ΠΈΡΠ°Π΅ Π½Π° ΡΠ²ΠΎΠ·ΠΎΡ Π½Π° ZFS, ΠΎΡΠΎΠ±Π΅Π½ΠΎ Π°ΠΊΠΎ ΡΠΈΠ΅ Π±ΠΈΠ»Π΅ ΡΠΎΠ±ΡΠ°Π½ΠΈ ΠΎΠ΄ ΠΏΠ°ΡΡΠΈΡΠΈΠΈ Π½Π° ΡΡΠ΅Π΄ *_crypt ΠΈΠ»ΠΈ mdadm raids ΡΠΎΠ±ΡΠ°Π½ΠΈ ΠΎΠ΄ ΠΏΠ°ΡΡΠΈΡΠΈΠΈ. Π‘ΠΈΡΠ΅ Π·Π½Π°Π΅ΠΌΠ΅ Π΄Π΅ΠΊΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠΈ ΡΠ°Π·Π΄Π΅Π»Π΅Π½ Π½Π° ΠΊΠΎΠ½ΡΠ΅ΡΠ½Π΅ΡΠΈΡΠ΅ Π½Π° LUKS, Π½Π΅Π»ΠΈ? Π, ΠΈΡΡΠΎ ΡΠ°ΠΊΠ°, ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΎΡ ΡΠΎ ΠΏΡΠ΅Π΄Π²ΡΠ΅ΠΌΠ΅Π½ΠΎ Π·Π°ΠΏΠΎΡΠ½ΡΠ²Π°ΡΠ΅ Π½Π° Π΄ΡΡΠ³ΠΈ ΡΡΠ»ΡΠ³ΠΈ, ΠΊΠΎΠ³Π° ΡΓ¨ ΡΡΡΠ΅ Π½Π΅ΠΌΠ° Π½ΠΈΠ·ΠΈ, ΠΈ ΡΠΏΠΎΡΡΠ΅Π±Π° ΠΠ΅ΡΠ΅ ΠΌΠΈ ΡΡΠ΅Π±Π° Π½Π΅ΡΡΠΎ (ΡΠ°Π±ΠΎΡΠ°ΠΌ ΡΠΎ Π³ΡΡΠΏΠΈΡΠ°Π½ΠΈ Proxmox VE 5.x ΠΈ ZFS ΠΏΡΠ΅ΠΊΡ iSCSI).
ΠΠ°Π»ΠΊΡ Π·Π° ZFSoverISCSIiSCSI ΠΌΠΈ ΡΠ°Π±ΠΎΡΠΈ ΠΏΡΠ΅ΠΊΡ LIO, Π° Π²ΡΡΡΠ½ΠΎΡΡ, ΠΊΠΎΠ³Π° ΡΠ΅ ΡΡΠ°ΡΡΡΠ²Π° iscsi ΡΠ°ΡΠ³Π΅ΡΠΎΡ ΠΈ Π½Π΅ Π³ΠΈ Π³Π»Π΅Π΄Π° ZVOL ΡΡΠ΅Π΄ΠΈΡΠ΅, Π΅Π΄Π½ΠΎΡΡΠ°Π²Π½ΠΎ Π³ΠΈ ΠΎΡΡΡΡΠ°Π½ΡΠ²Π° ΠΎΠ΄ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΠ°ΡΠ°, ΡΡΠΎ Π³ΠΎ ΡΠΏΡΠ΅ΡΡΠ²Π° ΡΡΠ°ΡΡΡΠ²Π°ΡΠ΅ΡΠΎ Π½Π° Π³ΠΎΡΡΠΈΠ½ΡΠΊΠΈΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΠΈ. ΠΡΡΡΠΊΠ°, ΠΈΠ»ΠΈ Π²ΡΠ°ΡΠ°ΡΠ΅ Π½Π° ΡΠ΅Π·Π΅ΡΠ²Π½Π°ΡΠ° json Π΄Π°ΡΠΎΡΠ΅ΠΊΠ° ΠΈΠ»ΠΈ ΡΠ°ΡΠ½ΠΎ Π΄ΠΎΠ΄Π°Π²Π°ΡΠ΅ ΡΡΠ΅Π΄ΠΈ ΡΠΎ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΈΡΠ΅ Π½Π° ΡΠ΅ΠΊΠΎΡ VM, ΡΡΠΎ Π΅ Π΅Π΄Π½ΠΎΡΡΠ°Π²Π½ΠΎ ΡΡΡΠ°ΡΠ½ΠΎ ΠΊΠΎΠ³Π° ΠΈΠΌΠ° Π΄Π΅ΡΠ΅ΡΠΈΡΠΈ ΡΠ°ΠΊΠ²ΠΈ ΠΌΠ°ΡΠΈΠ½ΠΈ ΠΈ ΡΠ΅ΠΊΠΎΡΠ° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΠ° ΠΈΠΌΠ° ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΎΠ΄ 1 Π΄ΠΈΡΠΊ.
Π Π²ΡΠΎΡΠΎΡΠΎ ΠΏΡΠ°ΡΠ°ΡΠ΅ ΡΡΠΎ ΡΠ΅ Π³ΠΎ ΡΠ°Π·Π³Π»Π΅Π΄Π°ΠΌ Π΅ ΠΊΠ°ΠΊΠΎ Π΄Π° ΡΠ΅ Π΄Π΅ΡΠΈΡΡΠΈΡΠ° (ΠΎΠ²Π° Π΅ ΠΊΠ»ΡΡΠ½Π°ΡΠ° ΡΠΎΡΠΊΠ° Π½Π° ΡΡΠ°ΡΠΈΡΠ°ΡΠ°). Π Π½ΠΈΠ΅ ΡΠ΅ Π·Π±ΠΎΡΡΠ²Π°ΠΌΠ΅ Π·Π° ΠΎΠ²Π° ΠΏΠΎΠ΄ΠΎΠ»Ρ, ΠΎΠ΄Π΅ΡΠ΅ Π½Π° ΡΠ΅ΡΠ΅ΡΠ΅ΡΠΎ!
ΠΠ°ΡΡΠ΅ΡΡΠΎ Π½Π° ΠΠ½ΡΠ΅ΡΠ½Π΅Ρ ΠΊΠΎΡΠΈΡΡΠ°Ρ ΠΊΠ»ΡΡΠ½Π° Π΄Π°ΡΠΎΡΠ΅ΠΊΠ° (ΠΊΠΎΡΠ° Π°Π²ΡΠΎΠΌΠ°ΡΡΠΊΠΈ ΡΠ΅ Π΄ΠΎΠ΄Π°Π²Π° Π½Π° ΡΠ»ΠΎΡΠΎΡ ΡΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° - cryptsetup luksAddKey), ΠΈΠ»ΠΈ Π²ΠΎ ΡΠ΅ΡΠΊΠΈ ΠΈΡΠΊΠ»ΡΡΠΎΡΠΈ (ΠΈΠΌΠ° ΠΌΠ½ΠΎΠ³Ρ ΠΌΠ°Π»ΠΊΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π·Π° ΠΈΠ½ΡΠ΅ΡΠ½Π΅ΡΠΎΡ Π½Π° ΡΡΡΠΊΠΈ ΡΠ°Π·ΠΈΠΊ) - ΡΠΊΡΠΈΠΏΡΠ°ΡΠ° decrypt_derived, ΠΊΠΎΡΠ° ΡΠ΅ Π½Π°ΠΎΡΠ° Π²ΠΎ /lib/cryptsetup/script/ (ΡΠ΅ ΡΠ°Π·Π±ΠΈΡΠ°, ΠΈΠΌΠ° ΠΈ Π΄ΡΡΠ³ΠΈ Π½Π°ΡΠΈΠ½ΠΈ, Π½ΠΎ ΡΠ°Ρ Π³ΠΈ ΠΊΠΎΡΠΈΡΡΠ΅Π² ΠΎΠ²ΠΈΠ΅ Π΄Π²Π°, ΠΊΠΎΠΈ ΡΠ° ΡΠΎΡΠΌΠΈΡΠ°Π° ΠΎΡΠ½ΠΎΠ²Π°ΡΠ° Π½Π° ΡΡΠ°ΡΠΈΡΠ°ΡΠ°). Π‘Π΅ ΡΡΡΠ΅ΠΌΠ΅Π² ΠΈ ΠΊΠΎΠ½ ΡΠ΅Π»ΠΎΡΠ½ΠΎ Π°Π²ΡΠΎΠ½ΠΎΠΌΠ½ΠΎ Π°ΠΊΡΠΈΠ²ΠΈΡΠ°ΡΠ΅ ΠΏΠΎ ΡΠ΅ΡΡΠ°ΡΡΠΈΡΠ°ΡΠ΅, Π±Π΅Π· Π½ΠΈΠΊΠ°ΠΊΠ²ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ Π²ΠΎ ΠΊΠΎΠ½Π·ΠΎΠ»Π°ΡΠ°, ΡΠ°ΠΊΠ° ΡΡΠΎ ΡΓ¨ ΡΠ΅ ΠΌΠΈ βΠΏΠΎΠ»Π΅ΡΠ°β Π²Π΅Π΄Π½Π°Ρ. ΠΠ°ΡΠΎΠ°, Π·ΠΎΡΡΠΎ Π΄Π° ΡΠ΅ΠΊΠ°ΡΠ΅? -
ΠΠ° Π·Π°ΠΏΠΎΡΠ½Π΅ΠΌΠ΅!
ΠΡΠ΅ΡΠΏΠΎΡΡΠ°Π²ΡΠ²Π°ΠΌΠ΅ ΡΠΈΡΡΠ΅ΠΌ, Π½Π° ΠΏΡΠΈΠΌΠ΅Ρ Debian, ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½ Π½Π° ΠΊΡΠΈΠΏΡΠΎ ΠΏΠ°ΡΡΠΈΡΠΈΡΠ°ΡΠ° 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
Π‘ΠΎΠ΄ΡΠΆΠΈΠ½Π° Π½Π° ../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
Π‘ΠΎΠ΄ΡΠΆΠΈΠ½Π° ../Π΄Π΅Π»ΠΊΠΎΠΏΠΈΡΠ°
#!/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
Π‘ΠΎΠ΄ΡΠΆΠΈΠ½Π° ../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 ΡΠΈΡΠ΅ -v, ΠΏΡΠΈ Π½Π°ΡΠ°Π²ΡΠ²Π°ΡΠ΅ Π½Π΅ ΡΠΌΠ΅Π΅ Π΄Π° Π±ΠΈΠ΄Π΅ Π³ΡΠ΅ΡΠΊΠΈ Π²ΠΎ ΠΈΠ·Π²ΡΡΡΠ²Π°ΡΠ΅ΡΠΎ Π½Π° Π½Π°ΡΠΈΡΠ΅ ΡΠΊΡΠΈΠΏΡΠΈ. Π‘Π΅ ΡΠ΅ΡΡΠ°ΡΡΠΈΡΠ°ΠΌΠ΅, ΡΠ° Π²Π½Π΅ΡΡΠ²Π°ΠΌΠ΅ ΠΊΠ»ΡΡΠ½Π°ΡΠ° ΡΡΠ°Π·Π° ΠΈ ΡΠ΅ΠΊΠ°ΠΌΠ΅ ΠΌΠ°Π»ΠΊΡ, Π²ΠΎ Π·Π°Π²ΠΈΡΠ½ΠΎΡΡ ΠΎΠ΄ Π±ΡΠΎΡΠΎΡ Π½Π° Π΄ΠΈΡΠΊΠΎΠ²ΠΈ. Π‘Π»Π΅Π΄Π½ΠΎ, ΡΠΈΡΡΠ΅ΠΌΠΎΡ ΡΠ΅ Π·Π°ΠΏΠΎΡΠ½Π΅ ΠΈ Π²ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½Π°ΡΠ° ΡΠ°Π·Π° ΠΎΠ΄ ΡΡΠ°ΡΡΡΠ²Π°ΡΠ΅ΡΠΎ, ΠΈΠΌΠ΅Π½ΠΎ ΠΏΠΎ βΠΌΠΎΠ½ΡΠ°ΠΆΠ°ΡΠ°β Π½Π° root ΠΏΠ°ΡΡΠΈΡΠΈΡΠ°ΡΠ°, ΡΠ΅ ΡΠ΅ ΠΈΠ·Π²ΡΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° partprobe - ΡΠ΅ Π³ΠΈ ΠΏΡΠΎΠ½Π°ΡΠ΄Π΅ ΠΈ Π³ΠΈ ΡΠΎΠ±Π΅ΡΠ΅ ΡΠΈΡΠ΅ ΠΊΡΠ΅ΠΈΡΠ°Π½ΠΈ ΠΏΠ°ΡΡΠΈΡΠΈΠΈ Π½Π° ΡΡΠ΅Π΄ΠΈΡΠ΅ LUKS ΠΈ ΡΠΈΡΠ΅ Π½ΠΈΠ·ΠΈ, Π±ΠΈΠ»ΠΎ Π΄Π° Π΅ ΡΠΎΠ° ZFS ΠΈΠ»ΠΈ mdadm, ΡΠ΅ ΡΠ΅ ΡΠΊΠ»ΠΎΠΏΠΈ Π±Π΅Π· ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ! Π ΡΠ΅ΡΠΎ ΠΎΠ²Π° ΠΏΡΠ΅Π΄ Π²ΡΠΈΡΡΠ²Π°ΡΠ΅ Π³Π»Π°Π²Π½ΠΈΡΠ΅ ΡΠ΅ΡΠ²ΠΈΡΠΈ Π½Π° ΠΊΠΎΠΈ ΠΈΠΌ ΡΠ΅ ΠΏΠΎΡΡΠ΅Π±Π½ΠΈ ΠΎΠ²ΠΈΠ΅ Π΄ΠΈΡΠΊΠΎΠ²ΠΈ/Π½ΠΈΠ·ΠΈ.
Π°ΠΆΡΡΠΈΡΠ°ΡΠ΅1: ΠΠ°ΠΊΠΎ
ΠΠ·Π²ΠΎΡ: www.habr.com