วิธีการแก้ไขความล้มเหลวในการบูตเนื่องจาก fstab ไม่ถูกต้อง?


26

ดูเหมือนว่าฉันได้เพิ่มบันทึกที่ไม่ถูกต้องไปที่/etc/fstab:

//servername/share    /mnt/share    cifs     defaults,username=myuser     0 0

เมื่อฉันทำmount -aมันก็ถามรหัสผ่านของผู้ใช้เพื่อเชื่อมต่อเครือข่ายแบ่งปัน ดูเหมือนว่าจะไม่สามารถดำเนินการต่อได้หากไม่มีรหัสผ่านขณะบูตดังนั้นจึงหยุดทำงาน

ฉันจะแก้ไข fstab เพื่อป้องกันการบูตล้มเหลวได้อย่างไร

คำตอบ:


38

ดูเหมือนว่าฉันได้พบวิธีแก้ปัญหา:

  • ที่พรอมต์ด้วงกดaเพื่อผนวกตัวเลือก
  • เพิ่มinit=/bin/bashที่ส่วนท้ายของบรรทัดคำสั่งเคอร์เนลและกด Enter

ระบบจะบูตไปที่พรอมต์เช่น 'bash-3.2 #' ป้อนคำสั่งต่อไปนี้ที่พรอมต์

  • mount -o remount,rw /
  • vim /etc/fstab

แก้ไขไฟล์ fstab แสดงความคิดเห็นข้อผิดพลาดโดยการเพิ่ม # ที่จุดเริ่มต้นของแต่ละบรรทัดที่มีปัญหาบันทึกไฟล์

  • รีบูตโดยกด CTRL + ALT + DEL

4
ฉันต้องใช้mount -o remount,rw / --target /เพื่อประสบความสำเร็จในโหมด rw ใหม่ Elsecase mount กำลังเลือกค่าที่ไม่ถูกต้องจาก/etc/fstabให้ดูman mountรายละเอียด
laconbass

1
@laconbass คุณพูดถูกจริงๆ--target /เป็นกุญแจสำคัญ!
sempasha

สิ่งนี้ยังคงเป็นจริงในวันนี้ - มากกว่าหกปีต่อมา อย่างไรก็ตามใน CentOS7 กุญแจสำคัญสำหรับการเปลี่ยนรายการในการบูตในขณะนี้คือแท็บและครั้งเดียวในทุบตีคุณจะต้องติดตั้งระบบแฟ้มของคุณ (ซึ่งยังคงเดินเท้าในขั้นตอนนี้) ด้วยง่ายmount /dev/sda(X) /mnt(ชัดเปลี่ยนพาร์ทิชันรากด้วยขวาหนึ่ง)
nnsense

ช่วยชีวิตฉันไว้ ..
ตามี

คำตอบที่ดี. ขอบคุณ
Mohamed Bana

2

วิธีการเกี่ยวกับการลบรายการสร้างภาพรวมแล้วพยายามเปลี่ยน / etc / fstab ของคุณเพื่อให้คุณมีภาพรวมการทำงานที่คุณสามารถย้อนกลับไป?

ตามmanpage mount.cifsคุณสามารถระบุรหัสผ่านpassword=argได้ นอกจากนี้ตามที่ manpage ว่ามีข้อโต้แย้งใด ๆแต่แทนที่จะusername=arg user=argแต่มันอาจจะแตกต่างกันในระบบของคุณตรวจสอบ manpage ของคุณเพื่อหาชื่ออาร์กิวเมนต์ที่ถูกต้อง


manสำหรับผู้ชนะ.
ทิม

ฉันกำลังจะสร้างสแนปชอต แต่ในขณะที่ฉันกำลังทดลองกับfstabอินสแตนซ์ vm ปิดตัวลงด้วยเหตุผลบางอย่าง เห็นได้ชัดว่าฉันจะไม่ถามคำถามว่าฉันสามารถแก้ไขได้ด้วยตัวเอง
เลือก

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

1

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


1

ฉันพบวิธีแก้ไขข้อผิดพลาดของระบบเคอร์เนลที่ไม่โหลดใช้ซีดีสดเพื่อเข้าถึงการติดตั้งปัจจุบันของคุณ หนึ่งครั้งในการติดตั้งเคอร์เนล Linux:

pacman -S Linux

จากนั้นลบไฟล์ fstab จาก etc / fstab:

rm /etc/fstab

ตอนนี้ติดตั้ง systemd ใหม่:

pacman -S systemd

เมื่อติดตั้ง systemd ใหม่มันจะสร้างไฟล์ fstab ใหม่โดยอัตโนมัติ

ตอนนี้ติดตั้ง bootloader ในกรณีนี้ฉันใช้ด้วง:

pacman -S grub os-prober

(โพรบ os มีประโยชน์หากคุณติดตั้งมากกว่า 1 ระบบบน hdd / ssd ของคุณ) จากนั้น

grub-install --target=i386-pc /dev/sda

เมื่อสร้างไฟล์การกำหนดค่าเสร็จแล้ว:

grub-mkconfig -o /boot/grub/grub.cfg

จากนั้นให้ยกเลิกการต่อเชื่อมพาร์ติชันที่ใช้งานและบูตใหม่

umount /dev/sdX 
reboot

สิ่งนี้ควรแก้ไขปัญหามันใช้งานได้สำหรับฉัน


0

อาจเป็นฉันสายเกินไป แต่นี่คือ FYI ในสถานการณ์นี้คุณสามารถใช้ nano เพื่อโหลด fstab และคุณสามารถรีสตาร์ทได้หลังจากแก้ไข fstab

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