นับวันไดร์ฟซีดีหรือดีวีดีที่ติดมากับเครื่องจะหายากขึ้น โดยเฉพาะโน้ตบุ๊คที่มีขนาดเล็ก ที่ผู้ผลิตจะตัดออกไปเพื่อประหยัดพื้นที่ เพื่อให้ตัวเครื่องขนาดบางลง ทำให้หากเราต้องการสร้างแผ่นติดตั้งระบบปฎิบัติการเช่นลีนุกซ์จากไฟล์ iso ที่ดาวน์โหลดมา ก็ต้องไปหาซื้อตัวไดร์ฟดีวีดี external มาต่อเพิ่มเติม
เพื่อเป็นการทดแทน ปัจจุบันเครื่องรุ่นใหม่หลายรุ่นหลายยี่ห้อ ตั้งแต่โน้ตบุ๊ก เครื่อง PC จนถึงระดับเซิร์ฟเวอร์ จะรองรับการบู๊ตด้วยดิสก์ USB เพื่อใช้ในการติดตั้งระบบปฏิบัติการแทน
ในที่นี้ลองมาดูการใช้คำสั่งบนเครื่อง Mac OS X เพื่อสร้างดิสก์ USB เพื่อบู๊ตติดตั้ง CentOS 7 จากไฟล์ iso ที่ดาวน์โหลดมา
ตัวอย่างไฟล์ iso เพื่อติดตั้ง CentOS 7
[alice@MacBook Desktop]$ ls -l total 16837984 -rw-r-----@ 1 alice staff 4310695936 Aug 21 17:17 CentOS-7-x86_64-DVD-1503-01.iso
ขั้นแรกใช้คำสั่ง hdiutil แปลงไฟล์ iso ให้อยู่ในรูปแบบ UDRW (UDIF read/write image)
[alice@MacBook Desktop]$ hdiutil convert -format UDRW -o target.img CentOS-7.1-x86_64-DVD-1503-01.iso
Reading Master Boot Record (MBR : 0)…
Reading CentOS 7 x86_64 (Apple_ISO : 1)…
Reading (Type EF : 2)…
Reading CentOS 7 x86_64 (Apple_ISO : 3)…
..........................................................................................................................
Elapsed Time: 16.998s
Speed: 241.8Mbytes/sec
Savings: 0.0%
created: /Users/alice/Desktop/target.img.dmg
ตัวอย่างไฟล์ที่ได้
[alice@MacBook Desktop]$ ls -l target.img.dmg -rw-r--r-- 1 alice staff 4310345728 Sep 11 12:00 target.img.dmg
คำเตือน คำสั่ง dd ที่จะรันต่อไปนี้ จะทำการลบข้อมูลทั้งหมดในดิสก์ USB แล้วเขียนไฟล์ที่ใช้บู๊ตทับลงไป ซึ่งจะทำให้ข้อมูลเดิมที่อยู่ในดิสก์ USB หายไปทั้งหมด
เสียบดิสก์ USB ที่ต้องการสร้าง
ใช้คำสั่ง diskutil list เพื่อดูชื่อที่ใช้อ้างอิงดิสก์ USB
[alice@MacBook Desktop]$ diskutil list /dev/disk0 #: TYPE NAME SIZE IDENTIFIER 0: GUID_partition_scheme *250.1 GB disk0 1: EFI EFI 209.7 MB disk0s1 2: Apple_CoreStorage 249.4 GB disk0s2 3: Apple_Boot Recovery HD 650.0 MB disk0s3 /dev/disk1 #: TYPE NAME SIZE IDENTIFIER 0: Apple_HFS Macintosh HD *249.1 GB disk1 Logical Volume on disk0s2 /dev/disk2 #: TYPE NAME SIZE IDENTIFIER 0: FDisk_partition_scheme *31.5 GB disk2 1: Windows_NTFS MyUSB-32GB 31.5 GB disk2s1
จากตัวอย่างข้างบน ชื่อที่ใช้อ้างอิงดิสก์ USB คือ /dev/disk2
คำแนะนำ หากไม่แน่ใจชื่อดิสก์ อาจลองดึงดิสก์ USB ออก แล้วเปรียบเทียบผลลัพธ์ที่แสดง
ใช้คำสั่ง diskutil unmountDisk เพื่อให้แน่ใจว่าดิสก์ USB ไม่มีการใช้งานอยู่
[alice@MacBook Desktop]$ diskutil unmountDisk /dev/disk2 Unmount of all volumes on disk2 was successful
คำเตือน ระบุชื่ออ้างอิงดิสก์ให้ถูกต้อง ไม่เช่นนั้นอาจเป็นการลบข้อมูลบนดิสก์ที่ไม่ต้องการได้
ใช้คำสั่ง dd เพื่อเขียนไฟล์ UDRW ที่ถูกแปลงมาจากไฟล์ iso ลงบนดิสก์ USB
[alice@MacBook Desktop]$ dd if=target.img.dmg of=/dev/disk2 bs=1m
dd: /dev/disk2: Permission denied
การใช้คำสั่ง dd เพื่อเขียนข้อมูลลงดิสก์โดยตรงแบบนี้ต้องใช้ sudo เพื่อใช้สิทธิ์ superuser
[alice@MacBook Desktop]$ sudo dd if=target.img.dmg of=/dev/disk2 bs=1m Password: 4110+1 records in 4110+1 records out 4310345728 bytes transferred in 1945.272581 secs (2215806 bytes/sec)
คำสั่งนี้จะใช้เวลาค่อนข้างนาน เครื่องของผม (MacBook ปี 2014) ใช้เวลาประมาณครึ่งชั่วโมง
หมายเหตุ หลังจากรันคำสั่ง dd เสร็จแล้ว จะมีข้อความ “The disk you inserted was not readable by this computer” แสดงขึ้นมา ให้เลือก Eject
เมื่อเสร็จเรียบร้อยแล้ว ลองนำไปใช้บู๊ตกันในเครื่องที่ต้องการ อย่าลืมตั้งค่าใน BIOS ให้เครื่องบู๊ตจากไดร์ฟ USB
นอกจาก CentOS แล้ว ยังสามารถใช้วิธีการเดียวกันนี้ เพื่อใช้สร้างดิสก์ USB เพื่อใช้บู๊ตติดตั้ง Ubuntu ได้ด้วย
ตัวอย่างการสร้างดิสก์ USB เพื่อใช้บู๊ตติดตั้ง Ubuntu 14.04.3 จากไฟล์ iso ที่ดาวน์โหลดมา
[alice@MacBook Desktop]$ ls -l -rw-r-----@ 1 alice staff 601882624 Sep 20 14:31 ubuntu-14.04.3-server-amd64.iso
[alice@MacBook Desktop]$ hdiutil convert -format UDRW -o target.img ubuntu-14.04.3-server-amd64.iso Reading Driver Descriptor Map (DDM : 0)… Reading Ubuntu-Server 14.04.3 LTS amd64 (Apple_ISO : 1)… Reading Apple (Apple_partition_map : 2)… Reading Ubuntu-Server 14.04.3 LTS amd64 (Apple_ISO : 3)… .................................................... Reading EFI (Apple_HFS : 4)… .................................................... Reading Ubuntu-Server 14.04.3 LTS amd64 (Apple_ISO : 5)… .................................................................................................. Elapsed Time: 1.489s Speed: 385.4Mbytes/sec Savings: 0.0% created: /Users/alice/Desktop/target.img.dmg
[alice@MacBook Desktop]$ ls -l -rw-r--r-- 1 alice staff 601882624 Sep 20 18:29 target.img.dmg -rw-r-----@ 1 alice staff 601882624 Sep 20 14:31 ubuntu-14.04.3-server-amd64.iso
[alice@MacBook Desktop]$ diskutil unmountDisk /dev/disk2 Unmount of all volumes on disk2 was successful
[alice@MacBook Desktop]$ sudo dd if=target.img.dmg of=/dev/disk2 bs=1m Password:
ลองนำไปใช้กันดูครับ