Ubuntu 14.04 ไม่บูตหลังจากข้อความแสดงข้อผิดพลาด / tmp ไม่สามารถติดตั้งได้


31

ฉันเพิ่งติดตั้ง Ubuntu 14.04 โดยใช้ WUBI และหลังการติดตั้งเมื่อมันบู๊ตมันแสดงข้อผิดพลาด:

Serious errors were found while checking the disk drive for /. 

มีสามตัวเลือก:

press [I] to ignore, press [S] to skip mounting and press [M] to mount manually. 

หลังจากที่ฉันกดIแสดงว่า/tmpไม่สามารถติดตั้งได้และ Ubuntu ของฉันไม่บูต

  • ใครช่วยแนะนำฉันถึงวิธีแก้ปัญหานี้ได้ไหม

@pandya ฉันมี aleeady เห็นการเชื่อมโยง แต่คำตอบไม่ได้ดูเหมือนจะช่วยให้ฉันแก้ปัญหาได้
272877

ฉันต้องการติดตั้งผ่าน wubi เพราะฉันสามารถลบ Ubuntu ได้ทุกเมื่อที่ฉันต้องการโดยไม่มีปัญหา คุณช่วยแนะนำฉันถึงวิธีแก้ปัญหานี้ได้อย่างไร
user272877

ฉันใช้ข้างต้นและใช้งานได้ดี อย่างไรก็ตามเมื่อฉันพยายามแก้ไขรายการบูต GRUB2 มันจะเปลี่ยนกลับเป็นต้นฉบับ (แม้หลังจากบันทึกแล้ว) ฉันใช้คำสั่ง: sudo gedit /etc/grub.d/10_lupin ฉันสามารถแก้ไขและบันทึกได้ (เปลี่ยน ro เป็น rw) แต่หลังจากรีบูตเครื่องมันจะเปลี่ยนกลับไปเป็นรายการบูตดั้งเดิม ฉันจะทำให้มันถาวรได้อย่างไร ขอบคุณมาก

วัวศักดิ์สิทธิ์ทำไมนี่ถึงเกิดขึ้น?
เดิร์ก

คำตอบ:


43
  1. ใน Windows Boot Manager เลือก Ubuntu
  2. กดปุ่มใด ๆ แล้วเข้าสู่เมนู GNU Grub2
  3. คุณสามารถกด "e" เพื่อแก้ไขรายการบูต GRUB2

คุณต้องเปลี่ยนรายการบูต GRUB2 จาก "ro" เป็น "rw"

เช่น

linux   /boot/vmlinuz-3.13.0-24-generic root=UUID=AAC884AC1F144321 loop=/ubuntu/disks/root.disk ro   quiet splash $vt_handoff

ไปยัง

linux   /boot/vmlinuz-3.13.0-24-generic root=UUID=AAC884AC1F144321 loop=/ubuntu/disks/root.disk rw   quiet splash $vt_handoff

กดF10คุณสามารถบูตใน Ubuntu 14.04

และคุณสามารถแก้ไขรายการบูต GRUB2:

sudo vi /etc/grub.d/10_lupin

เปลี่ยนสาย:

linux   ${rel_dirname}/${basename} root=${LINUX_HOST_DEVICE} loop=${loop_file_relative} ro ${args}

ไปที่:

linux   ${rel_dirname}/${basename} root=${LINUX_HOST_DEVICE} loop=${loop_file_relative} rw ${args}

สร้างรายการบูต GRUB2 ขึ้นใหม่:

sudo update-grub

ตกลงขอบคุณที่ช่วย แต่คำถามสุดท้ายฉันจะเปลี่ยนไฟล์ด้วงโดยไม่ทำการบูทเป็นอูบุนตูเพราะฉันไม่สามารถบูตเข้าสู่อูบุนตูได้
user272877

1. ในตัวจัดการการบูต windows เลือก Ubuntu 2. กดปุ่มใดก็ได้แล้วไปที่เมนู GUN Grub2 3. คุณสามารถกด "e" เพื่อแก้ไขคำสั่งก่อนการบู๊ต
273948

หลังจากคุณเลือก "Ubuntu" จากตัวจัดการการบูต Windows กด Shift ค้างไว้และเมนู Grub จะปรากฏขึ้น
Gfour

ขอบคุณมาก ๆ อูบุนตูของฉันก็บูทในที่สุด! ขอขอบคุณทุกคน
user272877

ฉันแก้ไขปัญหาด้วยคำตอบนี้ แต่ตอนนี้เมื่อฉันรีสตาร์ทหรือปิดเครื่องคอมพิวเตอร์หลังจากเลือกอูบุนตูในตัวเลือกการบูตหน้าจอเป็นสีดำและไม่เริ่มเลย ฉันรีบูตด้วยตนเองแล้วเลือกอูบุนตูในตัวเลือกการบูตในเมนูกด e และจากนั้น F10 และโหลดได้ดีต้องกด e -> F10 เสมอเพื่อให้สามารถโหลดอูบุนตู ข้อเสนอแนะใด ๆ
Duver

6

การแก้ไขชั่วคราว - การแทนที่การเมานต์เริ่มต้นของ root.disk ไปที่rw(อ่าน / เขียน) แทนro(อ่านอย่างเดียว) นั้นดี เป็นวิธีเดียวในการบูต Wubi หลังจากการติดตั้ง 14.04 (หรืออัพเกรด)

อย่างไรก็ตามมีการแก้ไขระยะยาวที่ดีกว่าการแก้ไขการเมาท์เพื่ออ่าน / เขียนอย่างถาวร วิธีที่ดีที่สุดคือปรับเปลี่ยนวิธีการสร้างอุปกรณ์วนซ้ำเพื่อให้สามารถนับใหม่เป็นอ่าน - เขียนได้ นี่จะช่วยให้คุณใช้โหมดการกู้คืนได้

