คุณจะเรียกใช้ update-grub ได้อย่างไร?


25

ฉันไปที่ไลฟ์ซีดีและเปิดใช้งานเทอร์มินัล จากนั้นฉันพิมพ์gksu nautilusเพื่อเข้าใช้งานไดเรกทอรีรากชั่วคราว เมื่อหน้าต่างผู้จัดการเปิดขึ้นฉันคลิกที่ระบบไฟล์และไปที่/etc/default/grubไดเรกทอรี จากนั้นผมก็ดับเบิลคลิกที่ไฟล์ด้วงที่จะทำให้การเปลี่ยนแปลงและTIMEOUTTIMEOUT_QUIET

ฉันบันทึกไฟล์หลังจากทำการเปลี่ยนแปลง จากนั้นฉันกลับไปที่โหมดเทอร์มินัลแล้วพิมพ์:

gksu update-grub

ข้อความแสดงข้อผิดพลาดที่ฉันได้รับคือ:

ไม่พบอุปกรณ์สำหรับ / (ติดตั้ง / dev หรือไม่)

ฉันไม่แน่ใจว่าจะทำอย่างไรในจุดนี้ ฉันupdate-grubจะเรียกใช้เพื่ออัปเดตการเปลี่ยนแปลงได้อย่างไร ขอบคุณล่วงหน้าสำหรับความช่วยเหลือของ. โปรดให้รายละเอียดและเจาะจงมากกับคำตอบของคุณเนื่องจากฉันยังใหม่กับสภาพแวดล้อม

คำตอบ:


24

เฟส 1 - หมายเหตุ: อย่าใช้ Live CD

  • ใน Ubuntu ของคุณเปิดเทอร์มินัล (กดCtrl+ Alt+ Tในเวลาเดียวกัน)
  • พิมพ์gedit admin:///etc/default/grub
    นี้จะทำงานแก้ไขข้อความGeditgeditถ้าคุณกำลังใช้อีกคนหนึ่งเพียงแค่พิมพ์ชื่อของมันแทน
  • ทำการเปลี่ยนแปลงตามที่คุณต้องการและบันทึก
  • ปิดประตู
    เทอร์มินัลของคุณยังคงเปิดอยู่
  • ในประเภทเทอร์มินัลsudo update-grubรอให้การอัปเดตเสร็จสิ้น
  • รีบูทคอมพิวเตอร์ของคุณ

ขั้นตอนที่ 2 - หลังจากที่คุณเข้าสู่ระบบของคุณ

  • เปิดเทอร์มินัลอีกครั้ง ( Ctrl+ Alt+ T)
  • พิมพ์ในอาคาร gksu gedit /etc/default/grub
  • หากต้องการดูเมนูด้วงในเวลาบูตให้
    แสดงความคิดเห็นหรือลบบรรทัดต่อไปนี้GRUB_HIDDEN_TIMEOUT=0
    • หากต้องการแสดงความคิดเห็นให้เพิ่ม#ที่จุดเริ่มต้นของบรรทัดนี้ผลลัพธ์จะเป็น#GRUB_HIDDEN_TIMEOUT=0
  • บันทึกไฟล์
  • อีกครั้งในการทำงานsudo update-grubของเครื่อง

หากเห็นเมนูด้วงขณะบู๊ตเป็นสิ่งเดียวที่คุณต้องการคุณควรยกเลิกการเปลี่ยนแปลงไฟล์ก่อนหน้านี้


ขอบคุณสำหรับคำตอบของคุณ ปัญหาดั้งเดิมที่ฉันพยายามแก้ไขคือฉันไม่สามารถเปิดเมนูด้วง ดังนั้นฉันคิดว่าฉันต้องใช้ Live CD เพื่อเข้าถึงไฟล์ config grub และทำการเปลี่ยนแปลงของฉัน ฉันอ่านว่าถ้าฉันเปลี่ยน TIMEOUT เป็น 10 และ TIMEOUT_QUIT เป็นจริงฉันจะสามารถเข้าถึงเมนู Grub ได้ เมื่อฉันบูตระบบฉันกดปุ่ม Shift ค้างไว้ ฉันเห็นคำว่า GRUB MENU ปรากฏขึ้นเพียงเสี้ยววินาที ดังนั้นหากไม่มีความสามารถในการใช้ Live CD เพื่อเข้าถึง Terminal ฉันอยู่ที่การสูญเสียเป็นวิธีการแก้ไขไฟล์ config GRUB ข้อเสนอแนะใด ๆ เกี่ยวกับวิธีการทำสิ่งนี้ให้สำเร็จ?
newbietoubu

