Score:2

ลงจอดในพรอมต์ฉุกเฉินของ systemd หลังจากกระบวนการซ่อมแซมการบูตที่ยาวนาน ปัญหา: ไม่มี FS ในไฟล์ fstab

ธง de

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

ฉันได้ซ่อมแซมกระบวนการบูตของ VM ที่มี initramfs (initrd.img และ วมลินุซ ไฟล์ใน /บูต) จากเคอร์เนลที่ไม่ได้ติดตั้งอีกต่อไป และยังคงพยายามบูตจากเคอร์เนลเหล่านั้น

ฉันใกล้จะเสร็จแล้ว แต่มันยังคงรีบูตเข้า ระบบ's โหมดฉุกเฉิน (ที่มันพูดว่า: )

คุณอยู่ในโหมดฉุกเฉิน หลังจากเข้าสู่ระบบ ให้พิมพ์ "journalctl -xb" เพื่อดูบันทึกของระบบ พิมพ์ "systemctl reboot" เพื่อรีบูต "systemctl default" หรือ "exit" เพื่อบูตเข้าสู่โหมดเริ่มต้น
ให้รหัสผ่าน root สำหรับการบำรุงรักษา
(หรือกด Control-D เพื่อดำเนินการต่อ):

ฉันบูตจากซีดีสด ติดตั้งพาร์ติชันที่เกี่ยวข้อง 3 พาร์ติชัน /mt, โครตไปที่ /mt:

เมานต์ /dev/sda3 /mnt
เมานต์ /dev/sda2 /mnt/boot
เมานต์ /dev/sda1 /mnt/boot/efi
สำหรับฉันใน proc dev dev/pts sys tmp run; ทำ mount --bind /$i /mnt/$i; เสร็จแล้ว
โครต /mnt

การซ่อมแซมและรีบูตของฉัน

ตอนนี้ของฉัน แทง ไม่ได้ติดตั้งพาร์ติชันของฉัน ฉันคิดว่ามันได้รับการกำหนดค่าอย่างถูกต้อง - UUID ถูกคัดลอกโดยตรงจาก บลคิด | grep /dev/sda. ฉันไม่คิดว่ามันขาดอะไร

ต่อไปนี้เป็นข้อผิดพลาดที่ฉันพบก่อนที่จะเข้าสู่โหมดฉุกเฉิน:

[FAILED] ไม่สามารถเมานต์ /บูต
ดู 'สถานะ systemctl boot.mount' สำหรับรายละเอียด
[DEPEND] การพึ่งพาล้มเหลวสำหรับระบบไฟล์ในเครื่อง
[DEPEND] การพึ่งพาล้มเหลวสำหรับการปิดระบบอัปเกรดแบบอัตโนมัติ
[DEPEND] การพึ่งพาล้มเหลวสำหรับ /boot/efi

แน่นอนว่าฉันมองไปที่ สถานะ systemctl boot.mountแต่มันทำงานอยู่ (สีเขียว) และบอกว่าโหลดแล้ว แม้ว่า my /บูต โฟลเดอร์ว่างเปล่าเว้นแต่ฉันจะเมานต์ด้วยตนเอง /dev/sda2.

ดูเหมือนแปลกมาก ทำไมจะ boot.mount บอกว่ากำลังโหลด /บูต แบ่งพาร์ติชันหากไม่ชัดเจน

Organic Marble avatar
us flag
ฉันสนุกกับการอ่านสิ่งนี้ แต่เพื่อให้เหมาะกับรูปแบบของไซต์นี้ จำเป็นต้องมีคำถาม & คำตอบ ส่วนใหญ่อ่านแบบนี้ตอบมากกว่า เป็นการดีที่จะตอบคำถามของคุณเอง พิจารณาการแก้ไขเพื่อให้เป็นคำถาม & คำตอบ
Artur Meinild avatar
vn flag
สวัสดีคุณอาจมีโชคมากขึ้นหากสามารถเจาะจงมากขึ้นเกี่ยวกับปัญหาที่คุณต้องการคำตอบ มีข้อความจำนวนมาก และเป็นเรื่องยากสำหรับฉันที่จะดูว่าส่วนใดเกี่ยวข้องกับปัญหาเฉพาะของคุณ
AveryFreeman avatar
de flag
สวัสดีใช่นั่นเป็นประเด็น ไม่ใช่ในตอนแรก แต่หลังจากนั้นฉันก็แก้ไขปัญหาในขณะที่ฉันถามคำถาม ฉันจะพยายามรวบรัดให้สั้นลง
Organic Marble avatar
us flag
ปิดการลงคะแนนถูกเพิกถอน
Score:2
ธง de