แก้ไขไฟล์/usr/share/initramfs-tools/script/localดังที่แสดง (ลบออกหนึ่งบรรทัด, เพิ่มอีกสามบรรทัด):

--- /home/bcbc/local   2014-11-19 20:25:12.274837304 -0800
+++ /usr/share/initramfs-tools/scripts/local   2014-11-19 20:28:37.990832807 -0800
@@ -143,7 +143,9 @@
        modprobe ${FSTYPE}

        # FIXME This has no error checking
-       mount ${roflag} -o loop -t ${FSTYPE} ${LOOPFLAGS} "/host/${LOOP#/}" ${rootmnt}
+       loopdev=`losetup -f`
+       losetup ${loopdev} "/host/${LOOP#/}"
+       mount ${roflag} -t ${FSTYPE} ${LOOPFLAGS} ${loopdev} ${rootmnt}        

        if [ -d ${rootmnt}/host ]; then
            mount -o move /host ${rootmnt}/host

หลังจากทำการเปลี่ยนแปลงแล้วให้อัพเดต ramdisk เริ่มต้น:

sudo update-initramfs -u

สำหรับข้อมูลเพิ่มเติมและเครดิตสำหรับการแก้ไขโปรดดู: https://code.launchpad.net/~noorez-kassam/ubuntu/utopic/initramfs-tools/fix-for-1317437/+merge/219927

ข้อควรระวัง : แน่นอนถ้าคุณพิมพ์ผิดเมื่อใช้การแก้ไขนี้อาจทำให้การติดตั้งไม่สามารถบูตได้ ดังนั้นดำเนินการด้วยความระมัดระวัง และถ้าไม่แน่ใจให้ใช้ Grub override ง่ายกว่า ตรวจสอบให้แน่ใจว่าคุณใช้เครื่องหมายคำพูดไม่ใช่loopdev=บรรทัด

หากคุณพยายามทำสิ่งนี้และพบปัญหาคุณสามารถลองทำสิ่งต่อไปนี้ได้สองวิธี:

  1. หากคุณมีเคอร์เนลมากกว่าหนึ่งตัวให้ไปที่เมนูการกู้คืนและเลือกเคอร์เนลที่เก่ากว่า (ที่มี initramfs เป็นของตัวเอง)
  2. คุณสามารถสำรองข้อมูลinitramfs( ก่อนอัปเดต ) แล้วคัดลอกไปยังไฟล์ที่ไม่ดีจาก DVD / USB สด
  3. คุณสามารถสร้างใหม่initramfsใน a chrootแต่มันเกี่ยวข้องกับนิดหน่อย

หากเป็นการติดตั้งใหม่การติดตั้งใหม่เป็นตัวเลือกที่ดีที่สุดของคุณ


เช่นเดียวกับตัวคุณเองฉันกำลังพยายามหาทางออกระยะยาวที่ดีกว่าสำหรับปัญหานี้ ลองใช้วิธีการของคุณและจบลงด้วยการได้รับข้อผิดพลาดจำนวนมากในการรีบูตซึ่งบางส่วนระบุว่าไฟล์ที่ขาดหายไปเช่น / etc / fstab อาจเป็นได้ว่าฉันพิมพ์ผิด แต่เป็นไปได้หรือไม่ว่า 'losetup' กำลังค้นหาอุปกรณ์ลูปที่ไม่ได้ใช้งานครั้งแรกที่แตกต่างจากที่คาดไว้ ฉันควรใช้ / dev / loop0 แทนหรือไม่ ปัจจุบันฉันใช้ Grub override ง่ายกว่า
Bill

@ การเรียกเก็บเงินฉันเดาว่ามีการพิมพ์ผิด หากคุณวางรหัสของคุณและโพสต์ลิงค์ฉันจะดู
bcbc

ขอบคุณ bcbc แต่น่าเสียดายที่ฉันไม่สามารถวางรหัสดั้งเดิมตั้งแต่ฉันสิ้นสุดการถอนการติดตั้งและติดตั้ง wubi อีกครั้ง อย่างไรก็ตามสิ่งที่ฉันจะทำคือ pastebin รหัสปัจจุบันที่ฉันต้องการใช้เพื่อสร้าง initramfs ใหม่ นี่คือลิงค์คือ: pastebin.com/bRKc9fdL
Bill

@ การเรียกเก็บเงินที่ดูดี
bcbc

3
เพื่ออ้างถึงกิจการของอัครทูต 8: 8 - ดังนั้นจึงมีความยินดีอย่างมากในเมืองนั้น .... ดังนั้นในบ้านของ Tourloupis ในเย็นวันนั้น ... ขอบคุณสำหรับความช่วยเหลือของคุณ bcbc แก้ไขปัญหาของฉัน ต้องเป็นตัวพิมพ์ผิดหลังจากทั้งหมด! ในใจคุณฉันต้องคัดลอกและวางส่วนของรหัสนั้นลงในสำเนาล่าสุดของ / usr / share / initramfs-tools / script / local เนื่องจากมันได้รับการแก้ไขตั้งแต่ฉันโพสต์ความคิดเห็นดั้งเดิมของฉัน ไม่อย่างนั้นมันก็ใช้งานได้เหมือนมนต์เสน่ห์! นั่นคือหลังจากฉันเปลี่ยนบรรทัดที่ได้รับผลกระทบของ /etc/grub.d/10_lupin กลับเป็นอ่านอย่างเดียว ขอขอบคุณอีกครั้งสำหรับความช่วยเหลือของคุณ!
Bill
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.