ฉันคิดว่า jeroen ตอบคำถามนี้โดยตรง อาจเป็นไปได้ว่าคุณกำลังพยายามแก้ไขเมนูด้วงขณะที่ด้วง ???
pfeiffep

2
ดูท่อระบายน้ำที่ดีขึ้นของฉัน
jeroen

6

คุณได้รับข้อความนั้นเนื่องจาก Live CD ไม่ได้เมานต์ระบบไฟล์ที่เขียนได้ ใช้เพื่อทดลองใช้ Ubuntu หรือช่วยเหลือระบบที่เสียหายเท่านั้น การใช้sudo update-grubงานได้เฉพาะกับ Ubuntu รุ่นที่ติดตั้งซึ่งคุณสามารถเข้าถึงการเขียนไปยังไฟล์ GRUB พื้นฐาน (และบน Live CD คุณไม่ได้ทำ)


4
ข้อมูลที่ดี แต่ OP จะยังต้องการที่จะรู้ว่าวิธีการที่เขาสามารถทำให้เกิดการเปลี่ยนแปลงที่เขาต้องการในแล้ว/etc/default/grub update-grub
chaskes

2

คุณสามารถทำการอัพเดตด้วงจากไลฟ์ซีดีบน Ubuntu Distro ที่ติดตั้งไว้ (แม้ว่าฉันจะใช้งานได้กับ [debian-based?]] linux distro มันเป็น "ต้อง" (อาจมีวิธีอื่น แต่รู้วิธีนี้ฉันไม่ได้ทำ ไม่ต้องสนใจพวกเขาเลย) ถ้าคุณโคลนไดรฟ์และติดตั้งใหม่ในคอมพิวเตอร์แล้วฉันพูดถึงการโคลนนิ่งที่นี่อย่างกว้างขวางเพราะในแง่ที่ว่าขั้นตอนการอัพเดตด้วงเป็นส่วนย่อยของมันและวิธีการมีเหมือนกัน พื้นฐานในระหว่างเซสชันสดนอกจากนี้วิธีนี้ถูกค้นพบผ่านการค้นหาในบริบทของการโคลนคุณสามารถใช้สิ่งที่คุณต้องการจากมันหากคุณไม่ได้โคลนและกระบวนการของคุณจะง่ายขึ้น

ฉันควรผ่านการรับรองที่นี่; สำคัญอย่างยิ่งสำหรับการโคลนไม่ใช่สิ่งสำคัญสำหรับการอัพเดตด้วง: ฉันได้ทำสิ่งนี้กับระบบ BIOS เท่านั้น ฉันไม่ได้พยายามในระบบ UEFI ระบบ UEFI ต้องการพาร์ติชัน FAT สำหรับการโหลดการบู๊ตและฉันยังไม่ได้ทดสอบว่าพาร์ติชั่นนี้ควรมาพร้อมกับการขับขี่ในระหว่างขั้นตอนการคัดลอกโคลน ฉันคาดหวังว่าจะมีผลกับการติดตั้ง [bind-] ที่ต้องการซึ่งจะสังเคราะห์สภาพแวดล้อมของด้วงดั้งเดิมในระหว่างเซสชันสด ...

