ค้นหาเว็บไซต์

วิธีเรียกใช้การแจกจ่าย Linux จากฮาร์ดดิสก์


ลีนุกซ์ส่วนใหญ่มีไฟล์ ISO ที่ได้รับการออกแบบและสร้างมาให้ทำงานใน Live Mode โดยตรงจากสื่อที่สามารถบู๊ตได้ เช่น CD /DVD, แฟลช/USB การ์ด หรือแม้แต่โดยตรงจาก ฮาร์ดไดรฟ์ โดยใช้เมนู Linux Grub โดยไม่จำเป็นต้องเบิร์นลง ซีดี/ดีวีดี หรือสร้าง USB ที่สามารถบู๊ตได้โดยใช้เครื่องมือสร้าง USB

บทช่วยสอนนี้จะเน้นที่การนำเสนอวิธีที่คุณสามารถเรียกใช้การกระจาย Linux ISO โดยตรงจากฮาร์ดดิสก์ของคุณโดยการแก้ไข Ubuntu 22.04 GRUB2 (ใช้ได้กับ Ubuntu 20.04 หรือก่อนหน้า) ซึ่งเป็นเมนูบูตเริ่มต้นในลีนุกซ์รุ่นใหม่ล่าสุด

การเรียกใช้ระบบปฏิบัติการจากฮาร์ดดิสก์ช่วยให้ใช้งาน Linux ได้เร็วขึ้น และยังมีผลกระทบอย่างมากต่อความเป็นส่วนตัว เนื่องจากการตั้งค่าและเซสชันสดทั้งหมดของคุณจะไม่ได้รับการเก็บรักษาไว้ตามค่าเริ่มต้น

การแจกแจงที่นำเสนอในหัวข้อนี้คือ Rocky Linux, Fedora, Kali Linux, Arch Linux และ Gentoo Live DVD

ความต้องการ

Ubuntu 22.04 ที่ติดตั้งใหม่ (หรือการกระจาย Linux อื่นๆ ที่มีตัวโหลดบูต GRUB2) อยู่บนฮาร์ดไดรฟ์ของระบบของคุณ

ขั้นตอนที่ 1: ดาวน์โหลดไฟล์ Linux Live ISO

1. หากต้องการบูตและรันการแจกจ่าย Linux โดยไม่ต้องติดตั้งลงในฮาร์ดไดรฟ์ ตรวจสอบให้แน่ใจว่าได้ดาวน์โหลด “Live CD/DVD” ของอิมเมจ ISO ของ Linux แต่ละรายการ

  • ดาวน์โหลดอิมเมจ ISO ของ Rocky Linux Live
  • ดาวน์โหลดอิมเมจ ISO ของ Fedora Live
  • ดาวน์โหลดอิมเมจ ISO ของ Kali Linux Live
  • ดาวน์โหลดอิมเมจ ISO ของ Arch Linux Live
  • ดาวน์โหลดอิมเมจ ISO Live Gentoo Linux

ขั้นตอนที่ 2: เพิ่มอิมเมจ ISO ลงในไดเร็กทอรี

2. หลังจากที่คุณดาวน์โหลด ภาพ Linux ISO Live DVD ที่คุณชื่นชอบแล้ว ให้เปิด Ubuntu Nautilus ด้วยสิทธิ์รูทโดยใช้คำสั่ง 'sudo nautilus' จากเทอร์มินัลและสร้างไดเร็กทอรีชื่อ live ในเส้นทางรูทของระบบและย้ายไฟล์ ISO ไปยังโฟลเดอร์นี้

sudo nautilus

ขั้นตอนที่ 3: ค้นหาพาร์ติชันดิสก์ UUID

3. หากต้องการดำเนินการต่อต่อไป จะต้องจัดเตรียม Grub2 ด้วยพาร์ติชันดิสก์ของเรา UUIDUniversally Unique Identifier (พาร์ติชัน ซึ่งมีไฟล์ ISO อยู่)

หากต้องการรับพาร์ติชัน UUID ให้รันคำสั่ง blkid ต่อไปนี้

sudo blkid

สำหรับพาร์ติชันหรือฮาร์ดดิสก์ที่ติดตั้งโดยอัตโนมัติในการบูตระบบให้รันคำสั่ง cat ต่อไปนี้

sudo cat /etc/fstab   

4. อีกวิธีหนึ่งในการรับ UUID พาร์ติชันของคุณคือการเปิดและแสดงภาพเนื้อหาไฟล์ grub.cfg ที่อยู่ในเส้นทาง /boot/grub/ และ ค้นหา --fs-uuid สตริง (ในกรณีที่คุณไม่มีพาร์ติชันแยกสำหรับ /boot)

ขั้นตอนที่ 4: เพิ่มอิมเมจ ISO ลงในเมนู GRUB2

5. หลังจากที่คุณได้รับโค้ด UUID ของพาร์ติชันรากแล้ว ให้ย้ายไปยังไดเร็กทอรี /etc/grub.d/ ให้เปิดไฟล์ 40_custom b> ไฟล์สำหรับแก้ไขและเพิ่มบรรทัดต่อไปนี้ที่ด้านล่างของไฟล์นี้

menuentry 'Rocky Linux Live' --class os --class gnu-linux --class gnu --class os --group group_main {
                set isofile="/live/Rocky-9.3-x86_64-minimal.iso"

         insmod ext2
         insmod loopback
         insmod iso9660      
                set root=(hd0,3)
                search --no-floppy --fs-uuid --set=root 51567f31-1236-49b4-8c4a-bf8cb84856e0
                linux /live/Rocky-9.3-x86_64-minimal/isolinux/vmlinuz noconfig=sudo username=root hostname=tecmint
                initrd /live/Rocky-9.3-x86_64-minimal/isolinux/initrd.img
}