ดังนั้นฉันจึงพบปัญหาในขณะที่เขียนคำถาม อย่างที่คุณเห็นจากที่ฉันเขียนไว้ในตอนต้น มันเป็นกระบวนการที่ยาวนานมาก (ฉันทำงานเกี่ยวกับมันมาประมาณ 2 วันก่อนที่จะถึงจุดที่ต้องการขอความช่วยเหลือ)

หากคุณดูที่ส่วนท้ายสุดของ Q ฉันได้รับข้อความนี้จาก dmesg ระหว่างกระบวนการบู๊ต:

[FAILED] ไม่สามารถเมานต์ /บูต
ดู 'สถานะ systemctl boot.mount' สำหรับรายละเอียด

แน่นอนว่าฉันพยายาม สถานะ systemctl boot.mount เพื่อดูว่ามันพูดอะไร แต่มันบอกว่า boot.mount เปิดใช้งานอยู่ (สีเขียว) แม้ว่าจะโหลดและทำงานอย่างถูกต้องก็ตาม /บูต ว่างเปล่าเว้นแต่ฉันจะติดตั้งด้วยตนเอง /dev/sda2 (ซึ่งตรงกันข้ามกับที่ผมคาดไว้เลย)

ดังนั้นฉันจึงเริ่มคิดว่ามีบางอย่างผิดปกติกับบริการ ฉันปิดการใช้งาน boot.mount แม้ว่ามัน กล่าว มันทำงานอย่างถูกต้อง:

ปิดการใช้งาน systemctl -- ตอนนี้ boot.mount

ฉันพยายามเปิดใช้งานอีกครั้ง แต่มีข้อผิดพลาด:

เปิดใช้งาน systemctl -- ตอนนี้ boot.mount
ไม่สามารถเปิดใช้งานหน่วย: หน่วย /run/systemd/generator/boot.mount เป็นชั่วคราวหรือสร้างขึ้น

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

เมานต์ -a

และเห็นว่ามีข้อผิดพลาดใน /etc/fstab ไฟล์:

ข้อผิดพลาด: rw,relatime ไม่ใช่ระบบไฟล์ที่ถูกต้อง

(หรือสิ่งที่มีผลนั้น)

สิ่งสำคัญคือ ถ้าฉันไม่ลองติดตั้งระบบไฟล์ด้วยตนเอง ฉันจะไม่ได้รับคำติชมนั้นเลย ข้อความแสดงข้อผิดพลาดจาก เมานต์ -a หนึ่งได้รับเมื่อ แทง มีไวยากรณ์ที่ไม่เหมาะสมมีประโยชน์อย่างเหลือเชื่อ มีประโยชน์มากกว่า:

[FAILED] ไม่สามารถเมานต์ /บูต
ดู 'สถานะ systemctl boot.mount' สำหรับรายละเอียด

... แล้วเห็นหน่วย systemd "ทำงาน" สำหรับ boot.mount เมื่อไร /บูต ไม่ได้ติดตั้ง (แม้ว่าจะเป็น ทำ พาฉันไปถูกที่ในที่สุด)

ดังนั้นฉันจึงแก้ไข แทง และป้อนข้อมูลระบบไฟล์สำหรับไฟล์ /บูต พาร์ติชันที่เมานต์ไม่สำเร็จ จากนั้นฉันรันใหม่ เมานต์ -a (ซึ่งโดยหลักแล้วทำสิ่งเดียวกับ boot.mount) และได้รับการตอบรับเป็นอย่างดี

