ลีนุกซ์ (Linux)
Home  Contents KMArticlesMembersSponsorsAbout us

ปรับปรุง : 2556-10-06 (ปรับเป็นรุ่น 3)
ขอบซ้ายขอบบน
Linux : 0996
:: กลับหน้าแรก :: แสดงเนื้อหาทั้งหมด ::

9.96 วิธี copy server หรือ host(Backup)
: เนื่องจากผมเป็นมือใหม่อยู่มาก จึงลอง backup ระบบไว้หลายวิธี ทั้งวิธี copy ใน harddisk ตัวเดียว หรือต่าง harddisk
      ข้อมูลเบื้องต้นสำหรับทำความเข้าใจในปัญหาการ backup หรือ copy server
    1. Harddisk ที่มีอยู่ ไม่มีขนาดที่เท่ากัน ทำให้การคัดลอก หรือแบ่ง partition ให้เท่ากันมีปัญหานิดหน่อย
    2. Harddisk ส่วนใหญ่ที่มีเป็น bad sector บางตัว backup เสร็จแล้ว เมื่อนำมาใช้ก็ใช้ไม่ได้
    3. คอมพิวเตอร์ที่มีอยู่มีปัญหาเช่นมองเห็น 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 ไม่สำเร็จ
      หลังถูก h cker เข้ามาป่วนระบบ ทำให้ต้องหาโปรแกรมมา 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 ของอีกลูกหนึ่ง

ขอบซ้ายขอบบน
สารบัญ
กรณีศึกษาจาก Redhat 6.2 -> Fedora Core 4 -> Android 4.01
บทที่ 1 : คำสั่งสำหรับผู้ใช้พื้นฐาน (Basic user command)
    1.1 คำสั่ง ls : แสดงรายชื่อแฟ้มในห้องปัจจุบัน หรือห้องอื่น ๆ ที่ต้องการ 1.2 คำสั่ง chmod : เปลี่ยนสถานะของแฟ้มเช่น Read Write eXecute 1.3 คำสั่ง man : แสดงรายละเอียดของคำสั่ง (Manual) 1.4 คำสั่ง mkdir, rmdir, cd : คำสั่งเกี่ยวกับ Directory หรือ Folder เพื่อสร้าง หรือลบ 1.5 คำสั่ง pico : editor ยอดฮิตใน Linux ที่ต้องมากับ Pine เป็น Text mode ที่ใช้ง่ายที่สุด 1.6 คำสั่ง emacs : editor ยอดฮิตใน Linux ใช้ยากกว่า pico นิดหน่อย 1.7 คำสั่ง vi : editor ยอดฮิตใน Linux ที่ใช้ยากที่สุด 1.8 คำสั่ง id, finger, who, w : โปรแกรมตรวจสอบ username ของตนเอง 1.9 คำสั่ง cat : แสดงข้อมูลในแฟ้มเหมือนคำสั่ง type ในระบบ DOS 1.10 คำสั่ง ifconfig : ดู IP หรือเพิ่ม IP เข้าไปใน linux server 1.11 คำสั่ง netstat : แสดงสถานะของเครือข่าย 1.12 คำสั่ง service : แสดงสถานะโปรแกรมที่เปิดให้บริการ 1.13 คำสั่ง xinetd : แสดงบริการที่เปิดใต้โปรแกรม xinetd 1.14 คำสั่ง whereis : ค้นหาแฟ้มที่ต้องการว่าอยู่ที่ห้องใด 1.15 คำสั่ง cp, rm, mv : จัดการแฟ้มเช่น คัดลอก ลบ และย้าย 1.16 คำสั่ง ping : ตรวจสอบ ip และการเชื่อมต่อ internet 1.17 คำสั่ง env : แสดงค่า environment ปัจจุบัน 1.18 คำสั่ง lynx : Text browser ที่ใช้งานง่าย ใช้ดู source หรือ download ได้ 1.19 คำสั่ง nslookup : แสดงข้อมูลเกี่ยวกับ name server จาก ip หรือ domain name 1.20 คำสั่ง tail : แสดงส่วนท้ายของแฟ้มที่มีขนาดใหญ่ ต้องข้ามกับ cat ที่ดูตั้งแต่เริ่มแฟ้ม 1.21 คำสั่ง telnet : ใช้ติดต่อเข้า server ต่าง ๆ ตาม port ที่ต้องการ .
