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

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

9.95 การย้ายระบบ user จากเครื่องหนึ่งไปอีกเครื่องหนึ่ง
: วิธี copy passwd, shadow, group และแฟ้มอื่น ๆ อีกมากมาย
    ขั้นตอนการ copy passwd,shadow,group
    ขั้นตอนที่ 1 : เตรียมพร้อม และทำความเข้าใจ
  1. ใจเย็น ๆ ดูว่านอกจาก 3 แฟ้มดังกล่าวแล้ว ท่านจะคัดลอกแฟ้มอื่นอีก หรือไม่ เช่น mail ใน inbox ซึ่งอยู่ในห้อง /var/spool/mail หรือ ข้อมูลใน home directory ของทุกคน ถ้าทำก็จะยุ่งหละครับ ถ้าไม่อยากยุ่งยากใช้ ghost copy harddisk ตามหัวข้อ 9.96 ดีกว่าครับ 20 นาทีก็เสร็จ และขั้นตอนก็ไม่มีอะไรมาก แค่ถอดเครื่อง เสียบ harddisk ให้ถูก port แล้วก็ใช้โปรแกรม ghost ก็จะได้ harddisk 2 ตัวที่เหมือนกัน
  2. เหตุที่ต้อง copy /etc/passwd, /etc/shadow, /etc/group ใน case ของผม คือ server ตัวเก่ามีปัญหาสารพัด ลง server ตัวใหม่สมบูรณ์ดีแล้ว และที่หนักก็คือระบบเดิมเป็น scsi ใน sun ระบบใหม่เป็น linux เสียดาย account ถ้าสร้าง user ใหม่ทีละคน ก็ต้องใช้เวลา จึงต้อง copy account ทั้งหมดมา
    ขั้นตอนที่ 2 : เริ่ม copy และ backup
  3. ให้ใช้โปรแกรม ftp ดี ๆ จะได้สะดวกเช่น ws_ftp หรือ cute_ftp ย้ายข้อมูล หรือใช้ ftp จากเครื่องใหม่ติดต่อเข้าเครื่องเก่าก็ได้ สะดวกดี แต่ต้อง backup ของเดิมในเครื่องใหม่ด้วย
  4. เข้าไป copy ข้อมูลด้วย root ไปเก็บใน home ของ user demo และเปลี่ยน permission จะได้ copy ออกมาได้ เหตุที่ต้องใช้ demo เพราะแฟ้มที่กำลังจะ copy ส่วนใหญ่เป็นความลับ คนที่เข้าได้คือ root เท่านั้น แต่จะใช้ user root เปิด ftp ก็ไม่ได้ จึงต้องคัดลอกไปไว้ใน home ของ demo แล้วเปลี่ยน permission จะได้ คัดลอกออกมาได้
  5. ส่งข้อมูลทั้งหมดเข้าไปใน server ตัวใหม่ โดย get แบบ binary (ย้ำว่าแบบ ascii ไม่ work)
  6. ให้ copy passwd,shadow,group เก็บไว้อีกที่หนึ่ง เพราะถ้าส่งเข้าไปทับแล้วไม่ work จะมีปัญหาซะเปล่า เมื่อ copy เข้าไปแล้วก็อย่างพึ่ง reboot ให้ลองใช้ user ที่ copy มา connect เข้าไปเป็น root ถ้าใช้ได้ก็ถือว่า copy สำเร็จ
  7. copy แฟ้มทั้งหมดในห้อง /var/spool/mail ซึ่งเป็นห้องเก็บ inbox ของทุกคน
  8. copy แฟ้มทั้งหมดในห้อง /var/www/html ซึ่งเป็นห้องเก็บ web space ของทุกคน
  9. copy แฟ้มทั้งหมดในห้อง /home ซึ่งเป็นห้องเก็บข้อมูลต่าง ๆ ของทุกคน (อาจสร้างให้ใหม่ได้)
    ขั้นตอนที่ 4 : แก้ permission และสร้าง home
  10. สร้างรายชื่อสมาชิกทุกคนให้ใช้คำสั่ง cut /etc/passwd --fields=1 --delimiter=: >listall จะได้แฟ้มชื่อ listall ซึ่งมี username ของทุกคน
  11. ใช้ pico listall เข้าไปลบรายชื่อที่ไม่คิดจะสร้าง home เช่นรายชื่อของผู้ใช้ที่ระบบสร้างให้ ให้ท่านลบทิ้งซะ
  12. เนื่องจาก mail ใน /var/spool/mail ที่คัดลอกมามี owner และ permission ไม่ถูกต้อง และ home แต่ละคนก็ยังไม่มี จึงใช้ shell script ด้านล่าง
    อย่าลืมเอา # ออกตามสมควร
      #!/bin/sh
      # exit 0
      # chmod 700 crthome
      # shell>crthome <listall
      read getu
      while [ $getu. != '.' ]
      do
        echo $getu
        ## change mail owner
        chown $getu:mail /var/spool/mail/$getu
        chmod 660 /var/spool/mail/$getu
      
        ## create home
        # mkdir /home/$getu
        # chown $getu:users /home/$getu
        # mkdir /home/$getu/public_html
        # chown $getu:users /home/$getu/public_html
        # chmod 711 /home/$getu
        # chmod 755 /home/$getu/public_html  
        read getu
      done
      

    ขั้นตอนที่ 5 : แฟ้มอื่น ๆ ที่ต้องพิจารณาที่จะคัดลอก
    db.yonok.ac.th
    db.isinthai.com
    db.lampang.net
    db.202.29.78
    resolv.conf
    named.conf
    httpd.conf
    grub.conf
    lilo.conf
    sendmail.mc
    procmailrc
    localhost.zone
    rc.local

ขอบซ้ายขอบบน
สารบัญ
กรณีศึกษาจาก 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