[ Home ][ Webboard ][ Chatroom ][ Tips ][ TopDownload ][ Links ][ Guestbook ][ IRC Tips ][ Webmaster ® ]

THAIFUTURE.COM THAIFUTURE.COM

รับทำ Homepage และ วิเคราะห์ข้อมูลงานวิจัยด้วย SPSS version 10.0.7 Tel: 054-312281
บทที่1:เรียนLinux บทที่3:เรียนPerl บทที่4:บทเรียนPHP บทที่5:บทเรียนSQL บทที่8:หน้าที่ของแฟ้ม/ระบบDirectory บทที่9:คำสั่งบริหารระบบSuperUser
HOW TO LINUX
Case study at http://www.isinthai.com (Redhat 6.2)
Linux คือระบบปฏิบัติการ ที่เป็นคู่แข่งของ Microsoft Windows และทั้งโลกกำลังจับต่ออยู่ขณะนี้
ทีมงานเป็นเพียงมือสมัครเล่น เกี่ยวกับ Linux ต้องการทำ Server เป็นกรณีศึกษา ให้บริการ ftp,pop3,imap,webbased,perl,php,mysql,ssi,.. เป็นต้น โดยหวังว่าพวกเรา นักศึกษา และผู้สนใจจะชำนาญมากขึ้น จากการปฏิบัติจริง จนท่านสามารถให้คำปรึกษาผู้อื่น และสามารถ copy ระบบทั้งหมดของเราไปใช้งานเป็น (ระบบของเราจะช้า เพราะวิ่งที่ 64KBps และจะล่มบ่อยด้วยหลายกรณี .. โปรดทำใจ)
หากมีข้อผิดพลาด ข้อเสนอแนะ หรือความคิดเป็นใด โปรดแจ้งทีมงาน
ถ้าท่านหาเว็บที่ให้ข้อมูลชั้นยอด เกี่ยวกับ linux ที่เป็นมืออาชีพ ทีมงานขอแนะนำ thailinux.com
เพราะพวกเราทำระบบ เสร็จได้ ก็เพราะที่นี่เลยครับ โดยเฉพาะทีมงานของเรา เข้าบ่อยที่สุด
Telnet คือโปรแกรมที่มากับ windows ที่ติดตั้ง Protocal TCP/IP โดยมีหน้าที่ ช่วยให้ผู้ใช้ สามารถ Remote connect เข้าสู่ Server จาก PC ของตนได้ เช่น Server อยู่ลำปาง แต่ท่านนั่งอยู่ ที่กรุงเทพฯ ก็สามารถ เข้ามาบริหาร เครื่องคอมพิวเตอร์ เสมือนนั่ง อยู่หน้าเครื่องได้ (ไม่ต้องนั่งเครื่องบิน มาลำปาง ก็ได้)

วิธีเปิดโปรแกรม Telnet มาใช้งาน
1. ใช้ mouse click ที่ ปุ่ม start มุมล่างซ้าย
2. เลือก run จากเมนูของ start
3. พิมพ์คำว่า telnet www.isinthai.com
4. เลิกงานก็ใช้คำสั่ง exit หรือปิดหน้าต่างได้เลย
บริการนี้ปิดไปแล้ว เพราะ hacker
1.1 คำสั่ง ls
:::::: ใช้แสดงรายชื่อแฟ้มทั้งหมดใน home directory ของเรา

 
ทุกท่านที่มี account ใน linux จะมี home directory ของตนเอง เพื่อใช้เก็บแฟ้มต่าง ๆ ภายใต้ระบบ linux เมื่อต้องการทราบว่ามีแฟ้มอะไรที่เก็บไว้บ้าง สามารถใช้คำสั่ง ls ได้ และสามารถกำหนด parameter ได้หลายตัว
1.2 คำสั่ง chmod
:::::: ใช้เปลี่ยนสิทธิ์ของแฟ้ม ว่า เจ้าของ, คนในกลุ่ม, คนอื่น สามารถทำอะไรได้บ้าง

