ทำไมจึงไม่แนะนำให้ใส่พาร์ติชันสำหรับเริ่มระบบใน LVM


12

ฉันอ่านบางที่ไม่แนะนำให้ใส่พาร์ติชันสำหรับบูตบนพาร์ทิชันที่ใช้ LVM แต่ฉันจะทำมันต่อไป ปัญหาเดียวที่ฉันเจอคือบางครั้งเมื่อฉันติดตั้งดิสทริบิวเตอร์ลินุกซ์ใหม่และวางมันไว้ในพาร์ทิชันสำหรับบูตบน LVM, ด้วงไม่สามารถตรวจจับได้ grub-mkconfigคำสั่งมักจะทำผิดพลาดในการสร้างgrub.cfgไฟล์ แต่ถ้านี่เป็นปัญหาเดียวของพาร์ติชั่นสำหรับบู๊ต lvm ฉันคิดว่ามันโอเค เพราะฉันรู้วิธีการแก้ไขเพียงแค่ให้ที่อยู่ที่เหมาะสมกับพาร์ทิชันบูตที่ตั้งใจไว้ในการบูตจากนั้นทุกอย่างก็เรียบร้อย

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

คำตอบ:


13

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

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

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

หากคุณอยู่ในตำแหน่งนี้คุณไม่ต้องการที่จะ 'เหลวไหล' LVM ของคุณเข้ามาในชีวิตเพื่อให้สามารถอ่านได้ :)


1
หรือเพียงแค่ว่า GRUB รุ่นเก่าไม่เข้าใจ LVM
tgharold

จุดดียังพูดถึงว่า lvm เป็นการตั้งค่าที่ซับซ้อนซึ่งอาจเกี่ยวข้องกับดิสก์หลายตัว หากบูตโหลดเดอร์ของคุณขึ้นอยู่กับ LVM ดังนั้นคุณไม่สามารถบูตไปที่โหมดผู้ใช้เดี่ยวเพื่อแก้ไขปัญหากับ LVM (รวมปัญหาซ้ำ ๆ เช่นดิสก์ที่ล้มเหลว)
asdmin

3

สำหรับฉันถ้าคุณบอกว่าด้วงไม่สามารถตรวจพบ/bootระบบไฟล์LVM ของคุณและ grub-mkconfigมักจะทำผิดพลาดในการสร้างgrub.cfgซึ่งดูเหมือนว่ามีเหตุผลเพียงพอที่จะหลีกเลี่ยงการกำหนดค่านี้และเปลี่ยนไปใช้สิ่งที่ด้วงสนับสนุนได้ดีกว่า เมื่อคุณพูดว่า "ให้ที่อยู่ที่เหมาะสมกับพาร์ติชันสำหรับบูตที่ตั้งใจไว้" ฉันไม่รู้ว่าคุณหมายถึงอะไรโดย "ที่อยู่" หรือสิ่งที่คุณกำลังทำเพื่อแก้ไขปัญหา แต่จริงๆแล้วมันฟังดูเหมือนแฮ็คที่น่ากลัวและบอบบาง

ในฐานะคุณสมบัติพื้นฐานและจำเป็นจริง bootloader สามารถเข้าถึงระบบไฟล์อย่างง่ายบนพาร์ติชั่นดิสก์ที่เรียบง่ายและโหลดในระยะต่อไปจากที่นั่น นั่นคือทั้งหมดที่มันต้องทำ คุณสมบัติเพิ่มเติมใน bootloader เช่นการแยกวิเคราะห์คอนเทนเนอร์เช่น LVM และการเล่นกลดิสก์หลายดิสก์ในสภาพแวดล้อมก่อนบูตเพียงหมายถึงคุณสมบัติเพิ่มเติม Linux (เคอร์เนล) ที่ต้องทำซ้ำในด้วง (รหัสมากขึ้นข้อบกพร่องมากขึ้น) แต่จะไม่แน่นอนเลยทีเดียว ทำงานในลักษณะเดียวกันทั้งในสภาพแวดล้อม (ความสับสนมากขึ้น) และความซับซ้อนโดยรวมที่มากขึ้น สำหรับ bootstrapping ยิ่งง่ายยิ่งดี