นี้เป็นรายละเอียดในหน้านี้: http://frugaltech.happystoic.com/ssdlinux ฉันใช้วิธีนี้หลายครั้งและคุณสามารถสลับฮาร์ดไดรฟ์ไปรอบ ๆ ad-infinitum โดยใช้มันได้ การสลับฮาร์ดไดรฟ์ทางกายภาพกลายเป็นเรื่องเล็กน้อยเช่นนี้มันเป็นการดึงดูดให้เป็นงานอดิเรกของตนเองและ / หรือพยายามแก้ไขคอมพิวเตอร์ที่ยุ่งเหยิงของคนอื่น

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

  1. Ctrl+ Alt+ Tสำหรับเทอร์มินัล Bash และป้อนเชลล์ superuser ( sudo -s) ในระหว่างเซสชันสด

  2. ติดตั้งพาร์ทิชันไดรฟ์แบบเต็ม (ซึ่งเป็น [หรือจะกลายเป็น] ไดเรกทอรีรากระบบไฟล์ลินุกซ์ถาวรของคุณ)

    2a หากการติดตั้งแบบเต็มมีอยู่แล้วในฮาร์ดไดรฟ์ของคุณให้ข้ามไปที่ (2) หากคุณกำลังโคลนนิ่ง: [ตามข้อสันนิษฐานที่ว่าคุณไม่ได้ทำการติดตั้งใหม่เนื่องจากนี่เป็นระบบอัตโนมัติทั้งหมดในกรณีนั้น] หากการติดตั้งแบบสมบูรณ์ของคุณไม่มีอยู่ในพาร์ติชันนี้ตอนนี้เป็นเวลาที่จะต้อง

    rsync -a /existing/linux/filesystem/live-mount-point/ /new/linux/filesystem/live-mount-point/ 
    

    [จุดเชื่อมต่อเหล่านี้ล้วนมีความเกี่ยวข้องกับสภาพแวดล้อมเซสชันสด - ใน Ubuntu พวกเขามักจะอยู่ในรูปแบบ "/ media / ubuntu / ???"] ลงบนไดรฟ์ใหม่ [พาร์ติชัน]

    2b ระบบปฏิบัติการอื่น ๆ การติดตั้งแบบเต็มสามารถจัดการได้ในลักษณะเดียวกันที่นี่ โดยทั่วไปฉันใช้ทรัพยากรที่ใช้ Windows เพื่อคัดลอกพาร์ติชัน windows จำนวนมากไปยังไดรฟ์ใหม่ล่วงหน้า แต่ฉันยังใช้ rsync และทำงานกับ Win XP (สมมติว่าคุณสนับสนุนรูปแบบพาร์ทิชันที่ถูกต้องเช่น ntfs) โดยทั่วไปแล้วเซสชันสื่อสดมาพร้อมการสนับสนุนรูปแบบอื่น) เพียงระวังเกี่ยวกับการสะกดของคุณและใช้การสืบค้นกลับ /ในไดเรกทอรีแหล่งหากคุณตั้งชื่อเป้าหมายอย่างสมบูรณ์

  3. ผูกติดสด/dev, /procและ/sysไดเรกทอรีไดเรกทอรีของตนใน [ติดตั้ง] ถาวรเต็มติดตั้งพาร์ทิชันที่คุณกำลังมองหาที่จะใช้ สคริปต์ที่มีรายละเอียดในลิงก์ด้านบนบรรลุผลอย่างงดงามด้วยคำสั่ง "สำหรับ" นอกจากนี้สคริปต์ที่ให้มาไม่จำเป็นต้องถูกเรียกใช้งานเป็นสคริปต์ สามารถป้อนได้จากพรอมต์ bash บรรทัดต่อบรรทัด

  4. chrootไปยังพาร์ติชันการติดตั้งแบบเต็มถาวร หลังจากทำ (3) และ (4) ตอนนี้ระบบจะ "อยู่ในความจริง" ใน "ระบบไฟล์สุดท้าย" ของคุณและ GRUB จะทำงานเป็นเนื้อเดียวกัน หากไม่มีขั้นตอนเหล่านี้ด้วงจะถือว่าระบบของคุณเป็นเพียงเซสชันสดและฉันไม่รู้ว่าจะทำอย่างไรในกรณีนั้น แต่พอแล้วก็ไม่ได้ผลลัพธ์ที่ต้องการตามที่กล่าวมาข้างต้นในหัวข้อนี้

  5. รัน grub-install บน/dev/sdX(ไดรฟ์ไม่ใช่จุดเมานท์) ที่สอดคล้องกับการติดตั้งแบบถาวร (หรือไดรฟ์ใดก็ตามที่จะโฮสต์ GRUB ถ้าระบบมัลติไดรฟ์ [มัลติบูต]) ความยืดหยุ่นที่นี่อาจขึ้นอยู่กับเหล้าองุ่นและ BIOS ของคุณ เท่าที่ฉันรู้ว่าการใช้ "grub-install" ไม่ได้ทำอะไรที่เป็นอันตรายหากไม่จำเป็นดังนั้นฉันจะทำเช่นนั้นเสมอหากฉันใช้วิธีการถ่ายทอดสดแบบนี้

  6. รัน update-grub และมันจะทำหน้าที่เสมือนว่าระบบการทำงานซ้อนอยู่ในพาร์ติชั่นถาวรในอนาคตค้นหาเมล็ดและ OS ที่สามารถบู๊ตได้ทั้งหมดที่คุณอาจมีอยู่

  7. หากคุณยังไม่ได้เปลี่ยนฮาร์ดไดรฟ์ให้ข้ามไปที่ (5) มิฉะนั้นแก้ไขหรือตรวจสอบ/new/linux/filesystem/live-mount-point/etc/fstabไฟล์ของคุณ เพื่อให้แน่ใจว่าโครงสร้างระบบไฟล์ที่ถูกต้องสำหรับสภาพแวดล้อม [ใหม่] ของคุณ หากคุณอยู่ในระดับนี้คุณจะรู้แล้วเกี่ยวกับการใช้ประโยชน์ blkid จากการเก็บเกี่ยว UUID สำหรับ fstab

    IMHO: คุณควรใช้ UUIDs ในรูปแบบ fstab (ไม่ใช่ "dev / sdXY") เนื่องจากอยู่ในขอบเขตของตัวเองมันมีภูมิคุ้มกันต่อการตั้งค่าฮาร์ดไดรฟ์ทางกายภาพนอกเหนือจากระดับที่ต้องใช้การอัปเดตค่า UUID ตามตัวอักษร (เช่นหาก ในอนาคตคุณจะติดตั้ง HDD เพิ่มเติมสำหรับ / home directory ของคุณ ฯลฯ ) มันเป็นวิธีพื้นฐานที่สุดแข็งแกร่งและไม่เปลี่ยนแปลง

  8. ออกจาก chroot ออกจาก supershell ออกจากทุบตีปิดตัวลงและเริ่มต้นระบบโดยไม่ต้องสื่อสด ตอนนี้คุณควรจะเป็นที่ที่คุณตั้งใจ

    หมายเหตุสำคัญ: อาร์กิวเมนต์สำหรับ mount และ chrootเป็นไดเรกทอรี (โดยทั่วไปแล้ว MOUNT POINTS เช่น/mnt/??หรือ/media/??) ที่สอดคล้องกับเซสชันสด ในกรณีส่วนใหญ่ไม่ใช่ทุกกรณีการติดตั้งแบบสมบูรณ์จะอยู่ในพาร์ติชันของตัวเองดังนั้นคำว่า "ไดเรกทอรี" และ "จุดเชื่อมต่อ" จึงเป็นคำพ้องความหมายที่นี่ อาร์กิวเมนต์สำหรับด้วงติดตั้งเป็นไดรฟ์กายภาพ (โดยทั่วไป/dev/sdXที่ "X" เป็นตัวอักษรที่สอดคล้องกับไดรฟ์ในระบบของคุณ, sda, sdb, ฯลฯ และมันไม่ควรขึ้นอยู่กับเซสชั่น)

