Saya mencoba mengatur volume terenkripsi mengikuti panduan ini
Semuanya sudah diatur tetapi pemasangan volume terenkripsi gagal pada saat boot dengan kesalahan:
fsck.ext4: Tidak ada file atau direktori seperti itu ketika mencoba untuk membuka / dev / mapper / safe_vault Perangkat yang mungkin tidak ada?
Ini adalah pengaturan saya:
crypttab
$ sudo cat /etc/crypttab
safe_vault /dev/disk/by-uuid/d266ae14-955e-4ee4-9612-326dd09a463b none luks
CATATAN:
The uuid
berasal dari:
$ sudo blkid /dev/mapper/<my_logical_group>-safe_vault
/dev/mapper/<my_logical_group>-safe_vault: UUID="d266ae14-955e-4ee4-9612-326dd09a463b" TYPE="crypto_LUKS"
fstab
$ sudo cat /etc/fstab | grep safe_vault
/dev/mapper/safe_vault /safe-vault ext4 defaults 0 2
Apa yang telah kulakukan...
Jadi saya pergi ke situs web devoper dan di FAQ Masalah Umum yang mereka katakan:
Pastikan Anda memiliki mapper perangkat dan target crypt di kernel Anda. Output dari "target dmsetup" harus mencantumkan target "crypt". Jika tidak ada atau perintah gagal, tambahkan device mapper dan crypt-target ke kernel.
Jadi saya lakukan, ternyata saya tidak punya crypt
target:
$ sudo dmsetup targets
striped v1.4.1
linear v1.1.1
error v1.0.1
Masalahnya adalah saya tidak tahu cara menambahkan target seperti itu.
Saya pikir ini (tidak memiliki crypt
target) mungkin menyebabkan crypttab
konfigurasi diabaikan pada saat boot dan dengan demikian mencoba untuk me-mount entri fstab
gagal karena cryptsetup
belum memetakan volume terenkripsi saya /dev/mapper/safe_vault
.
CATATAN:
Volume terenkripsi berhasil dipetakan, dipasang dan ditulis secara manual:
$ sudo cryptsetup luksOpen /dev/mapper/<my_logical_group>-safe_vault safe_vault
Enter passphrase for /dev/mapper/<my_logical_group>-safe_vault:
$ sudo mount /dev/mapper/safe_vault /safe_vault
Beginilah tampilannya setelah memetakan dan memasangnya:
$ sudo lsblk -o name,uuid,mountpoint
NAME UUID MOUNTPOINT
sda
├─sda1 28920b00-58d3-4941-889f-6249357c56ee
├─sda2
└─sda5 uhBLE7-Kcfe-RMi6-wrlX-xgVh-JfAc-PiXmBe
├─<my_logical_group>-root (dm-0) 1bed9027-3cf7-4f8d-abdb-28cf448fb426 /
├─<my_logical_group>-swap_1 (dm-1) a40c16c4-7d0c-46d7-afc8-99ab173c20bb [SWAP]
├─<my_logical_group>-home (dm-2) e458abb7-b263-452d-8670-814fa737f464 /home
├─<my_logical_group>-other (dm-3) 0a1eec42-6534-46e1-8eab-793d6f8e1003 /other
└─<my_logical_group>-safe_vault (dm-4) d266ae14-955e-4ee4-9612-326dd09a463b
└─safe_vault (dm-5) 9bbf9f47-8ad8-43d5-9c4c-dca033ba5925 /safe-vault
sr0
MEMPERBARUI
- Ternyata saya memang memiliki
crypt
target tetapi untuk itu muncul dengandmsetup targets
saya harus terlebih dahulucryptsetup luksOpen <my-device>
- Saya sudah mencoba menggunakan
UUID
s menurut jawaban @Mikhail Morfikov tetapi masih gagal saat boot.
Saya masih berpikir masalahnya adalah bahwa entah bagaimana volume terenkripsi tidak dipetakan (dibuka dengan cryptsetup luksOpen
) pada saat boot sehingga tidak /dev/mapper/<safe_vault or UUID>
ada, kemudian mencoba untuk me-mount (fstab) gagal.
PEMBARUAN 2
Ternyata saya tidak memiliki skrip yang diperlukan untuk dipasang pada saat boot. Lihat catatan dalam jawaban @ MikhailMorfikov.
sumber
luksOpen
? Saya berharap jika itu tidak ada, luksOpen akan gagal juga.sudo cryptsetup luksOpen
dua target baru muncul untuksudo dmsetup targets
:error
dancrypt
. Saya kira saya perlu mengubah pertanyaan kemudian .../dev/mapper/<my-logical-volume>-safe_vault
adalah volume logis yang dibuat dengan LVM dan/dev/mapper/safe_vault
merupakan perangkat yang dipetakan olehnyacryptsetup luksOpen /dev/mapper/<my-logical-volume>-safe_vault
. Apakah Anda tahu jikacrypttab
berfungsi dengan volume LVM?/boot
). Semua terpasang saat boot tanpa masalah. Apakah Anda yakin telah memperbaruiinitramfs
setelah mengedit/etc/crypttab
? Bisakah Anda menunjukkan outputlsblk -o name,uuid,mountpoint
ketika semuanya sudah terpasang dan berfungsi sebagaimana mestinya?Jawaban:
Anda harus memperhatikan UUID. Sebagai contoh, ini adalah konfigurasi saya:
Saya punya satu partisi terenkripsi (sda2) dengan 4 volume (LVM). Yang saya butuhkan adalah mengatur dua UUID di file yang tepat. Sda2 UUID masuk ke
/etc/crypttab
dan volume UUID (misalnya debian_crypt-root) masuk ke/etc/fstab
.Jadi, itu akan menjadi:
Setelah mengubah
/etc/crypttab
file, Anda harus membangun kembali initramfs:CATATAN
Paket
cryptsetup
harus diinstal karena memiliki skrip startup yang memberikan dukungan untuk volume terenkripsi secara otomatis saat boot.Kenapa repot-repot menyebutkan ini? Nah, jika Anda mengatur LVM selama instalasi Debian Wheezy menginstal paket cryptsetup-bin ,
libcryptsetup4
danlvm2
tetapi tidakcryptsetup
, maka Anda memiliki alat untuk mengatur perangkat LVM & LUKS tetapi bukan skrip yang diperlukan untuk memasang perangkat LUKS pada saat boot. Mereka datang dalam paket cryptsetup .sumber
UUID
tetapi saya mendapatkan kesalahan yang sama. Saya akan memperbarui pertanyaan dengan detail.Tampaknya jawaban @Mikhail Morfikov mencakup pemasangan selama tahap initramfs . Alternatif (jika bukan sistem file root) adalah mendekripsi dan me-mount partisi secara otomatis melalui systemd , setelah kernel linuz dimuat. Tentu saja ini hanya mungkin jika Anda menjalankan systemd . Saya akan menjelaskan metode di sini:
The
/etc/crypttab
entri:Berikut
noauto
adalah instruksi untuk tidak mencoba mendekripsi disk selama tahap initramfs .Di atas,
e412-blahblah
adalah UUID partisi yang berisi sistem luks, dalam kasus saya partisi/dev/sdb2
:Selama startup kernel linuz, systemd akan membaca
/etc/crypttab
file dan membuat file layanan runtime/run/systemd/generator/[email protected]
. Namun, layanan itu tidak berjalan secara otomatis. Anda dapat menjalankannya secara manualtetapi untuk mendekripsi dan kemudian memasangnya pada saat startup,
/etc/fstab
mungkin diperlukan sebagai berikut:Berikut
x-systemd.automount
adalah instruksi untuk systemd untuk me-mount/media/crypt-data
, dan[email protected]
merupakan instruksi untuk systemd bahwa dekripsicrypt2
diperlukan sebelum itu mungkin.Dalam systemd tidak akan benar-benar me-mount direktori sampai pertama kali diakses, misalnya
ls /media/crypt-data
, maka akan me-mount just-in-time dan muncul setelahnya di/proc/mounts
.Terkait
Anda mungkin bertanya "* mengapa memiliki disk data terenkripsi dengan kunci di sistem file root?". Itu karena sistem file root juga dienkripsi, jadi kuncinya aman. Sistem file root didekripsi selama tahap initramfs boot, jawaban ala Mikhail. Saya punya entri lain di
/etc/crypttab
file untuk itu:dan saya jelaskan pengaturannya dan boot usb di sini
sumber