สิ่งที่ฉันหมายถึงตามที่อยู่คือเส้นทางอุปกรณ์ ใน kali linux grub-mkconfigทำผิดพลาดที่จะให้รูทพา ธ/dev/dm-0เพราะมันไม่ขัดขืน ดังนั้นฉันจึงเปลี่ยนเป็นเส้นทางที่เหมาะสมซึ่งอยู่/dev/mapper/lvm-kali--bootใน mycase
Mas Bagol

ฉันเห็น. มันแตกต่างกัน นั่นคือเส้นทางของระบบไฟล์รูท (ซึ่งได้รับการเพิ่มในบรรทัดคำสั่งเคอร์เนลเป็นroot=<path>) และไม่มีส่วนเกี่ยวข้องกับตำแหน่งที่/bootอยู่ grub-mkconfigไม่ควรผิดอย่างแน่นอน grub-probe --target=device /มันควรจะสอดคล้องกับการส่งออกของ
Celada

ขออภัยผมหมายถึงไม่ได้/dev/mapper/lvm-kali--root bootTypo
Mas Bagol

โอ้ฉันไม่ได้สังเกตเห็นการพิมพ์ผิด ฉันอ่าน/dev/mapper/lvm-kali--rootเพื่อเริ่มต้นด้วย!
Celada

คุณสามารถใช้ตัวเลือกที่ใช้กันทั่วไปน้อยกว่า (นอก fips = 1 โลกอย่างน้อย) ตัวเลือก boot = / dev / mapper / $ UUID หรือ $ lvm-name
linuxdev2013

1

ฉันใช้ไดเรกทอรี“ / boot” ในระบบไฟล์ LVM“ /” เป็นเวลาหลายปีใน Fedora และไม่เคยมีปัญหามาก่อน

คุณเพียงแค่ต้องระมัดระวังในการสร้างดิสก์แบบฟิสิคัลเดียวโดยที่“ /” ใช้ดิสก์เดี่ยวในกลุ่มวอลุ่มของคุณ ฉันมีกลุ่มวอลุ่ม "vgmain" สำหรับไดรฟ์ทางกายภาพนี้และ "vgdata" สำหรับส่วนที่เหลือทั้งหมด สิ่งนี้สำคัญถ้าคุณต้องนำไดรฟ์ของคุณไปยังคอมพิวเตอร์เครื่องอื่นในสถานการณ์การแก้ไขปัญหา LVM จะไม่ทำงานหากมันประกอบด้วยฟิสิคัลไดรฟ์หลายตัว แต่มันจะถ้ามันประกอบด้วยเพียงหนึ่ง

แต่ฉันไม่เคยผ่านสถานการณ์การแก้ไขปัญหานี้

การติดตั้ง Fedora ล่าสุดจะไม่ยอมให้คุณทำโดยอัตโนมัติ คุณจะต้องใส่” / boot” ในพาร์ติชั่นปกติระหว่างการติดตั้งจากนั้นทำการบู๊ตตามปกติแล้วย้ายเนื้อหาด้วยตนเองไปยังระบบไฟล์ LVM“ /” ตรวจสอบให้แน่ใจว่าคุณจัดระเบียบสิ่งต่าง ๆ ให้ดูเหมือน“ / boot” เป็นไดเรกทอรีธรรมดาภายใต้ LVM“ /” และ“ / boot2” เป็นพาร์ติชันสำหรับเริ่มระบบเก่าจากนั้นสร้าง“ grub install / dev / sda” หรือสิ่งที่คล้ายกัน รีบูตแล้วลบระบบไฟล์“ / boot2” และรวมพาร์ติชันกลับไปที่ LVM เพื่อให้สามารถใช้งานได้

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