Pi tidak akan boot setelah pembaruan initramfs

9

Saya telah mencoba untuk mendapatkan Raspbian Jessie, diinstal dari gambar untuk boot dengan partisi root yang dienkripsi.

Saya berhasil mengikuti panduan di sini .

Ketika saya mem-boot Pi, ia turun ke prompt initramfs, lalu saya membuka partisi dengan

# cryptsetup luksOpen /dev/mmcblk0p2 sdcard
# exit

dan boot ke Debian. Bagus!

Namun, ada beberapa masalah. Ketika saya mencoba memperbarui file initramfs dengan:

# sudo mkinitramfs -o /boot/initramfs.gz

di Debian, Pi tidak berhasil reboot ke prompt initramfs. Itu hanya hang dengan kursor yang berkedip setelah menampilkan logo pixel. Ketika saya mengembalikan ke gambar boot cadangan saya, saya mendapatkan prompt initramfs lagi dan dapat mem-boot dari root terenkripsi.

Masalah kedua adalah bahwa saya tidak mengkonfigurasi dropbear dengan benar; tampaknya dikonfigurasi untuk menggunakan DHCP. Ini berarti bahwa ketika saya login akan mendapatkan alamat IP acak. Saya perlu memperbarui konfigurasi ke alamat IP tetap sehingga saya dapat masuk ke Pi tanpa kepala setelah reboot, tetapi tanpa kemampuan untuk memperbarui initramfs saya tidak tahu bagaimana cara memperbaikinya.

Mengingat bahwa saya bahkan tidak bisa mendapatkan prompt initramfs setelah pembaruan, saya benar-benar tidak yakin bagaimana memulai memecahkan masalah ini, jadi petunjuk apa pun akan sangat bagus. Saya akan memberikan informasi apa pun yang akan membantu menyelesaikan masalah ini.

richarddmorey
sumber
1
Samar-samar saya ingat pernah mendengar beberapa waktu lalu bahwa systemd, initsistem default maju dari versi "Jessie" saat ini dari Debian dan dengan demikian Raspbian yang berasal darinya pernah mengalami masalah dengan sistem file terenkripsi. Saya menduga bahwa setidaknya beberapa bagian dari masalah telah diselesaikan tetapi dalam kasus khusus Anda, Anda mungkin ingin mempertimbangkan untuk beralih kembali ke sysV inityang diharapkan oleh artikel 2013 (itu menyebutkan versi "Wheezy" dari Raspbian yang merupakan versi sebelumnya yang akan memiliki init default dari sysV satu) ...
SlySven
1
Tampaknya tidak mungkin menjadi masalah yang terkait dengan systemd; Saya menjalankan beberapa sistem standar Debian 8 yang berbeda dengan partisi root terenkripsi tanpa masalah. Kecurigaan saya adalah bahwa kode untuk meminta frasa sandi enkripsi tidak ada atau tidak kompatibel dengan apa pun yang memasang logo splash screen. (Saya mendapatkan prompt mode teks untuk frasa sandi selama boot sistem.) Ketika saya mendapatkan kesempatan, saya akan membandingkan skrip startup pada Pi saya dan pada salah satu laptop Debian saya.
cjs
Mengenai DHCP. Kunci langsung di router Anda. Tidak di perangkat. Bisa jadi itu menyebalkan di pantat.
kuzeyron
Saya sarankan Anda untuk melihat pada panduan Enkripsi Robpol86 ( robpol86.com/raspberry_pi_luks.html ) ketika satu hal yang saya kenali dalam panduan yang Anda gunakan adalah bahwa tidak ada skrip initramfs-rebuild yang berjalan setelah setiap pembaruan kernel Anda. . Saya telah menggunakan panduan Robpol pada banyak sistem Jessie dan Stretch untuk waktu yang lama dan tidak pernah memiliki masalah. Tentu saja panduan ini tidak akan membantu Anda mengenai masalah dropbear Anda.
Stefan Wegener

Jawaban:

0

Nonaktifkan sembarang layar splash dan periksa output saat boot. Di cmdline.txt (di /boot/cmdline.txt) pastikan Anda memilikinya rootwait logo.nologo nosplash.

Pasti ada masalah dengan pembaruan Anda atau initramfs. Pastikan Anda menyertakan modul yang tepat ke dalamnya dengan menunjuk ke versi kernel target seperti sudo mkinitramfs -o /boot/initramfs.gz -k -v 4.14.78-v7+ ini : Ini akan menargetkan modul kernel dari versi spesifik yang diinstal, dan ambil semua modul dari / lib / modul / dengan benar.

Jika ada ketidaksesuaian, mungkin ada masalah dengan memuat modul kernel yang tepat. Periksa juga initramfs-tools.conf Anda dan kait / skrip.

Mengenai IP, Anda dapat memiliki IP tetap dengan parameter boot kernel "IP =". Tetapi akan lebih baik untuk mengkonfigurasi itu di server DHCP, yang kemungkinan besar adalah router Anda.

Hernn0
sumber
-1

Cobalah untuk mengembalikan firmware kembali dan kemudian coba lagi:

Untuk mengembalikan memberikan github melakukan hash.

Untuk meningkatkan / menurunkan versi ke revisi firmware tertentu, tentukan hash Git-nya (dari https://github.com/Hexxeh/rpi-firmware repository) sebagai berikut:

sudo rpi-perbarui fab7796df0cf29f9563b507a59ce5b17d93e0390


Dan untuk mencoba meningkatkan lagi gunakan:

sudo apt-get update && sudo apt-get upgrade
sudo shutdown -r now

Kemudian setelah proses itu selesai pembaruan ke rpi-update berikutnya:

sudo BRANCH=next rpi-update
sudo shutdown -r now

Setelah itu, Anda harus dapat memberikan instruksi di sini

pastikan untuk melewati 2 blok kode pertama karena saya baru saja memodifikasi dan memberikan yang berfungsi di atas!

Pengguna98764431
sumber