เมื่อใช้คำสั่ง LS ท่านจะเห็นตัวอักษร RWXRWXRWX หรือทำนองนี้หน้าชื่อแฟ้ม ซึ่งเป็นการกำหนด สิทธิ์ของแต่ละแฟ้ม ว่า อ่านได้ เขียนได้ และประมวลผลได้ โดยแยกเป็นส่วนของ เจ้าของ, กลุ่ม, คนอื่น ซึ่งเป็นคำสั่งที่จำเป็นมากสำหรับ webmaster ในการดูแลระบบ และท่านที่ต้องการเขียน CGI จะต้องรู้คำสั่งนี้ เพราะ เมื่อส่งแฟ้ม CGI เข้าไปใน server และต้องการให้คนทั่วไปเข้ามาใช้บริการ โปรแกรมของตนที่เขียนขึ้นด้วย Perl จะไม่สามารถใช้ได้ ถ้าไม่กำหนดให้คนอื่น สามารถประมวลผลได้ (x) จึงจำเป็นต้องใช้คำสั่ง เช่น chmod 755 hello.pl หรือ chmod 775 fileforyou.pl หรือ chmod +x test.pl เป็นต้น
ในแต่ละกลุ่มจะมีการกำหนดสิทธิได้ 3 แบบ
ตัวอักษร R มาจาก Read หมายถึง อ่าน
ตัวอักษร W มาจาก Write หมายถึง เขียน
ตัวอักษร X มาจาก Execute หมายถึง ประมวลผล
ตัวอย่างเช่น
--- ไม่มีสิทธิอะไรเลย (เลขที่ใช้คือ 0)
--X ประมวลผลได้อย่างเดียว (เลขที่ใช้คือ 1)
R-- อ่านได้อย่างเดียว (เลขที่ใช้คือ 4)
RW- อ่าน และเขียนได้ (เลขที่ใช้คือ 6)
R-X อ่าน และประมวลผลได้ (เลขที่ใช้คือ 5)
RWX อ่าน เขียน และประมวลผลได้ (เลขที่ใช้คือ 7)
ความหมายของ RWXRWXRWX จะเห็นว่ามีอักษร 9 ตัว
3 ตัวแรกหมายถึง เจ้าของ
3 ตัวที่สองหมายถึง กลุ่ม
3 ตัวที่สามหมายถึง คนอื่น
ตัวอย่างเช่น
RWX------ เจ้าของเท่านั้นที่มีสิทธิทุกอย่าง (เลขที่ใช้คือ 700)
RWXRWX--- เจ้าของ และสามาชิกกลุ่มเดียวกันมีสิทธิทุกอย่าง (เลขที่ใช้คือ 770)
RWXR-XR-X เจ้าของทำได้หมด ส่วนกลุ่มและคนอื่นอ่านและประมวลผลได้ (เลขที่ใช้คือ 755)
R--R--R-- ทุกคนอ่านได้อย่างเดียว (เลขที่ใช้คือ 444)

home


1.3 คำสั่ง man
:::::: เป็นคำสั่งที่สำคัญมาก เพราะจะช่วยให้อธิบายคำสั่งต่าง ๆ ให้ท่านได้ (Manual)

ผมเชื่อว่าทุกคนที่ใช้ unix หรือ linux ต้องเคยใช้คำสั่งนี้มาก่อน เพราะจะเป็นคำสั่งที่ช่วยอธิบายหน้าที่ของคำสั่ง พร้อมกับแสดง parameter ที่สามารถใช้ได้ทั้งหมดของคำสั่งนั้น และยังมีตัวอย่างการใช้ และคำสั่งที่เกี่ยวข้องอีก ทำให้ประหยัดเวลาในการค้นเอกสารได้อย่างมาก บางท่านอาจศึกษา linux ด้วยการอ่านจาก man อย่างเดียวเลยก็มีนะครับ โดยไม่ต้องไปหาซื้อหนังสือที่ไหนมาอ่านก็ทำได้
1.4 คำสั่ง mkdir, rm, cd
:::::: งานต่าง ๆ เกี่ยวกับ directory
ผู้ใช้คอมพิวเตอร์ที่ใช้ dos มาก่อนต้องคุ้นเคยกับ directory แน่นอน สำหรับคำสั่งเกี่ยวกับ directory ในที่นี้มี 3 คำสั่ง
mkdir หมายถึง สร้าง directory (Make directory)
rm หมายถึง ลบ directory (Remove directory) และคำสั่งนี้ยังใช้ลบแฟ้มตามปกติได้อีกด้วย
cd หมายถึงเปลี่ยน directory (Change directory)
  home

1.5 โปรแกรม pico
:::::: เป็น editor ที่ใช้สำหรับแก้ไขแฟ้มแบบ text คล้าย vi แต่มีประสิทธิภาพกว่ามาก

เพียงแต่พิมพ์คำว่า pico แล้ว enter ก็ใช้งานได้เลย การจะจัดเก็บ หรืองานต่าง ๆที่มีบริการไว้มากมาย ท่านสามารถอ่านได้จากเมนูด้านล่าง ซึ่งเครือ่งหมาย ^ หมายถึงการกดปุ่ม Ctrl ประกอบอักษรต่าง ๆ นั่นเอง ผมคิดว่าท่านน่าจะพออ่านรู้เรื่อง
หรือจะพิมพ์ว่า pico xx ก็จะเป็นการสร้างแฟ้มชื่อ xx ให้ทันที แต่หากมีแล้ว ก็จะเปิดแฟ้ม xx มาให้แก้ไขในโปรแกรม xx เมื่อท่านต้องการเลิกก็ทำได้โดยกดปุ่ม Ctrl-X เป็นอันเรียบร้อย หากท่านใดเคยใช้ vi เมื่อลองใช้โปรแกรมนี้จะติดใจอย่างแน่นอน เพราะใช้งานได้ง่ายกว่า หลายเท่านัก
1.6 โปรแกรม emacs
:::::: เป็น editor ที่ใช้สำหรับแก้ไขแฟ้มแบบ text คล้าย vi แต่มีประสิทธิภาพกว่ามาก

