ระบบไม่บู๊ตอีกต่อไปเลิกรออุปกรณ์รูท (initramfs) / dev / mapper / gnome-root ไม่มีอยู่


10

หลังจากติดตั้งการอัปเดตระบบของฉันจะไม่บูตอีกต่อไป ฉันมีการเข้ารหัสดิสก์เต็มรูปแบบ (ตัวติดตั้งที่คุณติดตั้ง) เปิดใช้งานดังนั้นจึงมักจะถามถึงกุญแจเพียงไม่กี่วินาทีหลังจากบูต GRUB ที่ผ่านมา ทีนี้มันข้ามไปขอกุญแจพยายามโหลด Gnome แล้วไปที่หน้าจอด้านล่าง ระบบนี้เป็นกล่อง System76 64- บิตที่ใช้ Ubuntu Gnome 13.04 เรื่องนี้เกิดขึ้นกับฉันครั้งหนึ่งในอดีตอย่างไรก็ตามบน Dell XPS 8300 64- บิตที่ใช้ Ubuntu Gnome Remix 12.10 ในกรณีนั้นฉันติดตั้งระบบปฏิบัติการใหม่ อย่างไรก็ตามฉันต้องการแก้ไขปัญหานี้ในเวลานี้ดังนั้นฉันจึงรู้วิธีจัดการกับมันในอนาคต นอกจากนี้ยังไม่สะดวกอย่างยิ่งที่จะติดตั้งใหม่ตั้งแต่ต้น

ความสงสัยของฉันคือมีบางอย่างผิดพลาดในไฟล์ config ใน / boot ดังนั้นจึงไม่ทราบว่ามีการเข้ารหัสดิสก์ แต่ฉันไม่เห็นอะไรเลยเมื่อมองเข้าไปในนั้น คุณมีความคิดเกี่ยวกับวิธีการแก้ไข (นอกเหนือจากการติดตั้งระบบปฏิบัติการใหม่)?

Gave up waiting for root device. Common problems:
  — Boot args (cat /proc/cmdline)
    — Check rootdelay= (did the system wait long enough?)
    — Check root= (did the system wait for the right device?)
  — Missing modules (cat /proc/modules; ls /dev)
ALERT! /dev/mapper/gnome-root does not exist.   
Dropping to a shell! 

BusyBox v.1.20.2 (Ubuntu 1:1.20.2-1ubuntu1) built-in shell (ash)   
Enter 'help' for list of built-in commands.  

(initramfs)

คำตอบ:


9

ฉันได้รับการแก้ไขแล้ว !!! สำหรับคนรุ่นต่อไปดังนั้นคุณไม่จำเป็นต้องผ่านช่วงเวลาแห่งความทุกข์ทรมานและเวลาที่ไม่รู้จบที่ฉันทำ:

ประการแรกฉันสามารถทำให้ระบบบูตจาก(initramfs)พรอมต์โดยพิมพ์ต่อไปนี้ (ฉันใช้หน้าฟอรัมนี้เป็น crutch):

cryptsetup luksOpen /dev/sda5 sda5_crypt
lvm vgchange -a y
exit

นี่ทำให้ระบบของฉันบูตอย่างถูกต้อง เมื่อบู๊ตแล้วฉันก็ปรับ/etc/crypttabให้ชี้ไปที่ UUID อื่นก่อนหน้านี้ ฉันเลือก UUID /etc/fstabจากฉัน บันทึกค่า UUID ดั้งเดิม คุณจะต้องใช้มันในไม่กี่ขั้นตอน จากนั้นฉันก็วิ่ง (จากสถานี):

update-initramfs -k all -c

หากคุณได้รับคำเตือนที่มีลักษณะเช่นนี้หรือคล้ายกัน:

WARNING: invalid line in /etc/crypttab

จากนั้นกลับไปที่จุดเริ่มต้นและแทนที่จะใช้สิ่งที่อยู่ในของคุณsda5_cryptcrypttab

ฉันรีบูทแล้ว ครั้งนี้ฉันได้รับพรอมต์สำหรับข้อความรหัสผ่าน! แต่อย่าตื่นเต้นเกินไปเพราะมันใช้งานไม่ได้ ฉันป้อนรหัสผ่านที่ถูกต้องประมาณ 7 ครั้งและมันปฏิเสธพวกเขาทั้งหมด จากนั้นกลับไปที่(initramfs)พรอมต์หลังจากนั้นประมาณ 90 วินาที

