ปกติ Linux จะมีการเรียก device ต่าง ๆ โดยเรียงตามลำดับที่ detect เจอ
เช่น /dev/sda1 หมายถึง scsi device ที่เจอตัวแรก partition ที่ 1
ซึ่งอาจเป็น SATA หรือ Flash drive ก็ได้
แต่ปัจจุบัน harddisk ถูก รวมทั้ง Flash Disk ตกประมาณ 4 - 5 MB บาท (เรียกแบบชั่งกิโล :P)
และเสียซะ internal / external แบ่งซอยออกหลาย partition
ที่ทำงานผมมีการ duplicate harddisk โดยการใช้ dd พอเราใส่ harddisk ตัวใหม่ลงไป partition วิ่งวุ่น หา root file system ไม่เจอซะงั้น เพราะว่า ที่ grub reference เป็น /dev/sdxx ต่างกับ ubuntu ที่เป็น UUID
อันดับแรก ตรวจสอบ UUID
-
sake@papaya:~$ sudo vol_id /dev/sda1
-
[sudo] password for sake:
-
ID_FS_USAGE=other
-
ID_FS_TYPE=ext3
-
ID_FS_VERSION=2
-
ID_FS_UUID=d97cba8d-c1a7-4c6e-95ba-b747bb2cc3bf
-
ID_FS_UUID_ENC=d97cba8d-c1a7-4c6e-95ba-b747bb2cc3bf
-
ID_FS_LABEL=
-
ID_FS_LABEL_ENC=
-
ID_FS_LABEL_SAFE=
จากนั้น แก้ /etc/fstab
-
# /etc/fstab: static file system information.
-
#
-
# <file system> <mount point> <type> <options> <dump> <pass>
-
proc /proc proc defaults 0 0
-
# /dev/sda1
-
UUID=d97cba8d-c1a7-4c6e-95ba-b747bb2cc3bf / ext3 relatime,errors=remount-ro 0 1
-
# /dev/sda2
-
UUID=75da6682-e84a-a6a4-25ef-30c7148f0507 none swap sw 0 0
สุดท้าย แก้ /boot/grub/menu.lst
-
title Linux, kernel 2.6.24-18-generic
-
root (hd0,2)
-
kernel /boot/vmlinuz-2.6.24-18-generic root=UUID=d97cba8d-c1a7-4c6e-95ba-b747bb2cc3bf ro quiet splash
-
initrd /boot/initrd.img-2.6.24-18-generic
-
quiet
จากนั้น ก็ทำการ reboot เป็นการเรียบร้อย ทีนี้จะสลับ harddisk ก็รอบก็ boot ถูก ;)