คุณควรจะทำตอนนี้ ฉันได้โคลน Windows (XP และ 7) พร้อมกันในพีชคณิตต่าง ๆ ควบคู่ไปกับ Ubuntu และ Puppy โดยใช้วิธีนี้และมันก็ไม่ได้ล้มเหลว ฉันคิดว่าคุณสามารถใช้สื่อสดของ distro ที่แตกต่างกัน (ฉันได้ใช้รสชาติอูบุนตูที่แตกต่างกันและมิ้นท์สำหรับเรื่องนี้) ตราบใดที่พวกเขาให้รุ่นของ GRUB ที่คุณตั้งใจจะใช้ คุณสามารถย้ายพาร์ติชันรอบ ๆ สลับไดรฟ์รวมการติดตั้งระบบปฏิบัติการอื่น ๆ และโคลนไปยังหรือจาก SSD โดยใช้สิ่งนี้ ฉันสามารถพูดคุยกับมันว่าทำงานในเครื่องเดียวกันได้อย่างไร ฉันถือว่าไดรเวอร์ที่อาจจำเป็นสำหรับเครื่องอื่นอาจถูกข้ามไประหว่างการติดตั้งแบบเต็มก่อนหน้านี้ กฎง่ายๆของฉันคือการสลับไดรฟ์ในคอมพิวเตอร์ต้องใช้วิธีนี้ แต่การสลับคอมพิวเตอร์ด้วยไดรฟ์นั้นต้องการการติดตั้งแบบเต็ม [re-]

บางทีใครบางคนสามารถ debunk นี้ .. ?


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