ฉันทำขั้นตอนที่หนึ่งซ้ำแล้วนำมันมาบูตอีกครั้ง จากนั้นฉันจะคืนค่า UUID ดั้งเดิมให้เป็นcrypttab, และรันอีกขั้นตอนที่สอง จากนั้นฉันจะรีบูทและทำสำเร็จ!


5

ด้วยการเข้ารหัสดิสก์เต็มรูปแบบเป็นตัวเลือกใน Ubuntu 14.04 ฉันแค่ต้องการชี้ให้เห็นว่าฉันแก้ปัญหานี้อย่างไรเนื่องจากเทอร์มินัล initramfs ของฉันไม่อนุญาตให้ฉันใช้cryptsetup:

  1. บูตจาก Live DVD / USB (USB จะเร็วขึ้นมาก)

  2. เปิด Terminal และพิมพ์ข้อความต่อไปนี้:

    sudo -i
    cryptsetup luksOpen /dev/sda5 sda5_crypt
    # (do any lvm management you need here, I didn't need any.)
    mkdir /mnt/system
    mount /dev/mapper/ubuntu--vg-root /mnt/system
    mount /dev/sda2 /mnt/system/boot
    mount /dev/sda1 /mnt/system/boot/efi (May or may not be needed.)
    for i in /dev/pts /dev /proc /sys; do mount -B $i /mnt/system$i; done
    chroot /mnt/system
    update-initramfs -k all -c
    exit
    for i in /dev/pts /dev /proc /sys; do umount /mnt/system$i; done
    umount /mnt/system/boot/efi # (If you have UEFI.)
    umount /mnt/system/boot
    umount /mnt/system
  3. รีบูทและหวังว่าจะได้ผล


ฉันชอบวิธีนี้ดีกว่าเพราะฉันไม่ต้องคิดหาวิธีรับพรอมต์หรือทำรีบูตมากกว่าหนึ่งครั้ง ในกรณีของฉันฉันได้อัพเกรดจาก Ubuntu 15.04 เป็น 15.10 และไม่สามารถปลดล็อกไดรฟ์ของฉันในระหว่างการบูตได้อีก อีกอย่างหนึ่งคือฉันพบว่าชื่อการแมปที่ให้ไว้ในบรรทัดที่ 2 (เช่น sda5_crypt) ต้องตรงกับไฟล์ crypttab ของคุณ
Der Wolf

1
/etc/crypttabทำงานข้างต้นเท่านั้นถ้าคุณมีรายการใน หลังจากป้อน chroot ตามขั้นตอนข้างต้น แต่ก่อนที่จะรันupdate-initramfsให้รันnano /etc/crypttabและตรวจสอบให้แน่ใจว่ามีบรรทัดที่มีชื่อ mapper และ UUID ของไดรฟ์ หากไฟล์ไม่มีอยู่หรือว่างเปล่าupdate-initramfsจะไม่แก้ไขปัญหา! เพิ่มบรรทัด crypttab ในสภาพแวดล้อม chroot คำตอบนี้ควรได้รับการแก้ไขเพื่อสะท้อนถึงสิ่งนี้ นอกจากนี้ฉันคิดว่าcryptsetupมีเฉพาะในพรอมต์ initramfs หาก/etc/crypttabมีอยู่และมีรายการเมื่อมีการอัปเดต initramfs
Nick

0

แก้ไขด้วงของคุณด้วยการบูทผ่าน live-cd / live-usb อ้างถึงหน้านี้สำหรับรายละเอียดของกระบวนการ อ้างถึงส่วน "ผ่านทางสถานี LiveCD" ในหน้า

การแก้ไขด้วงควรแก้ไขไฟล์ที่มีรูปแบบไม่ถูกต้องที่คุณอาจมีในการกำหนดค่าด้วง


ขอบคุณสำหรับทิป. ฉันพยายามทุกอย่างที่คุณแนะนำ แต่ไม่มีประโยชน์ ฉันเพิ่งคิดออกว่า มันค่อนข้างบ้า ...
Freedom_Ben

0

ตรวจสอบว่าคุณได้ติดตั้งบนระบบของคุณก็อาจจะถูกลบออกโดยการทำงานcryptsetup ข้อมูลเพิ่มเติมapt-get autoremove

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.