ทำงานได้คล้าย ๆ กับ pico แต่หลายคนบอกว่า ตัวนี้ทำงานได้ดีกว่า แต่ผมว่า pico ใช้งานได้ง่ายกว่ากันเยอะเลย เพราะเห็นเมนูด้านล่าง แต่ของ emacs จะใช้ ctrl-h ดูส่วนช่วยเหลือ และกด ctrl-x + ctrl-c จึงจะออกจากโปรแกรม อาจเป็นเพราะผมใช้ไม่ชำนาญมังครับ ในเมื่อผมใช้ pico เป็น editor ผมคงไม่จำเป็นต้องศึกษา emacs เพิ่มเติมแล้ว ยกเว้นว่าสักวันอาจมีเหตุจำเป็นที่ความสามารถของ pico ให้ไม่ได้ แต่ emacs ให้ได้ก็เป็นได้
1.7 คำสั่ง id, finger, who, w
:::::: ทุกคำสั่งข้างต้นใช้สำหรับตรวจสอบผู้ใช้ แต่จะให้รายละเอียดต่างกันไป

home

2.1 คำสั่ง df
:::::: แสดงการเนื้อที่ใช้งานทั้งหมดของ Harddisk ว่าเหลือเท่าใด

ช่วยให้ผู้ดูแลระบบรู้ว่าตอนนี้เนื้อที่ใน Harddisk เหลืออยู่เท่าใด และอาจใช้ตรวจสอบได้ว่า มีใครแอบมา upload แฟ้มขนาดใหญ่ไว้หรือไม่ จะได้ตรวจสอบในรายละเอียดของแต่ละ user ต่อไป (ผมเองก็ใช้บ่อย เพราะถ้า server เล็ก ๆ จะเต็มบ่อยครับ ต้องคอย clear เสมอ) home

2.2 คำสั่ง du
:::::: แสดงการเนื้อที่ใช้งาน ของแต่ละ directory โดยละเอียด

ช่วยให้ผู้ดูแลระบบรู้ว่า directory ใด ใช้เนื้อที่ใด หรือใช้ดูรวม ๆ ว่า ผู้ใช้แต่ละคนใช้เนื้อที่เก็บข้อมูลกันเท่าใด เพราะผู้ใช้ปกติจะใช้กันไม่เยอะ แต่ถ้าตรวจสอบแล้วเยอะผิดปกติ ก็จะเข้าไปดูว่า เยอะเพราะอะไร จะได้แก้ไขได้ home

2.3 คำสั่ง ps
:::::: แสดง Process หรือโปรแกรมที่ประมวลผลอยู่ในระบบขณะนั้น

ช่วยให้ผู้ดูแลระบบ ติดตามได้ว่ามีโปรแกรมอะไรที่ไม่ถูกต้อง run อยู่ หรือโปรแกรมอะไร ที่ผู้ศึกษาลองประมวลผลแล้วค้างอยู่ จะได้ทำการแก้ไง มิฉนั้นระบบก็จะทำงานค้าง เพราะโปรแกรมที่ไม่ควรอยู่ในระบบ กำลังประมวลผลโดยไม่จำเป็น โดยเฉพาะพวก bot จะทำให้ server ล่มง่ายมาก
2.4 คำสั่ง kill
:::::: เมื่อทราบว่า process ใดที่มีปัญหา ก็จะเห็นเลขประจำ process คำสั่ง kill จะสามารถ process ออกจากระบบได้

ช่วยยกเลิก process ที่ไม่ถูกต้องออกจากระบบ ถ้าขณะนั้นผู้ใช้คนหนึ่งกำลังใช้งานอยู่ หาก process หลักของเขาถูก kill จะทำให้ผู้ใช้ท่านนั้น หลุดออกจากระบบทันที (สำหรับคำสั่งนี้จะถูกใช้โดย super user เท่านั้น ผู้ใช้ธรรมดาไม่มีสิทธิ์) home

2.5 คำสั่ง find
:::::: เมื่อไฟล์ที่ต้องการว่าอยู่ใน directory ของเครื่องเราหรือไม่

ตัวอย่างคำสั่ง และการใช้งาน
find / -name hello.pl
:: ใช้ค้นหาแฟ้ม hello.pl ในทุก directory
find / -name hello*
:: ใช้ค้นหาแฟ้มที่ขึ้นต้นด้วยคำว่า hello
find / -size 619
:: ใช้ค้นหาแฟ้มที่มีขนาด 619 เช่น /bin/bash ใน Redhat 6.2