คำสั่งต่อไปนี้แสดงถึง:

  • set isofile=ตัวแปรที่เก็บตำแหน่งพาธของระบบ ISO
  • (hd0,msdos1)=พาร์ติชันแรกจากฮาร์ดดิสก์ตัวแรก (ในดิสก์ Linux จะมีหมายเลขเริ่มต้นด้วย 0) – เช่นเดียวกับ /dev/sda3
  • –fs-uuid –set=root 51567f31-1236-49b4-8c4a-bf8cb84856e0=พาร์ติชันแรกจากโค้ด UUID ฮาร์ดดิสก์ตัวแรก
  • linux และ initrd=พารามิเตอร์การบูทเคอร์เนลแบบกำหนดเอง – จะแตกต่างกันไปขึ้นอยู่กับการกระจาย Linux ทุกครั้ง

6. หลังจากที่คุณแก้ไขไฟล์เสร็จแล้ว update-grub เพื่อเพิ่ม ISO ใหม่ (ในกรณีนี้คือ Rocky Linux) ลงในเมนู Grub2 ของคุณ

sudo update-grub

หากต้องการยืนยันให้เปิด /boot/grub/grub.cfg และค้นหารายการ ISO ของคุณที่ด้านล่าง

ขั้นตอนที่ 5: เรียกใช้ Rocky Linux ISO จากฮาร์ดดิสก์

7. หากต้องการรัน Rocky Linux Live ISO ให้รีบูทคอมพิวเตอร์ของคุณ เลือกรายการ Rocky Linux จากเมนู GRUB จากนั้นกด Enter< /ข> สำคัญ

ในทำนองเดียวกัน คุณสามารถเพิ่มอิมเมจการกระจาย Linux Live ISO อื่นๆ ลงในเมนู GRUB2 ดังที่แสดง เปิดและแก้ไขไฟล์ด้วง /etc/grub.d/40_custom อีกครั้ง และเพิ่มรายการต่อไปนี้

สำหรับ Fedora Live DVD

menuentry 'Fedora Live' --class os --class gnu-linux --class gnu --class os --group group_main {
                set isofile="/live/Fedora-Workstation-Live-x86_64-39-1.5.iso"

         insmod ext2
         insmod loopback
         insmod iso9660      
                loopback loop (hd0,msdos1)$isofile      
                search --no-floppy --fs-uuid --set=root 3b87d941-8ee7-4312-98fc-1f26828d62ab                            
                linux (loop)/isolinux/vmlinuz boot=live fromiso=/dev/sda1/$isofile noconfig=sudo username=root hostname=fedora
                initrd (loop)/isolinux/initrd.img
}

สำหรับดีวีดีสด Kali Linux

menuentry 'Kali Linux Live' --class os --class gnu-linux --class gnu --class os --group group_main {
                set isofile="/live/kali-linux-2023.3-installer-amd64.iso"

         insmod ext2
         insmod loopback
         insmod iso9660      
                loopback loop (hd0,msdos1)$isofile      
                search --no-floppy --fs-uuid --set=root 3b87d941-8ee7-4312-98fc-1f26828d62ab                            
                linux (loop)/live/vmlinuz boot=live fromiso=/dev/sda1/$isofile noconfig=sudo username=root hostname=kalilinux
                initrd (loop)/live/initrd.img
}

สำหรับดีวีดี Gentoo Live

menuentry 'Gentoo Linux Live' --class os --class gnu-linux --class gnu --class os --group group_main {
                set isofile="/live/archlinux-2023.11.01-x86_64.iso"

         insmod ext2
         insmod loopback
         insmod iso9660      
                loopback loop (hd0,msdos1)$isofile      
                search --no-floppy --fs-uuid --set=root 3b87d941-8ee7-4312-98fc-1f26828d62ab                            
                linux (loop)/live/vmlinuz boot=live fromiso=/dev/sda1/$isofile noconfig=sudo username=root hostname=gentoo
                initrd (loop)/live/initrd.img
}

8. จากนั้นอัปเดตเมนู GRUB ของคุณอีกครั้ง รีบูทคอมพิวเตอร์ของคุณ และเลือก ISO การกระจาย Linux ที่คุณต้องการจากเมนู GRUB

sudo update-grub

9. หากคุณมีพื้นที่ว่างไม่เพียงพอบนพาร์ติชั่น root ของคุณ หากต้องการโฮสต์ไฟล์ ISO ของ Linux อื่นๆ คุณสามารถเพิ่มฮาร์ดดิสก์ตัวอื่นและย้ายไฟล์ ISO การกระจาย Linux ทั้งหมดของคุณ ที่นั่น. หลังจากที่คุณสร้างพาร์ติชันและเพิ่มระบบไฟล์แล้ว ให้เมาท์พาร์ติชันนั้นบนเส้นทาง /mnt เพื่อให้พร้อมใช้งาน

sudo mount /dev/sdb1 /mnt

10. จากนั้นย้าย ISO ทั้งหมดบนฮาร์ดดิสก์ใหม่ และคว้า UUID โดยใช้คำสั่ง blkid

sudo blkid

11. เปิดและแก้ไขไฟล์ grub /etc/grub.d/40_custom อีกครั้ง และเพิ่มอิมเมจการกระจาย Linux Live ISO อื่นๆ ลงในเมนู GRUB2 โดยใช้ ขั้นตอนเดียวกัน แต่ให้ความสนใจกับพารามิเตอร์การบูต Live Kernel ทุกตัวที่สามารถตรวจสอบได้โดยการติดตั้งอิมเมจ ISO โดยใช้ตัวเลือก mount -o loop หรือปรึกษาหน้า Wiki การแจกจ่าย