ตอนนี้ทั้งสองพาร์ติชั่นถูกติดตั้งอย่างถูกต้องหลังจากรีบูต และทุกอย่างก็เรียบร้อยดีในดินแดนแห่งพืชชนิดหนึ่งและแยมผิวส้ม

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

ปัญหาเดิมที่ฉันมีเมื่อสองวันก่อนคือระบบพยายามบูตจากเมล็ดที่ไม่ได้อยู่ในระบบอีกต่อไป ดังนั้น หลังจากบูทด้วย live CD ฉันจึงลบไฟล์ /บูต เนื้อหาของโฟลเดอร์ (โดยที่ไฟล์ เริ่มต้น ไฟล์อยู่).

ฉันคิดว่าฉันจะสร้างใหม่ initramfs โดยใช้ อัปเดต initramfs -c -k ทั้งหมด จากเคอร์เนลปัจจุบันที่ฉันได้ติดตั้ง แต่จากนั้นฉันได้เรียนรู้ว่าฉันไม่สามารถสร้าง การกำหนดค่า หรือ System.map ไฟล์ที่มี ดีเอ็มดี ตามลำพัง. สิ่งนี้กลายเป็นปัญหาเล็กน้อยกว่าที่ฉันต่อรอง

ฉันพบวิธีที่ง่ายที่สุดในการสร้างใหม่หรือรับไฟล์เหล่านี้ทั้งหมดคือ:

  1. ลบเนื้อหาทั้งหมดของ /บูต,
  2. ถอนการติดตั้งใด ๆ ลินุกซ์อิมเมจ, ลินุกซ์ส่วนหัว และ ลินุกซ์โมดูล ไฟล์ที่ฉันไม่ได้ตั้งใจจะใช้
  3. ลบไดเร็กทอรีที่เหลือทั้งหมดใน /usr/lib/โมดูลแล้ว
  4. ติดตั้งใหม่ ลินุกซ์อิมเมจ, ลินุกซ์โมดูล และ ลินุกซ์-ส่วนหัว ไฟล์ที่ฉันตั้งใจจะใช้ (สองเวอร์ชันทั่วไปล่าสุดล่าสุด)

หมายเหตุ: ติดตั้งไฟล์ทั้ง 3 ประเภทนี้อีกครั้ง ทั้งหมดในเวลาเดียวกัน เป็นวิธีที่ฉันได้รับ /boot/System.map และ /บูต/กำหนดค่า ไฟล์กลับ - ก่อนที่จะติดตั้งใหม่เท่านั้น ลินุกซ์อิมเมจ ไฟล์ไม่ได้ทำ เป็นไปได้ว่ารวมอยู่ด้วย โมดูล (โมดูลจะเข้าท่า) หรือ ส่วนหัว แพ็คเกจ แต่นี่คือสิ่งที่ได้ผลสำหรับฉัน

  1. จากนั้นฉันก็วิ่ง ปรับปรุงด้วง หลังจากติดตั้งไฟล์เหล่านั้นใหม่และยืนยัน /บูต ถูกบรรจุอย่างถูกต้อง
  2. ฉันยังวิ่ง ติดตั้ง bootctl และ /etc/kernel/postinst.d/zz-udpate-systemd-bootดังนั้นฉันจะมี systemd-บูต ติดตั้งเป็นทางเลือก

เมื่อถึงจุดหนึ่งหลังจากรีบูต ฉันต้องกำหนดค่าใหม่ system.target ถึง หลาย user.target แทน graphical.targetอาจเป็นเพราะมี โครตแก้ไขด้วยการเมานต์เหล่านั้นทั้งหมดในซีดีสดแบบกราฟิกเพื่อเรียกใช้ ซ่อมบูต โปรแกรมเมื่อสองสามวันก่อนซึ่งต้องใช้กราฟิก (และฉันเชื่อว่า /dev/pts /tmp และ /วิ่ง จำเป็นต้องได้รับ จอแสดงผล :0.0 ไปทำงาน):

systemctl ตั้งค่าเริ่มต้นหลาย user.target

ตกลงเกี่ยวกับเรื่องนี้ หวังว่านี่จะช่วยใครซักคน

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา