rootfs # คืออะไรและคุณสามารถทำอะไรได้บ้าง


18

ฉันถูกดร็อปถึง[rootfs /]#พรอมต์หลายครั้งเมื่อการบูทเครื่องดิสล้มเหลว ฉันมักจะพบว่าฉันไม่สามารถแก้ไขปัญหาได้ด้วยคำสั่งที่ จำกัด ดังนั้นฉันจะใช้ Live CD สำรองที่ฉันวางไว้

แต่rootfsพรอมต์คืออะไร? ทำไมมันมีคำสั่งที่ จำกัด ? และฉันสามารถใช้มันเพื่อบู๊ตระบบหลังจากที่ปัญหาได้รับการแก้ไขแล้วหรือไม่?


คำตอบ:


10

Rootfsเป็นตัวอย่างพิเศษramfs(หรือtmpfsถ้าที่เปิดใช้งาน) 2.6 systemsซึ่งอยู่เสมอในปัจจุบัน คุณไม่สามารถถอนการติดตั้ง rootfs

ป้อนคำอธิบายรูปภาพที่นี่

rootfsในช่วงเวลาเริ่มต้นเคอร์เนลมีระบบไฟล์ที่น้อยที่สุดอย่างการลงทะเบียนที่เรียกว่า รหัสที่ใช้ระบบไฟล์นี้สามารถพบได้ในfs/ramfs/inode.cซึ่งก็เกิดขึ้นที่จะมีรหัสสำหรับramfsระบบไฟล์ โดยพื้นฐานแล้ว rootfs จะเหมือนกับramfsยกเว้นยกเว้นค่ากำหนดของMS_NOUSERแฟล็ก นี้ถูกตีความโดยกิจวัตรประจำวันgraft_treeในfs/namespace.cและฉันคิดว่าจะป้องกันไม่ให้กระบวนการ userland rootfsทำม้าของตัวเอง

รูทีนinit_mount_tree(พบใน fs / namespace.c) ถูกเรียกเมื่อเวลาเริ่มต้นระบบเพื่อเมานต์อินสแตนซ์ของ rootfs และทำให้รูทสเปซรูทของกระบวนการปัจจุบัน ( จำไว้ว่าภายใต้ Linux กระบวนการที่ต่างกันสามารถมีเนมสเปซระบบไฟล์ต่างกัน )

มันมีแอพพลิเคชั่นการตั้งค่าอุปกรณ์ข้อมูลและอื่น ๆ ทั้งหมด หากไม่มีระบบไฟล์รูทระบบ Linux ของคุณจะไม่สามารถทำงานได้

ดู: https://www.kernel.org/doc/Documentation/filesystems/ramfs-rootfs-initramfs.txt


นั่นเป็นคำตอบที่ดีในการอธิบายระบบไฟล์ rootfs และอธิบายคำสั่งที่ จำกัด ที่มีอยู่ แต่ไม่มีอะไรเกี่ยวกับพรอมต์และสิ่งที่คุณสามารถทำได้
Wolfizen

@ wolfo9999: ฉันปรับปรุงคำตอบเพื่ออธิบายให้ดีขึ้น
stderr

คุณแน่ใจหรือว่า :) คำตอบที่ยอดเยี่ยมตอนนี้ที่ฉันสามารถมองเห็นได้ +50 เมื่อฉันสามารถให้รางวัลได้ บอกว่าฉันต้องรอ 17 ชั่วโมง แม้ว่าจะมีเวลามากพอที่คนอื่นจะได้คำตอบที่ดีกว่าถ้าพวกเขาทำได้
Wolfizen

@ TiagoƇ คำตอบที่ยอดเยี่ยมจริงๆที่ช่วยฉันได้มากเช่นกัน! ฉันขอถามได้ไหมว่าคำอธิบายกราฟิกที่ดีนี้มาจากไหน? ลิงค์แหล่งที่มาจะดี;)
erch

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