2.6 คำสั่ง gzip
:::::: ใช้สำหรับแตกแฟ้มที่ถูกบีบอัด แล้วนามสกุล gz หรือ z

ตัวอย่างคำสั่ง และการใช้งาน
gzip -d x.tar.gz
:: ใช้แตกแฟ้มที่นามสกุล gz
man gzip
:: ใช้ดูว่า gzip ใช้งานอะไรได้บ้าง
gzip -d radius-1.16.1.tar.Z
:: ได้แฟ้มนี้จาก ftp.livingston.com/pub/le/radius/ เป็นระบบรับโทรศัพท์เข้าเครือข่าย จึงใช้ gzip ช่วยคลายก่อนติดตั้งต่อไป
gzip -dc x.tar.Z|tar xvf -
:: ประหยัดขั้นตอนในการใช้คำสั่ง 2 ครั้ง เพราะคำสั่งชุดนี้จะใช้ทั้ง gzip และ tar กับ x.tar.z ได้ตามลำดับอย่างถูกต้อง
home

2.7 คำสั่ง tar
:::::: ใช้สำหรับแตกแฟ้มที่ถูกบีบอัด แล้วนามสกุล tar

ตัวอย่างคำสั่ง และการใช้งาน
tar xvf x.tar
:: ใช้สำหรับแตกแฟ้มที่นามสกุล tar ปกติแล้วจะมีการสร้าง directory ของแฟ้มพร้อมโปรแกรมอีกเพียบ
tar xvfz squid-2.3-200103110000-src.tar.gz
:: จะคลาย gz พร้อมกับใช้คำสั่ง tar ได้พร้อม ๆ กัน ไม่ต้องใช้ gzip และมาใช้ tar อีกครั้ง
man tar
:: ใช้ดูว่า tar ใช้งานอะไรได้บ้าง
tar zcvf abc.tar.gz /etc
:: ใช้ copy /etc เก็บเป็นแฟ้ม abc.tar.gz แบบบีบอัด
tar zxvf abc.tar.gz
:: ใช้คลายแฟ้ม abc.tar.gz ซึ่งจะได้ directory /etc ออกมาทั้งหมด

2.8 คำสั่ง last
:::::: ใช้แสดงรายชื่อผู้ login เข้ามาล่าสุด

ตัวอย่างคำสั่ง และการใช้งาน
last |grep reboot
:: ใช้ดูระบบถูก reboot เมื่อใดบ้าง
last |more
:: ใช้รายชื่อผู้ login เข้ามาในระบบล่าสุดทีละหน้า
home

2.9 คำสั่ง grep
:::::: ใช้สำหรับเลือกข้อมูลเฉพาะบรรทัดที่ต้องการ

ตัวอย่างคำสั่ง และการใช้งาน
more /etc/passwd|grep thaiall
:: ใช้แสดงข้อมูลในแฟ้ม /etc/passwd แต่เลือกเฉพาะบรรทัดที่มีคำว่า thaiall
rpm -qa|grep ftp
:: ใช้ดูว่าระบบลงโปรแกรม ftp หรือยัง เวอร์ชั่นใดบ้าง
last |grep reboot
:: ใช้ดูระบบถูก reboot เมื่อใดบ้าง

2.10 คำสั่ง date
:::::: ใช้ดูวันที่ หรือเปลี่ยนวันที่ และเวลาได้ date [OPTION] [MMDDhhmm[[CC]YY][.ss]]

ตัวอย่างคำสั่ง และการใช้งาน
date +%x
:: ดูวันที่ปัจจุบัน เช่นการแสดงเลข 04/27/01 ออกมา
date +%d
:: ดูวันที่ปัจจุบัน เช่นการแสดงเลข 27 ออกมา
date 04271340
:: กำหนดวันที่ใหม่ให้เป็น วันที่ 27 เดือน 4 เวลา 13.40 น.
home

2.11 คำสั่ง hdparm
:::::: ใช้วัดความเร็วของ harddisk ว่ามีความเร็วเท่าใดในการประมวลผล

ตัวอย่างคำสั่ง และการใช้งาน
hdparm -T /dev/hda5
:: วัดความเร็วของ harddisk ใน partition ที่เป็น ext2
/dev/hda5:
Timing buffer-cache reads: 128 MB in 5.65 seconds = 22.65 MB/sec
more /etc/fstab
:: ดูว่ามี /dev อะไรที่จัดเตรียมไว้บ้างใน server หรือจะใช้คำสั่ง df ก็ได้
man hdparm
:: แสดง parameter ของ hdparm ซึ่งมีเพียบเลยครับ
home