บทที่ 2 : คำสั่งสำหรับผู้ใช้ระดับกลาง (Intermediate user command) เพื่อต้องการตรวจสอบระบบ
    2.1 คำสั่ง df : แสดง partition ของ linux พร้อมขนาดที่ใช้ไป 2.2 คำสั่ง du : แสดงพื้นที่ใช้งานในแต่ละ Directory 2.3 คำสั่ง ps : แสดง process ที่กำลังทำงานอยู่ทั้งของเครื่อง และตนเอง 2.4 คำสั่ง kill : ยกเลิก process ที่ทำงานอยู่ 2.5 คำสั่ง find : ค้นหาแฟ้มที่ต้องการภายในทุก ๆ directory ได้ 2.6 คำสั่ง gzip : คลายการบีบอัด หรือแตกแฟ้มประเภท .gz 2.7 คำสั่ง tar : คลายการบีบอัด หรือแตกแฟ้มประเภท .tar 2.8 คำสั่ง last : แสดงรายชื่อผู้ใช้งานระบบปัจจุบันไปถึงอดีต 2.9 คำสั่ง grep : เลือกข้อความที่ต้องการภายในแต่ละบรรทัด 2.10 คำสั่ง date, hwclock : ใช้กำหนด หรือแสดงเวลาปัจจุบัน 2.11 คำสั่ง top : แสดง process ที่ทำงานในปัจจุบัน พร้อม refresh ตลอดเวลา 2.12 คำสั่ง ntsysv และ setup : กำหนดบริการที่ต้องการเปิด หรือปิด เช่น httpd หรือ vsftp 2.13 คำสั่ง route : ใช้กำหนด แสดง ตารางเส้นทาง 2.14 คำสั่ง shutdown, reboot : ใช้ปิดเครื่อง หรือ ปิดและเปิดเครื่องใหม่อย่างถูกวิธี 2.15 คำสั่ง runlevel : คู่กับแฟ้ม /etc/inittab 2.16 คำสั่ง fsck : ซ่อมแซมระบบแฟ้มใน linux 2.17 คำสั่ง chown, chgrp : เปลี่ยนเจ้าของ หรือเปลี่ยนกลุ่ม 2.18 คำสั่ง chkconfig : กำหนด หรือแสดง บริการที่สั่งประมวลผลใน level ต่าง ๆ ขณะเปิดเครื่อง 2.19 คำสั่ง mount, umount : เชื่อมต่ออุปกรณ์ หรือ partition เช่น Diskette หรือ Handy drive 2.20 คำสั่ง mkbootdisk : สร้างแผ่น boot disk เพื่อใช้ boot ระบบ linux ขึ้นมาภายหลัง 2.21 คำสั่ง traceroute : แสดงเลข ip ของเครื่องที่ถูกเชื่อมต่อ ไปยังปลายทางที่ต้องการ 2.22 คำสั่ง rpm : ใช้ตรวจสอบ เพิ่ม หรือลบ package ของระบบ linux เกือบทั้งหมด 2.23 คำสั่ง su : ขอเปลี่ยนตนเองเป็น Super user เพื่อใช้สิทธิสูงสุดในการบริหารระบบ 2.24 คำสั่ง useradd : เพิ่มผู้ใช้รายใหม่เข้าไปในระบบ 2.25 คำสั่ง userdel : ลบผู้ใช้รายเดิม ออกจากระบบ 2.26 คำสั่ง usermod : แก้ไขข้อมูลของผู้ใช้ได้ 2.27 คำสั่ง crontab : ตั้งเวลาสั่งงานคอมพิวเตอร์ 2.28 คำสั่ง lspci : ตรวจสอบอุปกรณ์ที่เชื่อมต่อภายในเครื่อง 2.29 คำสั่ง nmap : ตรวจสอบเครือข่ายแบบกวาดทั้งในเครื่อง และ class C .
บทที่ 3 : บทเรียน PERL บทที่ 4 : บทเรียน PHP บทที่ 5 : บทเรียน MYSQL บทที่ 6 : แนะนำเครื่องบริการ บทที่ 7 : การใช้ application บทที่ 8 : ระบบ file และ directory บทที่ 9 : การบริหารระบบ โดย Super User
ผู้สนับสนุน + ผู้สนับสนุน
+ รับผู้สนับสนุน
"Imagination is more important than knowledge" - Albert Einstein
Home
Thaiabc.com
Thainame.net
Lampang.net
Nation university
PHP
MySQL
Visual basic.NET
TabletPC
Linux
Online quiz
Download
Search engine
Web ranking
Add website
Blog : Education
Blog : ACLA
Blog : Lampang
Facebook.com
Twitter.com
About us
My dream
Site map
Sponsor