9.96 วิธี copy server หรือ host(Backup)
: เนื่องจากผมเป็นมือใหม่อยู่มาก จึงลอง backup ระบบไว้หลายวิธี ทั้งวิธี copy ใน harddisk ตัวเดียว หรือต่าง harddisk
ข้อมูลเบื้องต้นสำหรับทำความเข้าใจในปัญหาการ backup หรือ copy server
- Harddisk ที่มีอยู่ ไม่มีขนาดที่เท่ากัน ทำให้การคัดลอก หรือแบ่ง partition ให้เท่ากันมีปัญหานิดหน่อย
- Harddisk ส่วนใหญ่ที่มีเป็น bad sector บางตัว backup เสร็จแล้ว เมื่อนำมาใช้ก็ใช้ไม่ได้
- คอมพิวเตอร์ที่มีอยู่มีปัญหาเช่นมองเห็น harddisk ขนาดคงที่ ไม่ว่าจะใส่ขนาดเท่าใดก็มองเห็นเพียง 8 Gb เป็นต้น
สรุปล่าสุดเมื่อ 24 มกราคม 2548
ประเสริฐ ประสารยา ให้ข้อมูลใหม่ว่าปีก่อนที่ใช้ ghost HD linux 2 ตัว แล้วมีปัญหา ตอนนี้แก้ไขได้แล้ว
หลังจากที่ Ghost เรียบร้อย นะครับ ให้ Boot ด้วย CD ติดตั้ง Linux โดยที่หน้าจอแรก
พิมพ์ลงไปตรง prompt ว่า linux rescue แล้วกด enter พอพบหน้าจอให้ config อะไรนิดหน่อย ให้กดผ่านไปเลย
จนกระทั่งได้ prompt ของระบบมา แล้วพิมพ์คำสั่ง # chroot /mnt/sysimage
# grub-install /dev/hda
# exit
# exit
reboot ใหม่ก็จะใช้งานได้ครับ
สรุปล่าสุดเมื่อ 3 มีนาคม 2546
เนื่องจากพยายามหา Norton ghost ที่มีความสามารถ copy harddisk ที่มีขนาดแตกต่างกัน มาคัดลอก RH8.0 แต่จากการหามาและทดสอบ ปรากฏว่าไม่สำเร็จ เพราะคัดลอกแล้วผลคือแจ้งว่า completely แต่นำไปใช้งานไม่ได้ ทำให้ต้องหยุดการศึกษา Norton ghost สำหรับ RH8.0 ไว้เพียงเท่านี้
วิธี Backup ล่าสุด คือ หา Harddisk ที่มีลักษณะคล้ายกัน แม้ขนาดไม่เท่ากันก็ได้ แต่ตัวลูกต้องใหญ่กว่าหรือเท่ากับตัวแม่ โดยใช้ #fdisk /dev/hda และ #fdisk /dev/hdc ตรวจสอบ แล้วคัดลอกด้วยคำสั่ง dd จาก harddisk ที่มีขนาดเล็กกว่า ไป harddisk ที่มีขนาดใหญ่กว่า พบว่าไม่มีปัญหาใด ๆ คำสั่งที่ใช้คือ #dd if=/dev/hda of=/dev/hdc หรือ #dd if=/dev/hda2 of=/dev/hdb2
วิธีที่ 1 : NortonGhost :: โปรแกรมสำหรับคัดลอก harddisk ได้สมบูรณ์มาก แต่ล่าสุดทดสอบกับ RH8.0 ไม่สำเร็จ
หลังถูก hacker เข้ามาป่วนระบบ ทำให้ต้องหาโปรแกรมมา Backup server เก็บไว้ และโปรแกรมที่หามาได้ก็คือ NortonGhost เพื่อ copy harddisk โดยคุณประเสริฐ ประสารยา [prasert@cat.net.th] ซึ่งเป็นทีมงานของ isinthai.com ได้ช่วยหา NortonGhost2002 มา clone HD Linux RH7.2 และใช้งานได้เรื่อยมา
ในเดือน มกราคม 2545 ทีมงานตัดสินใจใช้ Redhat 8.0 แต่ทั้ง NortonGhost 2002 และ 2003 ต่างก็ใช้คัดลอก Redhat 8.0 ไม่ได้ ปัญหาที่เกิดขึ้นไม่แน่ใจว่าเกิดจากอะไร และเกิดในหลายรูปแบบ เช่น ไม่สามารถ Boot ได้ หรือเห็นเฉพาะคำว่า LI ตอน boot แล้วก็ hang ไปเฉย ๆ หรือ copy partition มาไม่หมด .. จึงตัดสินใจศึกษาการใช้คำสั่ง dd และ cp เพื่อคัดลอก harddisk อย่างจริงจังอีกครั้ง
วิธีที่ 2 : tar.gz :: โปรแกรมบีบอัดแฟ้ม หรือ folder ซึ่งนิยมใช้กันมาก (ทีมงานไม่ได้ทดสอบหลักการนี้อย่างจริงจัง)
วิธีนี้สามารถ copy ทั้ง partiton เก็บเป็น file เดียว หากมีปัญหาก็คลายแฟ้มนี้เท่านั้น
#tar zcf total.tar.gz / :: เพื่อบีบอัดทั้ง root เป็นแฟ้ม total.tar.gz
#tar zcf total.tar.gz /dev/hda :: เพื่อบีบอัดทั้ง harddisk เป็นแฟ้ม total.tar.gz
#tar zxf total.tar.gz :: คล้ายข้อมูลใน total.tar.gz ไว้ในห้องปัจจุบัน
วิธีที่ 3 : cp :: โปรแกรมคัดลอกที่ใช้คัดลอกข้อมูลระหว่าง harddisk หรือ partiton ได้ (ทีมงานไม่ได้ทดสอบหลักการนี้อย่างจริงจัง)
ตัวอย่างการใช้ cp คัดลอกทั้ง partition เก็บเข้า partition ใหม่ใน hd เดิม
เมื่อต้องการดูว่าในเครื่องมี partition อะไรแบ่งไว้บ้างด้วย fdisk -l หรือ df -a จะเห็นขนาดของแต่ละ partitions และคำสั่ง mount หรือ cat /proc/mounts ถูกใช้เพื่อดูรายการแฟ้มที่ถูก mount ไว้
#mkfs -t ext3 /dev/hda3 3076447
:: ใช้สำหรับจัดรูปแบบ ของ partitions /dev/hda3 ตามขนาดจริง ซึ่งเห็นใน cat /proc/partitions
#mkdir /rest :: สร้างห้องชื่อ rest ในห้อง /
#mkswap /dev/hda7 :: เพื่อกำหนดให้ /dev/hda7 เป็น swap partition
#mount -t ext3 /dev/hda3 /rest :: ต่อไป /rest ก็คือ /dev/hda3 ซึ่งมีขนาด 3076447
#df -a :: แสดงรายชื่อ และขนาดที่ mount สำเร็จ
#cp -a /dev/hda2 /dev/hda3 :: คัดลอกทั้งหมดใน /dev/hda2 ไป /dev/hda3
วิธีที่ 4 : dd :: โปรแกรมคัดลอกทั้ง partition
ตัวอย่างการใช้ dd คัดลอกทั้ง partition หรือ harddisk ไปยัง partition หรือ harddisk ใหม่
ล่าสุดผมใช้วิธีนี้ backup server หรือ copy harddisk นั่นเอง โดยพื้นฐานแล้ว คำสั่งนี้เหมาะกับ harddisk ที่มีขนาดเท่ากัน แต่ผมไม่มี harddisk ที่เท่ากัน แต่ใช้ตัวที่มีลักษณะต่าง ๆ ใกล้เคียงกัน โดยเฉพาะตัวลูกต้องใหญ่กว่า หรือเท่ากับตัวแม่
#dd if=/dev/hda of=/dev/hdc :: คัดลอก harddisk ทั้งลูกจากลูก hda ไป hdc
#dd if=/dev/hda1 of=/dev/hdc1 bs=1024k :: คัดลอก harddisk ทั้งใน partition 1 ของลูกหนึ่ง ไป partition 1 ของอีกลูกหนึ่ง
|