บูต ISO image จาก hard disk ด้วย Unetbootin


การบูตจากไฟล์ ISO image ที่เก็บใน hard disk เป็นเรื่องที่ GRUB ทำได้มาตั้งนานแล้ว GRUB2 ก็ทำได้ และสะดวกกว่าด้วย เพียงแต่ขั้นตอนจะยุ่งยากสักหน่อยสำหรับคนที่ไม่เข้าใจ แต่ OMG!Ubuntu! ไปเจอวิธีการตั้งค่า GRUB2 แบบง่ายๆ โดยที่ไม่ต้องพิึ่ง command-line เลย ขอเพียงแต่มี Unetbootin (ตัวสร้าง LiveUSB สารพัดประโยชน์) เท่านั้น

วิธ๊มีตามนี้

  1. ก่อนอื่นก็ต้องลง Unetbootin ก่อน ถ้ายังไม่มีก็ลงซะ จะใช้ apt-get, Synaptic, หรือ Ubuntu Software Center ก็ตามสะดวก
  2. ตรงช่อง “Diskimage” เลือกเป็น ISO แล้วก็เลือก path ไปยังไฟล์ ISO ของเรา, ตรงช่อง “Type” เลือกเป็น “Hard Disk” และตรงช่อง “Drive” ใส่ “/” (ไม่ต้องมีเครื่องหมายคำพูด) แล้วกด OK
  3. รอไปเรื่อยๆ พอ Unetbootin ทำงานเสร็จเรียบร้อยให้รีสตาร์ตเครื่อง ตรง GRUB2 menu น่าจะมีตัวเลือก “Unetbootin” ปรากฏขึ้นมาแล้ว ถ้า GRUB2 ไม่ยอมขึ้น menu มาให้เลือก กด SHIFT ค้างไว้

หากอยากถอนเอาตัวบูต ISO ออก ก็ให้รัน Unetbootin อีกรอบ คราวนี้จะมีหน้าต่างเตือนว่า “Unetbootin is currently installed. Remove the existing version?” ให้กด OK โลด มันจะลบตัวเลือกบูตเข้า ISO ออกจาก GRUB2 Menu ให้ (ไม่ต้องกลัว มันไม่ได้ลบ Unetbootin ออกจากเครื่อง)

แต่ถ้าใครเป็นพวกมาโซคิสต์ ใช้โปรแกรมช่วยแบบ GUI แล้วเกิดอาการแพ้ ก็ลุยแก้ GRUB2 ได้เลยด้วยคำสั่ง (แนะนำโดย Dan Sonny Radu จากความเห็นในเว็บ OMG!Ubuntu!)

sudo gedit /etc/grub.d/40_custom

จากนั้นเพิ่มข้อความข้างล่างนี้เข้าไป

menuentry "Boot Ubuntu 10.10 Live ISO" {
loopback loop (hd0,1)/home/ubuntu-10.10-desktop-i386.iso
linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/home/ubuntu-10.10-desktop-i386.iso
initrd (loop)/casper/initrd.lz
}

ตรง hd0,1 นี่ต้องหาเอาเองนะครับว่า partition ที่คุณเก็บไฟล์ ISO มันมีชื่อว่าอะไรใน GRUB ผมก็รู้คร่าวๆ ว่าเลขตัวแรกหมายถึง hard disk นับจากลูกที่ 0,… ส่วนเลขตัวที่สองหมายถึง ลำดับพาร์ติชันใน hard disk ลูกนั้น นับจาก 0,… เหมือนกัน ใน GRUB2 การนับพาร์ติชันเปลี่ยนเป็นนับจากเลข 1, ไปเรื่อยๆ… (ใน GRUB legacy จะนับจาก 0, ….) เช่น hd0,1 หมายถึง hard disk ลูกแรก พาร์ติชันที่หนึ่ง (หรือ hard disk ลูกแรก พาร์ติชันที่สอง ใน GRUB legacy)

พอเพิ่มเข้าไปเรียบร้อยก็ให้ save ซะ แล้วรันคำสั่งอัพเดต GRUB2

sudo update-grub2

เท่านี้ก็น่าจะเรียบร้อย รีสตาร์ตอีกครั้งก็น่าจะมีเมนูให้เลือกบูตเข้า ISO (ถ้าไม่มีอะไรผิดพลาดโดยเฉพาะตรง hdX,X)

แต่ยังไง ผมก็คงใช้ Unetbootin ดีกว่า 😛

ที่มา http://www.webupd8.org/2011/02/how-to-boot-iso-with-grub2-easy-way.html

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: