ระบบปฏิบัติการลีนุกซ์ (Linux)
สารบัญ :: #1 :: #2 :: #3 :: #4 :: #5 :: #6 :: #7 :: #8 :: #9 :: #10 :: #11 :: #12 :: Linux ::
ระบบปฏิบัติการลีนุกซ์

สาระการเรียนรู้
1. ประวัติความเป็นมา (History)
2. หลักการออกแบบ
3. ระบบแฟ้ม (File System)
4. คำสั่ง (Command)
5. การรักษาความปลอดภัย (Security)
6. ระบบเครื่องบริการ

จุดประสงค์การสอน
1. เข้าใจประวัติความเป็นมา (History)
2. เข้าใจหลักการออกแบบ
3. เข้าใจระบบแฟ้ม (File System)
4. สามารถใช้คำสั่งของ Linux ได้
5. เข้าใจการรักษาความปลอดภัย (Security)
6. เข้าใจระบบเครื่องบริการ
7. สามารถติดตั้ง และเปิดบริการต่าง ๆ ได้

แนะนำบทเรียน
แม้ linux จะถูกริเริ่มโดย Linus Benedict Torvalds จาก University of Helsinki ที่พัฒนาในส่วนของ Linux Kernel แต่ปัจจุบันได้มีนักพัฒนาจากทั่วโลกเข้ามาร่วมเติมเต็มเขี้ยวเล็บ และยกระดับเป็นซอฟท์แวร์เชิงพาณิชย์ด้วยชื่อทางการค้าของตน แต่ก็มีอีกกลุ่มที่มุ่งมั่นพัฒนาสนับสนุนให้เป็น Open Source Operating System ที่เปิดให้ Download ไปติดตั้ง และใช้งานได้ฟรี รวมถึงการปรับปรุงเพิ่มประสิทธิภาพ และประยุกต์ใช้งานได้ โดยไม่หวังผลกำไร

การพัฒนาคำสั่งให้ทำงานบน Shell
การใช้คำสั่งบน Bash Shell เพื่อสั่งงานระบบปฏิบัติการ จึงมีคำสั่งใหม่เพิ่มขึ้น คำสั่งเก่าหายไป หรือเปลี่ยนแปลงอยู่เสมอ ในหัวข้อนี้เป็นคำสั่งที่มักพบได้ใน Linux ทั่วไป โดยเฉพาะบน Android OS ที่เผยแพร่โดย Google ให้เป็นระบบปฏิบัติการสำหรับสมาร์ทโฟน (Smart Phone) มีส่วนแบ่งตลาดถึง 70% ใน Q4 ของปี 2013 ขณะที่ iOS มีส่วนแบ่ง 21.7% หากอุปกรณ์จะใช้คำสั่งบน Bash Shell หรือ Linux command line ก็เพียงแต่ Download Application เช่น Android Terminal Emulator
บทนำ คุณรู้สึกเบื่อความไร้ประสิทธิภาพของโอเอสที่คุณใช้อยู่บ้างไหม การทำมัลติทาสกิ้งแบบพิการ การอินเทอร์เฟสที่เลวร้ายกับอินเทอร์เนต (เดาได้ไหมว่าหมายถึงโอเอสของใคร) หากคุณเป็นนักแกะรื้อค้นระบบ ต้องการจะดึงพลังของฮาร์ดแวร์ที่มีอยู่ออกมาให้เต็มที่ คุณคงจะรู้อยู่แล้วว่าโอเอสที่ใช้ๆกันอยู่นั้นช่างไร้พลังเสียเหลือเกิน แถมยังต้องการทรัพยากรฮาร์ดแวร์มาก เรียกได้ว่าสวยแต่รูป จูบไม่หอม หากคุณเกิดอาการอย่างนี้ขึ้นมาล่ะก็ คุณคิดไม่ผิดแล้วล่ะครับที่อ่านบทความนี้ ผมกำลังจะแนะนำคุณสู่อาณาจักรแห่งการบุกเบิก การผจญภัยแห่งใหม่ สิ่งที่คุณคาดเดาไม่ได้กำลังรอคุณอยู่ (ไม่ใช่จูแมนจินะ) คำฝรั่งบอกว่าไม่มีอาหารกลางวันมื้อฟรี แปลเป็นไทยว่าไม่มีอะไรได้มาง่ายๆ ลีนุกซ์ก็เหมือนกันครับ ถึงแม้จะแจกจ่ายฟรี และมีแอพพลิเคชันที่ทรงประสิทธิภาพมาก แต่ก็ต้องแลกกับการที่คุณจะต้องใช้คำสั่งที่ค่อนข้างยุ่งยาก แล้วก็จำเป็นจะต้องอดทนกับการทดลองครั้งแล้วครั้งเล่าจนกว่าจะได้ผลงานที่พอใจ บางทีการติดตั้งลีนุกซ์ครั้งแรกของคุณอาจจะไม่ได้ทำครั้งเดียวเสร็จ เหมือนกับการติดตั้งโอเอสทั่วๆไป คุณจะต้องใช้ความพยายามมากขึ้น ถ้าคุณเห็นว่าอุปสรรคเล็กน้อยข้างต้นนี้ไม่สามารถหยุดความอยากรู้อยากเห็น ไม่สามารถหยุดวิญญาณนักสำรวจของคุณได้ คุณก็พร้อมแล้วที่จะเข้าไปสู่โลกแห่งระบบปฎิบัติการที่ทรงพลังที่สุดระบบหนึ่ง ที่มีอยู่ในโลกนี้
ลีนุกซ์คืออะไร
ลีนุกซ์ระบบปฏิบัติการแบบ 32 บิต ที่เป็นยูนิกซ์โคลน สำหรับเครื่องพีซี และแจกจ่ายให้ใช้ฟรี สนับสนุนการใช้งานแบบหลากงาน หลายผู้ใช้ (MultiUser-MultiTasking) มีระบบ X วินโดวส์ ซึ่งเป็นระบบการติดต่อผู้ใช้แบบกราฟฟิก ที่ไม่ขึ้นกับโอเอสหรือฮาร์ดแวร์ใดๆ (มักใช้กันมากในระบบยูนิกซ์) และมาตรฐานการสื่อสาร TCP/IP ที่ใช้เป็นมาตรฐานการสื่อสารในอินเทอร์เนตมาให้ในตัว ลีนุกซ์มีความเข้ากันได้ (compatible) กับ มาตรฐาน POSIX ซึ่งเป็นมาตรฐานอินเทอร์เฟสที่ระบบยูนิกซ์ส่วนใหญ่จะต้องมีและมีรูปแบบบางส่วนที่คล้ายกับระบบปฏิบัติการยูนิกซ์จากค่าย Berkeley และ System V โดยความหมายทางเทคนิคแล้วลีนุกซ์ เป็นเพียงเคอร์เนล (kernel) ของระบบปฏิบัติการ ซึ่งจะทำหน้าที่ในด้านของการจัดสรรและบริหารโพรเซสงาน การจัดการไฟล์และอุปกรณ์ I/O ต่างๆ แต่ผู้ใช้ทั่วๆไปจะรู้จักลีนุกซ์ผ่านทางแอพพลิเคชั่นและระบบอินเทอร์เฟสที่เขาเหล่านั้นเห็น (เช่น Shell หรือ X วินโดวส์) ถ้าคุณรันลีนุกซ์บนเครื่อง 386 หรือ 486 ของคุณ มันจะเปลี่ยนพีซีของคุณให้กลายเป็นยูนิกซ์เวอร์กสเตชันที่มีความสามารถสูง เคยมีผู้เทียบประสิทธิภาพระหว่างลีนุกซ์บนเครื่องเพนเทียม และเครื่องเวอร์กสเตชันของซันในระดับกลาง และได้ผลออกมาว่าให้ประสิทธิภาพที่ใกล้เคียงกัน และนอกจากแพลตฟอร์มอินเทลแล้ว ปัจจุบันลีนุกซ์ยังได้ทำการพัฒนาระบบเพื่อให้สามารถใช้งานได้บนแพลตฟอร์มอื่นๆด้วย เช่น DEC Alpha , Motorolla Power-PC , MIPS เมื่อคุณสร้างแอพพลิเคชันขึ้นมาบนแพลตฟอร์มใดแพลตฟอร์มหนึ่งแล้ว คุณก็สามารถย้ายแอพพลิเคชันของคุณไปวิ่งบนแพลตฟอร์มอื่นได้ไม่ยาก ลีนุกซ์มีทีมพัฒนาโปรแกรมที่ต่อเนื่อง ไม่จำกัดจำนวนของอาสาสมัครผู้ร่วมงาน และส่วนใหญ่จะติดต่อกันผ่านทางอินเทอร์เนต เพราะที่อยู่อาศัยจริงๆของแต่ละคนอาจจะอยู่ไกลคนละซีกโลกก็ได้ และมีแผนงานการพัฒนาในระยะยาว ทำให้เรามั่นใจได้ว่า ลีนุกซ์เป็นระบบปฏิบัติการที่มีอนาคต และจะยังคงพัฒนาต่อไปได้ตราบนานเท่านาน
ประวัติของลีนุกซ์
ลีนุกซ์ถือกำเนิดขึ้นในฟินแลนด์ ปี คศ. 1980 โดยลีนุส โทรวัลด์ส (Linus Trovalds) นักศึกษาภาควิชาวิทยาการคอมพิวเตอร์ (Computer Science) ในมหาวิทยาลัยเฮลซิงกิ ลีนุส เห็นว่าระบบมินิกซ์ (Minix) ที่เป็นระบบยูนิกซ์บนพีซีในขณะนั้น ซึ่งทำการพัฒนาโดย ศ.แอนดรูว์ ทาเนนบาวม์ (Andrew S. Tanenbaum) ยังมีความสามารถไม่เพียงพอแก่ความต้องการ จึงได้เริ่มต้นทำการพัฒนาระบบยูนิกซ์ของตนเองขึ้นมา โดยจุดประสงค์อีกประการ คือต้องการทำความเข้าใจในวิชาระบบปฏิบัติการคอมพิวเตอร์ด้วยเมื่อเขาเริ่มพัฒนาลีนุกซ์ไปช่วงหนึ่งแล้ว เขาก็ได้ทำการชักชวนให้นักพัฒนาโปรแกรมอื่นๆมาช่วยทำการพัฒนาลีนุกซ์ ซึ่งความร่วมมือส่วนใหญ่ก็จะเป็นความร่วมมือผ่านทางอินเทอร์เนต ลีนุสจะเป็นคนรวบรวมโปรแกรมที่ผู้พัฒนาต่างๆได้ร่วมกันทำการพัฒนาขึ้นมาและแจกจ่ายให้ทดลองใช้เพื่อทดสอบหาข้อบกพร่อง ที่น่าสนใจก็คืองานต่างๆเหล่านี้ผู้คนทั้งหมดต่างก็ทำงานโดยไม่คิดค่าตอบแทน และทำงานผ่านอินเทอร์เนตทั้งหมด ปัจจุบันเวอร์ชันล่าสุดของระบบลีนุกซ์ที่ได้ประกาศออกมาคือเวอร์ชัน 2.0.13 ข้อสังเกตในเรื่องเลขรหัสเวอร์ชันนี้ก็คือ ถ้ารหัสเวอร์ชันหลังทศนิยมตัวแรกเป็นเลขคู่เช่น 1.0.x,1.2.x เวอร์ชันเหล่านี้จะถือว่าเป็นเวอร์ชันที่เสถียรแล้วและมีความมั่นคงในระดับหนึ่ง แต่ถ้าเป็นเลขคี่เช่น 1.1.x, 1.3.x จะถือว่าเป็นเวอร์ชันทดสอบ ซึ่งในเวอร์ชันเหล่านี้จะมีการเพิ่มเติมความสามารถใหม่ๆลงไป และยังต้องทำการทดสอบหาข้อผิดพลาดต่างๆอยู่

Official mascot : little penguin

Linus Torvalds [Github]

Linus Torvalds [Britannica]
ทำไมถึงต้องเป็นลีนุกซ์ ข้อความบางส่วนจากหนังสือ "Running Linux" ของ Matt Welsh and Lar Kaufman เนื่องจากเป็นระบบปฏิบัติการที่ฟรี คุณสามารถจะขอจากผู้ที่มีลีนุกซ์ หรือจะดาวน์โหลดจากอินเทอร์เนต หรือบีบีเอสได้โดยไม่ผิดกฏหมาย เนื่องจากมีผู้นิยมใช้มาก ทำให้มีผู้นำลีนุกซ์ไปแก้ไขให้สามารถใช้งานได้บนตัวประมวลผลกลางหลากหลายตั้งแต่อินเทล, โมโตโรลา, ดิจิตอลอัลฟา, พาวเวอร์พีซี, ไปจนถึง สปาร์คของซัน นอกจากนี้ยังมีผู้พัฒนาโปรแกรมประยุกต์ออกมากันมากมาย มีประสิทธิภาพและมีคุณภาพสูง ลีนุกซ์เป็นระบบปฏิบัติการ 32 บิตเต็มรูปแบบ ซึ่ง สามารถจะดึงเอาพลังของเครื่องคอมพิวเตอร์ออกมาได้อย่างเต็มกำลัง ลีนุกซ์ถูกพัฒนา จากผู้พัฒนานับร้อยทั่วโลก แต่ Linus จะเป็นคนวางทิศทางในการพัฒนาด้วยตัวเอง มีคุณลักษณะของระบบ UNIX เต็มรูปแบบ และเป็นระบบหลากผู้ใช้ หลายงานอย่าง แท้จริง ลีนุกซ์มีระบบอินเทอร์เฟสแบบกราฟฟิคที่เรียกกันว่า X Windows ซึ่งเป็น มาตรฐานของระบบยูนิกซ์ทั่วๆไป และสามารถใช้ window manager ได้หลายชนิด ตามความต้องการ นอกจากนี้ยังสนับสนุนโปรโตคอลแบบ TCP/IP ,SLIP, PPP, UUCP และอื่นๆ คุณสามารถหาข้อมูลเพิ่มเติมได้ง่าย มีเอกสารหลากหลาย (กรุณาดูข้างล่าง) และผู้คนมากมายคอยสนับสนุนคุณผ่านอินเทอร์เนต หรือคุณอาจจะหาการสนับสนุนจากบริษัทที่ปรึกษา หรือจากบริษัทผู้จัดจำหน่ายระบบลีนุกซ์ก็ได้ มีเหตุผลหลายประการที่สามารถอธิบายได้ว่าทำไมผู้คนถึงชอบลีนุกซ์ แต่โดยส่วนตัวแล้ว น่าจะเป็นเพราะการพัฒนาอย่างรวดเร็วของลีนุกซ์ เนื่องจากคุณสามารถเห็นการเปลี่ยน แปลงตัวเคอร์เนล และการพัฒนาโปรแกรมประยุกต์ใหม่ๆออกมาอย่างรวดเร็ว ซึ่งไม่เคยพบเห็นในระบบที่แจกจ่ายฟรีแบบนี้ที่ไหนมาก่อนเลย ผู้ใช้งานและแอพพลิเคชันบนลีนุกซ์ บรรดาผู้ใช้งานบนลีนุกซ์มีได้หลากหลาย ไม่ว่าจะเป็นระดับเคอร์นัลแฮกเกอร์ ซึ่งจะทำการศึกษาเกี่ยวกับการทำงานของระบบปฏิบัติการในระดับลึก ไปจนถึงเอนด์ยูเซอร์หรือผู้ใช้ทั่วไป คุณสามารถใช้ลีนุกซ์ทำประโยชน์ได้หลายอย่าง ไม่ว่าจะเอาไว้ทำการศึกษาระบบยูนิกซ์ หรือคุณสามารถจะศึกษาตัวอย่างการเขียนรหัสโปรแกรมที่ดีได้ หากต้องการจะใช้แอพพลิเคชันบนดอส หรือบนวินโดว์ส ลีนุกซ์ก็จะมีดอสอีมูเลเตอร์ (DOSEMU) และวินโดว์สอีมูเลเตอร์ (WINE) ให้ สำหรับอีมูเลเตอร์ทั้งสองตัวนี้ยังอยู่ในขั้นทดสอบ และยังรันแอพพลิเคชันของดอสกับวินโดว์สได้ไม่มาก แต่ทีมพัฒนาโปรแกรมทั้งสองนี้ก็ยังทำการพัฒนาต่อไปเรื่อยๆ และตั้งเป้าหมายว่าจะต้องรันแอพพลิเคชันของดอสกับวินโดวส์ให้ได้มากที่สุดเท่าที่จะทำได้ ล่าสุดทางบริษัท Caldera ได้ทำการซื้อลิขสิทธ์ WABI 2.2 ซึ่งเป็นอีมูเลเตอร์สำหรับรันแอพพลิเคชันของวินโดว์ส ที่ใช้ในเวอร์กสเตชันของซันมาใส่ในผลิตภัณฑ์ OpenLinux ของตน
11.1 ประวัติความเป็นมา (History) ระบบปฏิบัติการเก่าแก่ที่ถูกพัฒนาขึ้นในปี 1969 โดยบริษัทเอทีแอนด์ที (AT&T หรือ American Telephone & Telegraph) เพื่อใช้กับเครื่องมินิคอมพิวเตอร์ โดยแรกเริ่มจะถูกใช้เพื่องานวิจัยหรือเพื่อการศึกษาในมหาวิทยาลัยเท่านั้น ต่อมาได้ถูกนำมาใช้ในทางธุรกิจและเป็นที่นิยมแพร่หลายมาจนถึงปัจจุบัน เนื่องจากยูนิกซ์เป็นระบบปฏิบัติการสำหรับผู้ใช้หลายคน(Multi-User) และสนับสนุนการทำงานแบบหลายงาน (Multi-task) ที่เปิดโอกาสผู้ใช้สามารถรันงานได้มากกว่าหนึ่งงานในเวลาเดียวกัน และเนื่องจากเป็นระบบปฏิบัติการที่ถูกพัฒนาขึ้นด้วยภาษาซี ไม่ใช่แอสเซมบลี ดังนั้นจึงมีคุณสมบัติที่เด่นกว่าระบบปฏิบัติการอื่น ๆ คือ การไม่ยึดติดอยู่กับฮาร์ดแวร์ (Hardware independent) ดังนั้นจึงสามารถใช้งานยูนิกซ์ได้กับเครื่องคอมพิวเตอร์เกือบทุกแบบทุกประเภทตั้งแต่ไมโครคอมพิวเตอร์ มินิคอมพิวเตอร์ไปจนถึงเมนเฟรมคอมพิวเตอร์ และนอกจากนี้ยังมีการเพิ่มเติมความสามารถทางด้านการเชื่อมต่อเข้ากับระบบเครือข่ายอีกด้วย
หลายบริษัทได้หันมาสนใจยูนิกซ์ AT&T จึงได้ออกใบอนุญาตให้กับบริษัทผู้ผลิตมินิคอมพิวเตอร์และเครื่องเวอร์กสเตชันทั้งหลาย เป็นผลให้ยูนิกซ์ได้รับการปรับปรุงแก้ไขและถูกขายให้กับบริษัทอื่น ๆ อีกหลายบริษัท ซึ่งก็ได้มีการพัฒนายูนิกซ์เวอร์ชันใหม่ ๆ ออกมามากมาย ตัวอย่างเช่น ยูนิกซ์เวอร์ชัน AIX จากบริษัทไอบีเอ็ม Solaris จากบริษัทซันไมโครซิสเต็ม NextStep จากบริษัท Next หรือ Motif จากบริษัทไอบีเอ็ม ดิจิตัลอีควิบเมนท์ และฮิวเลทท์แพ็คการ์ด (Hewlett-Packard) ที่ร่วมกันพัฒนา Motif ขึ้นมา หรือแม้แต่ในปัจจุบันที่มีกลุ่มผู้คนจากทั่วโลกได้ร่วมกันพัฒนายูนิกซ์เวอร์ชันสำหรับไมโครคอมพิวเตอร์ที่เรียกว่า ไลนักซ์หรือลีนุกซ์ (Linux) ออกมา ซึ่งเกิดจากการแลกเปลี่ยนความเห็นกันบนอินเตอร์เน็ตที่ต้องการจะพัฒนายูนิกซ์สำหรับเครื่องไมโครคอมพิวเตอร์ ที่มีประสิทธิภาพเท่ากับเครื่องขนาดใหญ่ ซึ่งจะเป็นการลดต้นทุนและค่าใช้จ่ายกว่าการใช้ยูนิกซ์สำหรับเครื่องขนาดใหญ่
ยูนิกซ์ยังเป็นระบบปฏิบัติการที่มีเครื่องมือ (tools) หรือโปรแกรมอำนวยความสะดวก (utilities) และเซลล์ (shell) ที่ช่วยนักเขียนโปรแกรมสามารถพัฒนาโปรแกรมประยุกต์บนยูนิกซ์ได้อย่างมีประสิทธิภาพ นอกจากนี้ โครงสร้างระบบไฟล์ยังเหมือนกับระบบปฏิบัติการดอส แต่คำสั่งอาจแตกต่างกันไปบ้าง
ข้อด้อยของยูนิกซ์คือ ผู้ใช้ส่วนใหญ่จะต้องจดจำคำสั่งต่าง ๆ ของยูนิกซ์ ซึ่งค่อนข้างยากต่อการจดจำ แต่ในปัจจุบันผู้ผลิตเครื่องที่ใช้ระบบปฏิบัติการยูนิกซ์ ก็ได้พัฒนาโปรแกรมที่มีลักษณะเป็น GUI (Graphic User Interface) จึงช่วยให้การใช้งานยูนิกซ์ง่ายขึ้น นอกจากนี้การที่ยูนิกซ์ถูกพัฒนาเป็นหลายเวอร์ชันจากหลายบริษัท ซึ่งแต่ละเวอร์ชันอาจมีข้อแตกต่างกันบ้างเล็กน้อย จึงทำให้มีผู้มองว่ายูนิกซ์ไม่มีความเป็นมาตรฐานเดียวกัน
แต่เนื่องจากยูนิกซ์เป็นระบบปฏิบัติการที่สามารถใช้งานได้กับเครื่องคอมพิวเตอร์หลายประเภทหลายแบบ ดังนั้นจึงเป็นระบบปฏิบัติการที่นิยมใช้มากในระบบเครือข่ายขนาดใหญ่ที่มีการเชื่อมเครื่องคอมพิวเตอร์ แต่ละประเภทเข้าด้วยกันในลักษณะของเครือข่ายอินเตอร์เน็ต
จุดเด่นของ LINUX
1. เป็นระบบที่ใช้ได้ฟรี
2. เป็นระบบปฏิบัติการแบบเปิด
3. คอมแพติเบิลกับ Unix
4. ทำงานได้บน PC ทั่วไป
5. ทำงานร่วมกับ DOS และ Windows ได้
6. ใช้แฟ้มร่วมกับระบบปฏิบัติการอื่นได้
7. มีความสามารถด้าน network หลายรูปแบบ
8. มีประสิทธิภาพสูงในการใช้ Hardware
9. Kernel มีประสิทธิภาพสูง
10. มีการใช้ Dynamic linked shared libraries
11. การช่วยเหลือเมื่อเกิดปัญหา
11.2 หลักการออกแบบ 1. Direct blocks
2. Indirect blocks
3. Double indirect blocks
4. Triple indirect blocks
11.3 ระบบแฟ้ม (File System) http://www.cs.wisc.edu/~bart/537/lecturenotes/s24.html
The file descriptor information has to be stored on disk, so it will stay around even when the OS does not.
- In Unix, all the descriptors are stored in a fixed size array on disk. The descriptors also contain protection and accounting information.
- A special area of disk is used for this (disk contains two parts: the fixed-size descriptor array, and the remainder, which is allocated for data and indirect blocks).
- The size of the descriptor array is determined when the disk is initialized, and cannot be changed. In Unix, the descriptor is called an i-node, and its index in the array is called its i-number. Internally, the OS uses the i-number to refer to the file.
- When a file is open, its descriptor is kept in main memory. When the file is closed, the descriptor is stored back to disk.



ext2 : the standard in Linux
ext3 : further development of ext2 (currently beta status), will be able to do journaling

General overview of the Linux file system
http://www.faqs.org/docs/linux_intro/sect_03_01.html
ls -l แสดงจำนวน folder ในแต่ละห้อง
ls -i แสดง inode ของแต่ละแฟ้ม
df -h แสดงพื้นที่แต่ละ partition

ภาพแสดงระบบแฟ้มของ ext2 ในระบบปฏิบัติการ linux
1. Direct blocks
2. Indirect blocks
3. Double indirect blocks
4. Triple indirect blocks
11.4 คำสั่ง (Command)
    คำสั่งน่ารู้ในระบบปฏิบัติการ Linux บน Android
  1. คำสั่ง id
  2. คำสั่ง pwd
  3. คำสั่ง ls
  4. คำสั่ง ping
  5. คำสั่ง netstat
  6. คำสั่ง df
  7. คำสั่ง du
  8. คำสั่ง ps
  9. คำสั่ง kill
  10. คำสั่ง top
  11. คำสั่ง date
  12. คำสั่ง set (env)
  13. คำสั่ง service
  14. คำสั่ง mount, umount
  15. คำสั่ง cd, mkdir, rmdir
  16. คำสั่ง cp, rm, mv
  17. คำสั่ง cat
  18. คำสั่ง chmod
  19. คำสั่ง chown
  20. คำสั่ง grep
ความรู้เบื้องต้นเกี่ยวกับลีนุกซ์ที่ http://www.thaiall.com/isinthai
11.5 การรักษาความปลอดภัย (Security) 1. Firewall
Firewall คือ ฮาร์ดแวร์และซอฟต์แวร์ที่องค์กรต่างๆมีไว้เพื่อป้องกันเครือข่ายคอมพิวเตอร์ภายในของตนจากอันตรายที่มาจากเครือข่ายคอมพิวเตอร์ภายนอก เช่น ผู้บุกรุก หรือ Hacker Firewall จะอนุญาตให้เฉพาะข้อมูลที่มีคุณลักษณะตรงกับเงื่อนไขที่กำหนดไว้ผ่านเข้าออกระบบเครือข่ายภายในเท่านั้น อย่างไรก็ดี Firewall นั้นไม่สามารถป้องกันอันตรายที่มาจากอินเทอร์เน็ตได้ทุกรูปแบบ ไวรัสก็เป็นหนึ่งในนั้น ดังนั้นจึงไม่สามารถรับรองได้ว่าความปลอดภัยหรือความลับของข้อมูลจะมีอยู่ร้อยเปอร์เซนต์ถึงแม้ว่าจะมีการใช้ Firewall แล้วก็ตาม
เครื่องบริการรักษาความปลอดภัยของข้อมูล มีหลายที่หลายด้าน เช่น กรองแพ็กเกจ เฝ้าตรวจ ตรวจสอบการใช้ bandwidth หรือเก็บข้อมูลที่ local host ใช้งานบ่อย ไว้ให้ local host อื่น ๆ เรียกใช้ด้วยความเร็ว ซึ่งหลักการของ firewall ที่สำคัญมีดังนี้
1. ให้บริการเฉพาะที่ต้องการเปิด
2. ให้บริการใครบ้าง
3. ให้สมาชิกในแต่ละกลุ่ม สามารถใช้ได้เฉพาะที่เหมาะสม
4. กำหนดความปลอดภัยอย่างไร ให้แต่ละบริการ
Firewall ประกอบด้วย
1. Package filters เป็นหน้าที่ของ router ทำหน้าที่กรอง IP(Internet Protocol) TCP(Transmission Control Protocol) และ UDP(User Datagram Protocol) ถ้าข้อมูลที่ส่งมาไม่เป็นไปตามกฎ ก็จะเข้าเครือข่ายไม่ได้
2. Proxy server ทำให้เครื่องภายนอกทั้งหมดไม่รู้จักเครื่องภายในเครือข่าย เพราะทุกกิจกรรมต้องผ่านการแปลง IP ของ Proxy server
A firewall is a set of related programs, located at a network gateway server, that protects the resources of a private network from users from other networks. (The term also implies the security policy that is used with the programs.) An enterprise with an intranet that allows its workers access to the wider Internet installs a firewall to prevent outsiders from accessing its own private data resources and for controlling what outside resources its own users have access to.
Basically, a firewall, working closely with a router program, filter all network packet to determine whether to forward them toward their destination. A firewall also includes or works with a proxy server that makes network requests on behalf of workstation users. A firewall is often installed in a specially designated computer separate from the rest of the network so that no incoming request can get directly at private network resources.
There are a number of firewall screening methods. A simple one is to screen requests to make sure they come from acceptable (previously identified) domain name and Internet Protocol addresses. For mobile users, firewalls allow remote access in to the private network by the use of secure logon procedures and authentication certificates.
2. IDS (Intrusion Detection Systems)
IDS คือระบบตรวจสอบการบุกรุกเข้าสู่ระบบ ตรวจสอบมักวางไว้ทั้งหน้า firewall และหลัง firewall เพื่อตรวจสอบการบุกรุก และตรวจสอบผลการใช้ firewall ว่ากรองได้มากน้อยเพียงใด ตัวอย่างการบุกรุกเช่น DoS, Port scan หรือ Code red เป็นต้น สำหรับโปรแกรมที่นิยมนำมาใช้ศึกษาคือ BlackIce ซึ่งหา download ได้ไม่ยากนัก
3. Crack
คือ การเปลี่ยนการทำงานของโปรแกรม ให้ผิดไปจากที่ผู้สร้างโปรแกรมสร้างขึ้น เช่น ผู้สร้างโปรแกรมใส่รหัสผ่าน ผู้ใช้ต้องซื้อรหัสผ่านมาใช้ แต่ cracker จะแก้โปรแกรมโดยการยกเลิกการตรวจสอบรหัสผ่านนั้น สำหรับโปรแกรมที่ถูกนำมาใช้ เช่น WinHex และ SoftICE เป็นต้น
4. Hack
คือ การเข้าไปในระบบที่ผู้ทำการ hack ไม่มีสิทธิ์ การเข้าไปในเครื่องบริการที่มีระบบรักษาความปลอดภัย เป็นเป้าหมายสำคัญของ hacker เมื่อเข้าไปได้แล้วอาจกระทำการใด ๆ ทั้งที่เป็นประโยชน์ หรือโทษ กับระบบ ก็ขึ้นอยู่กับ hacker แต่ละคน ตัวอย่าง URL ที่ใช้ hack IIS บน Win 2000 คือ
http://localhost/scripts/..%255c../winnt/system32/cmd.exe?/c dir c:\
ผลการ hack ครั้งนี้คือการแสดงรายชื่อแฟ้มใน drive C ของ web server หรือหาโปรแกรม xperl.sh จากเว็บเผยแพร่ข้อมูลการ hack มาทดสอบใน Redhat 6.2 ซึ่งผลการ run xperl.sh จะทำให้ user ธรรมดา กลายเป็น root ทันที

ความปลอดภัยบนเครือข่าย (จาก doothai.com)
เช้ามืดวันหนึ่งของฤดูหนาว ในขณะที่ผู้คนกำลัง หลับไหลใต้ผ้าห่มผืนอุ่นอย่างสบาย อากาศในกรุงเทพฯ เวลานี้ช่างน่านอนเสียจริง แต่สำหรับเด็กชายอ๊อด เขากลับนั่งอยู่หน้าจอคอมพิวเตอร์ ที่ต่อเข้ากับอินเตอร์เน็ต ท่ามกลางความมืด ก็มีเพียงแสงจากมอนิเตอร์ ที่ฉาดฉายให้เห็นรอยยิ้มน้อยๆ ของเด็กชาย ในวัยซุกซนคนนี้ เมื่อมองไปยังหน้าจอคอมพิวเตอร์ เด็กน้อยกำลังพยายามล็อกอิน เข้าไปยัง เครื่องคอมพิวเตอร์ของ บริษัทไฟแนนซ์แห่งหนึ่ง ที่ถูกทางการปิดไป เด็กน้อยกำลังพยายามเข้าไป แก้ไขไฟล์การผ่อนชำระรถยนต์ เพื่อที่จะทำให้ข้อมูลรถของพ่อเขา หายไปจากระบบ รถที่ค้างชำระมากว่า 6 เดือน และรอโดนยึด จะได้ปราศจากตัวตนอีกต่อไป การกระทำของหนูน้อยคนนี้ คนทั่วๆไป มักจะคิดว่า และขนานนามเขาว่า Hacker แท้จริงแล้ว ชีวิตของ Hacker นั้นเป็นอย่างไร
อันที่จริงแล้ว ความเข้าใจของคนทั่วไป ที่มีต่อ Hacker นั้น ไม่ค่อยจะถูกต้องเท่าไรนัก แท้จริงแล้วในหมู่ของ Hacker เองนั้น กลับไม่ยอมรับ การกระทำแบบเจ้าหนูคนนี้ Hacker นิยามคนแบบนี้ว่า Cracker เพราะ Hacker นั้นไม่นิยม การหาประโยชน์ บนความเดือดร้อนของคนอื่น ในขณะที่ Cracker นั้น ใช้ประโยชน์จากความชาญฉลาด ของตนเอง เพื่อให้ได้มา ซึ่งสิ่งที่ตนเองต้องการ Hacker ต้องการทำในสิ่งที่เป็นการ ปลดโซ่ตรวน และพันธนาการ เพื่อความเป็นอิสระของตนเอง และผู้อื่น จากสิ่งที่พวกเขาคิดว่าไม่ถูกต้อง ทั้งหลาย
Hacker เชื่อในเรื่องของ พลังและอำนาจ ที่เขาสามารถควบคุม Cyberspace ได้ พวกเขาชอบที่จะค้นหา ความคิด วิธีการใหม่ๆ ที่จะปลดพันธนาการทั้งหลาย ที่ผูกมัดพวกเขาอยู่ เช่น พวกเขาเชื่อว่า ค่าโทรศัพท์ไปต่างประเทศ หรือต่างจังหวัด แพงเกินไป เนื่องจาก พวกผูกขาด (monopoly) อย่างองค์การโทรศัพท์ หรือ บริษัทเอกชน ขูดเลือดจากประชาชน คิดกำไรเกินควร พวกเขาจะคิดหาวิธีที่จะใช้โทรศัพท์ทางไกลฟรี เช่นการหา access code ที่ทำให้ควบคุมชุมสายได้ การต่อ oscillator เข้ากับสายโทรศัพท์เพื่อสร้างสัญญาณ Hacker ยินดีจ่ายค่าโทรศัพท์ท้องถิ่น ซึ่งมีราคาถูก แต่ไม่ยินยอมจ่ายค่าทางไกล เพราะพวกเขา คิดว่าราคาไม่ยุติธรรม และหากพวกเขาทำสำเร็จ พวกเขาจะไม่รีรอที่จะแพร่ขยาย ภูมิความรู้นี้ ไปสู่ Hacker คนอื่นๆ พวก Hacker จึงมีสังคมที่ค่อนข้างจะแข็งแกร่ง บางคนที่ไม่ ค่อยรู้เรื่องเกี่ยวกับ Hacker ก็มักจะ เสียดสีว่าเป็นพวก Digital Hippy บ้าง เป็น พวก Cyberpunk บ้าง ความจริง Hacker แตกต่างจากคนเหล่านั้น โดยสิ้นเชิง
Hacker เป็นคนที่มีความอุตสาหะ ใฝ่รู้ เป็นพื้นฐาน นอกจากนั้น เขายังเป็นคนที่ รักสันติ รังเกียจความรุนแรง และความเห็นแก่ตัว Hacker ชอบความท้าทาย พวกเขาชอบ ที่จะได้มาซึ่งความสามารถในการควบคุม ทั้งตัวเขาเอง และ Cyberspace ที่เขาอยู่ เขาพยายามชี้นำ Cyberspace เช่น ถ้าเขาเห็นว่า รัฐบาลอินโดนีเซีย ทำไม่ถูกในเรื่อง ติมอร์ตะวันออก เขาก็เข้าไปแก้ Homepage ของรัฐบาลอินโดนีเซียให้ มีข้อมูลที่ถูกต้อง Hacker ต่อต้านการละเมิดสิทธิมนุษยชน เขาเจาะเข้าไปใน computer ของรัฐบาล อินโดนีเซีย เพื่อลงโทษที่อินโดนีเซียทำไม่ถูกในเรื่องนี้ Hacker ทำตัวเหมือน Robinhood เช่น เข้าไปโอนเงินของ บริษัทน้ำมัน เพื่อไปยังกองทุนเด็ก
Hacker เชื่อว่า การรวมตัวของพวกเขา จะนำเสรีภาพมาสู่คนที่ไร้โอกาสได้ เขารวมตัวกันเพื่อกดดันกลุ่มที่เขาคิดว่า เห็นแก่ตัว และทำไม่ถูกต้อง ดังนั้นเราจึงไม่ค่อยเห็น Hacker เจาะระบบขององค์กร ที่เป็นสาธารณะอย่างสถาบันศึกษานัก ในขณะที่ องค์กรรัฐบาล องค์กรทหาร หรือ บริษัทขนาดใหญ่ ล้วนตกเป็นเป้าหมายของบรรดา Hacker
ความสนุก เป็นสิ่งที่ Hacker ต้องการนอกเหนือ จากการที่ได้ต่อต้าน การผูกมัด หรือความเห็นแก่ตัวของผู้ที่มั่งคั่ง Hacker อาจจะเพลิดเพลิน จากการที่เขาสามารถแกะ เลขบัตรเครดิต ทั้งที่เขาจะไม่เคยนำมันไปใช้เลย Hacker เป็นผู้ที่เห็นใจผู้อื่น เขาจึงไม่อาจนำ เลขบัตรเครดิตไปใช้ประโยชน์ เขาเพียงแต่สนุกที่สามารถแกะ หรือ ถอดรหัสให้ได้มันมา
5. Law และ License
การปฏิรูปกฎหมายเทคโนโลยีสารสนเทศ (Information Technology Law) มีกฎหมายบังคับใช้ 6 ฉบับ
1. กฎหมายธุรกรรมอิเล็กทรอนิกส์ (Electronic Transaction Law)
2. กฎหมายลายมือชื่อทางอิเล็กทรอนิกส์ (Electronic Signatures Law)
3. กฎหมายอาชญกรรมทางคอมพิวเตอร์ (Computer Crime Law)
4. กฎหมายการโอนเงินทางอิเล็กทรอนิกส์ (Electronic Fund Transfer Law)
5. กฎหมายการคุ้มครองข้อมูลส่วนบุคคล (Data Protection Law)
6. กฎหมายลำดับรองของรัญธรรมนูณมาตรา 78 เกี่ยวกับการจัดโครงสร้างพื้นฐานสารสนเทศให้ทั่วถึง และเท่าเทียมกัน (Universal Access Law)
11.6 ระบบเครื่องบริการ 1. Web server
คือ บริการ HTTP(HyperText Transfer Protocol) เพื่อให้ผู้ใช้สามารถอ่านข้อมูล ทั้งภาพ และเสียง จากเครื่องบริการ ผ่าน Browser เช่นบริการ http://www.thaiall.com หรือ http://localhost เป็นต้น
เครื่องบริการ ที่รอรับคำร้องขอจาก web browser ข้อมูลที่จะส่งไปอาจเป็นเว็บเพจ ภาพ หรือเสียง เป็นต้น สำหรับโปรแกรมที่ได้รับความนิยม ให้นำมาเปิดบริการ web คือ Apache web server หรือ Microsoft web server
DNS server คืออะไร
Domain Name System server เป็นเครื่องบริการแปลงชื่อเว็บเป็นหมายเลข IP ซึ่งการแปลงชื่อนี้อาจเกิดในเครื่อง local เอง จาก cache ในเครื่อง local หรือจากเครื่องบริการของผู้ให้บริการ
2. FTP server
FTP(File Transfer Protocol)
คือ เครื่องบริการการรับ-ส่งข้อมูล ซึ่งเปิดให้ผู้ใช้ที่เป็นสมาชิกเข้าใช้ แต่บางเครื่องอาจเป็นให้ผู้ใช้ทั่วไปเข้าใช้ โดยใช้รหัสสมาชิก anonymous ซึ่งเป็นที่รู้กันทั่วโลกว่าเป็นรหัสผู้ใช้สำหรับผู้ที่ไม่ประสงค์ออกนาม
FTP คือโปรโตคอลสำหรับถ่ายโอนข้อมูล โดยเครื่องที่เปิดบริการ FTP จะเปิด TCP port 21 ไว้ การเชื่อมต่อของ FTP มี 2 mode
1. FTP standard mode คือ การเชื่อมต่อที่ server เชื่อมต่อกับ client ผ่าน port 20 เป็น Out going port ส่วน port ฝั่ง client จะแล้วแต่ตกลงกัน แต่ถ้า client มี firewall ที่ไม่บริการ ftp ก็จะติดต่อไม่ได้
2. FTP passive mode คือ การเชื่อมต่อที่ client เป็นผู้เชื่อมต่อไปยัง server เพื่อใช้หมายเลข port ที่แล้วแต่จะตกลงในการส่งข้อมูล
3. Mail server
คือ เครื่องบริการรับ-ส่งจดหมายสำหรับสมาชิก บริการที่มีให้ใช้เช่น ส่งจดหมาย รับจดหมาย ส่ง attach file หรือการมี address book เป็นต้น ตัวอย่าง mail server ที่เป็นที่รู้จักทั่วไป เช่น hotmail.com หรือ thaimail.com เป็นต้น
SMTP server คืออะไร
Simple mail transfer protocol server คือเครื่องบริการส่ง e-mail ไปยังเครื่องบริการอื่น ๆ สำหรับ SMTP ส่วนใหญ่จะไม่ยอมให้คนนอกองค์กร หรือ IP ที่อยู่นอกองค์กรใช้งาน SMTP เพราะอาจมีคนในโลกใบนี้มาแอบใช้ ทำให้บริการ SMTP ทำงานหนักให้กับคนภายนอกโดยไม่เกิดประโยชน์ใด ๆ หากเครื่องของท่านบริการ SMTP แก่คนนอก แสดงว่าไม่ได้กำหนด RELAY ไว้ เพราะชาวโลกอาจใช้เครื่องมือค้นหา "OPEN RELAY" แล้วพบว่าเครื่องของท่านเป็นเครื่องหนึ่งที่ไม่ได้ทำ RELAY ไว้ก็ได้ และที่อันตรายคือ อาจมีชาวโลกบางคนใช้โปรแกรม MOBI+ กำหนดให้เครื่อง SMTP ของท่าน bomb mail ไปยัง mail box ของเป้าหมาย และหมายเลขเครื่องที่โจมตี ก็คือ เครื่อง SMTP ของท่านนั่นเอง
POP server คืออะไร
Post office protocol server คือบริการรับ-ส่งเมลจาก mail server กับเครื่องของสมาชิก บริการนี้ ทำให้สามารถอ่าน mail ด้วยมือถือ หรือ PDA แต่ถ้าท่านใช้ mail ของ thaimail.com จะเป็น web-based mail ที่เปิดอ่าน e-mail ได้จาก web เท่านั้น จะเปิดด้วย outlook หรือ pda ไม่ได้
4. Database server
คือ เครื่องบริการข้อมูล ที่เปิดให้ผู้ใช้เพิ่มข้อมูล ลบ หรือแก้ไข สำหรับโปรแกรมบริการระบบฐานข้อมูลที่นิยมใช้ ได้แก่ MYSQL หรือ Microsoft Access เป็นต้น โดยผู้ใช้ต้องเขียนโปรแกรมสั่งประมวลผล ปรับปรุงข้อมูล หรือนำข้อมูลในส่วนที่ตนเองมีสิทธิ์ ไปใช้ตามต้องการ
5. Proxy หรือ NAT server
พร็อกซี่ เซิร์ฟเวอร์(Proxy server)
คือ เครื่องที่อยู่ตรงกลางระหว่างเครื่องลูกกับอินเทอร์เน็ต เพราะเครื่องลูกในเครือข่ายทั้งหมดจะไม่ติดต่อกับอินเทอร์เน็ตโดยตรง เมื่อเครื่องลูกเรียกดูข้อมูล จะส่งคำขอให้เครื่อง Proxy server และค้นหาข้อมูลนั้นใน เครื่อง Proxy server ว่ามีหรือไม่ หากมีก็จะส่งกลับไปให้เครื่องลูก โดยไม่ออกไปหาจากแหล่งข้อมูลจริง เพราะข้อมูลนั้นถูกเก็บในหน่วยความจำของเครื่อง Proxy server แล้ว จึงเป็นการลดภาระของระบบเครือข่าย ที่จะออกไปนอกเครือข่ายโดยไม่จำเป็น จะเห็นว่า Proxy server ทำหน้าที่เป็น Cache server ทำหน้าที่เก็บข้อมูลที่ผู้ใช้เคยร้องขอ หากมีการร้องขอข้อมูลที่ไม่มีใน proxy ก็จะออกไปหาในอินเทอร์เน็ต แล้วนำกลับมาเก็บใน cache เมื่อผู้ใช้ท่านอื่นต้องการ ก็จะนำจาก cache ไปใช้ได้ทันที สำหรับ Proxy server ที่นิยมใช้ใน Linux เช่น Squid มักให้บริการที่ port 3128 เป็นต้น
Proxy server คือ เครื่องบริการที่ทำหน้าที่แปลง address ของเครื่องต้นทางเมื่อมี package ส่งไปยัง local host หรือแปลง address ปลายทาง เมื่อมี package ส่งไปยัง localhost โดยลักษณะที่ชัดเจนของ proxy server คือการทำ caching ทำให้ local host เข้าถึงข้อมูล ซ้ำ ๆ กันได้โดยตรงจากเครื่องบริการ ใน local network ไม่ต้องออกไปนอกเครือข่ายโดยไม่จำเป็น
NAT (Network Address Translation)
คือ คุณสมบัติหนึ่งของการแจก IP หรือการทำ IP Sharing เพราะในเครือข่ายขนาดใหญ่จะใช้ Local IP หรือ Fake IP แต่จะมี Real IP อยู่บางส่วน โปรแกรมเครื่องบริการบางโปรแกรมมีหน้าที่กำหนด Local IP ให้เครื่องลูก เมื่อเครื่องลูกต้องการออกไปอ่านข้อมูลจากอินเทอร์เน็ต ก็จะใช้ Real IP ออกไป จากลักษณะดังกล่าง อาจทำให้เครื่องที่เป็น NAT server ทำหน้าที่เป็น Firewall ปกป้องเครื่องลูก เพราะจะไม่มีใครทราบ Local IP ของเครื่องในองค์กรได้ เนื่องจากการออกไปสู่อินเทอร์เน็ตจะใช้ IP ของ NAT server เสมอ จึงไม่มีใครเจาะเข้าสู่เครื่องลูกได้โดยตรง การเป็น NAT server อาจไม่จำเป็นต้องใช้คุณสมบัติ Cache server ก็ได้ เพราะเครื่องที่เป็น Proxy server ที่มีศักยภาพต่ำ จะล่มได้เร็วกว่าเครื่องที่ทำหน้าที่เป็น NAT เพียงอย่างเดียว สำหรับโปรแกรมที่ทำหน้าที่เป็น NAT server เช่น WinGate, WinRoute, WinProxy หรือ ICS(Internet Connection Sharing) เป็นต้น
6. DHCP server
DHCP(Dynamic Host Configuration Protocol)
คือ โปรโตคอลที่ใช้ในการกำหนด IP Address อัตโนมัติแก่เครื่องลูกข่ายบนระบบ ที่ติดตั้ง TCP/IP สำหรับ DHCP server มีหน้าที่แจก IP ในเครือข่ายไม่ให้ซ้ำ เป็นการลดความซ้ำซ้อน เมื่อเครื่องลูกเริ่ม boot ก็จะขอ IP address, Subnet mark, หมายเลข DNS และ Default gateway
ขั้นตอนการเชื่อมต่อของเครื่องลูกกับ DHCP server
1. เครื่องลูกค้นหาเครื่อง DHCP server ในเครือข่าย โดยส่ง DHCP discover เพื่อร้องขอ IP address
2. DHCP server จะค้นหา IP ที่ว่างอยู่ในฐานข้อมูล แล้วส่ง DHCP offer กลังไปให้เครื่องลูก
3. เมื่อเครื่องลูกได้รับ IP ก็จะส่งสัญญาณตอบกลับ DHCP Request ให้เครื่องแม่ทราบ
4. DHCP server ส่งสัญญาณ DHCP Ack กลับไปให้เครื่องลูก เพื่อแจ้งว่าเริ่มใช้งานได้
11.7 ปฏิบัติการฝึกใช้คำสั่งในระบบปฏิบัติการ Redhat Linux - ฝึกติดตั้งระบบปฏิบัติการ linux และให้บริการแบบต่าง ๆ
- ฝึกใช้งานคำสั่งต่อไปนี้
จากหนังสือ Korn shell โดย john valley แปลโดย ชนินทร์ เชาวมิตร 2538
ar at atq atrm awk banner basenamebatch bdiff bfs cal calendar cancel cat chgrp chmod chown clear cmp col comm compress cp cpio crontab crypt csh csplit ct ctags cu cutdate dc dd deroff df diff dircmp dirname disable du echo ed edit egrep enable env ex expr exstr face factor false fgrep file find finger fmli fmt fmtmsg fold ftp gcore gencat getopt getoptcvt gettxt grep group hashcheck hashmake head iconv id ipcrm ipcs ismpx join jterm jwin kill ksh last layers line listusers ln login logname lp lpstat ls mail mailalias mailx makekey mesg mkdir mkmsgs more mv nawk newform newgrp news nice nl nohup notify od pack page pcat passwd paste pg pr printf priocntl ps pwd rcp relogin rlogin rm rmdir rsh ruptime rwho sag sar script sdiff sed sh shl sleep sort spell spellin split srchtxt strchg strconf strings stty su sum sync tabs tail talk tar tee telnet test tftp timex touch tputtr true truss tty uname uncompress uniq units unpack vacation vi wc who whois write xargs zcat
- ค้นคว้าข้อมูลเกี่ยวกับ ระบบปฏิบัติการ Linux จากอินเทอร์เน็ต แล้วทำรายงาน และส่งตัวแทนนำเสนอหน้าชั้น
เล่าเรื่องทดสอบ Virtualbox Blog : ทดสอบ virtualbox + mint13 + debian + teamviewer + winxp + win7 + lan + wi-fi
เป้าหมาย ต้องการใช้ linux ใน virtualbox บนเครื่องวินโดว์ทั้ง xp และ win7
ทั้งใช้สายและไม่ใช้สาย พบปัญหาแตกต่างกันไป
กรณีทั้ง 3 เครื่องนี้ ก็มีวิธีแก้ไขต่างกันไป ดังนี้
A. เหตุที่เกิด กรณี LAB Winxp
1. ต้องการแชร์ mint13 ใน virtualbox กับเครื่องในห้อง lab เป็น lan บน winxp
2. หลังทำ bridge network ระหว่าง virtualbox + network conection
จะได้ ip เดียว เป็นการรวม ip ของ virtualbox และ network connection
3. เข้าไปกำหนดใน virtualbox network : mint13 ให้ใช้ bridge ที่สร้างขึ้น
4. หลัง start mint13 ได้สั่ง #apt-get install telnetd
5. ทดสอบ telnet ทั้งใน mint13 ใน windows และจากต่างเครื่อง ไม่พบปัญหา

B. เหตุที่เกิด กรณี Office Win7
1. ต้องการแชร์ mint13 ใน virtualbox กับเครื่องในห้อง office เป็น lan บน win7
2. หลังทำ bridge network ระหว่าง virtualbox + network conection
จะได้ ip 2 เบอร์ คือ network connection กับ bridge network ต่างกัน
3. เข้าไปกำหนดใน virtualbox network : mint13 ให้ใช้ bridge ที่สร้างขึ้น
4. หลัง start mint13 ได้สั่ง #apt-get install telnetd
5. ทดสอบ telnet เข้า ip ของ virtual network ไม่พบปัญหา

C.1 เหตุที่เกิด กรณี Wi-fi Winxp
1. ต้องการแชร์ debian ใน virtualbox กับเครื่อง notebook เป็น wi-fi บน winxp
2. หลังทำ bridge network ระหว่าง virtualbox + network conection
จะได้ ip 2 เบอร์ คือ network connection กับ bridge network ที่ต่างกัน
แต่ใน winxp ไม่ได้ กำหนด ip อีกเบอร์ให้อัตโนมัติ แล้วระบบฟ้องว่า ip ชนกัน จึงต้องเข้าไปแก้ไข
ที่แก้ไขได้คือ ip ของ bridge network เมื่อกำหนด ip ใหม่ก็พบว่าระบบไม่ฟ้อง
แต่ใน debian เข้า net ไม่ได้ เพราะ bridge ที่สร้างขึ้นไม่ได้เชื่อมกับเครือข่ายโดยตรง
3. เข้าไปกำหนดใน virtualbox network : debian ให้ใช้ bridge ที่สร้างขึ้น
4. ทดสอบ telnet เข้า ip ของ virtual network ไม่พบปัญหา แต่เข้าจากต่างเครื่องไม่ได้

C.2 การแก้ไข (เริ่มต้นใหม่)
1. เข้า debian ใน virtualbox แบบผ่าน nat network (ไม่ใช้ bridge)
2. หลัง start debian ได้สั่ง #apt-get install telnetd
3. สั่ง power-off debian เพื่อเชื่อมต่อเครือข่ายให้สำเร็จบน winxp
4. หลังทำ bridge network ระหว่าง virtualbox + network conection
จะได้ ip 2 เบอร์ คือ network connection กับ bridge network ที่ต่างกัน
แต่ wi-fi บน winxp ไม่ได้กำหนด ip อีกเบอร์ให้อัตโนมัติ แล้วระบบฟ้องว่า ip ชนกัน จึงต้องเข้าไปแก้ไข
ที่แก้ไขได้คือ ip ของ bridge network เมื่อกำหนด ip ใหม่ก็พบว่าระบบไม่ฟ้อง
แต่ใน debian เข้า net ไม่ได้ เพราะ bridge ที่สร้างขึ้นไม่ได้เชื่อมกับเครือข่ายโดยตรง
5. ใน windows ของเครื่องสามารถเข้า debian ผ่าน telnet ได้
6. สั่ง run แบบไม่ติดตั้ง teamviewer7 (เลือก install หรือ run ได้)บน windows
7. ถ้าเครื่องใดต้องการเข้า debian ผ่าน telnet ให้บอก id กับ password และติดตั้ง TV7 ในเครื่องนั้น
8. ตรวจหมายเลข ip ด้วย #ifconfig บน debian ดังจอภาพ
โดย 192.168.2.3 คือ ip ของ bridge ที่กำหนดแบบ manual
และ 192.168.2.5 คือ ip ของ windows หรือ host
Blog : อูบุนตู 4 บทเรียน [10]
“ระบบปฏิบัติการ (Operating System)” ของ รศ.ดร.กฤษดา ขันกสิกรรม พบบทที่ 10-13 ระบบปฏิบัติการอูบุนตู เริ่มอ่านหน้า 238 เรื่อยไป พบว่า ยูบุนตู (Ubuntu) พัฒนาต่อยอดจาก เดเบียน (Debian) ซึ่งต่างเป็นลีนุกซ์ (Linux) ที่เป็น Open source และเป็น GPL (General Public License) คือ สัญญาอนุญาตในการนำไปใช้ โดยสัญญา GPL ฉบับแรกเขียนโดย Richard Stallman ส่วน Linux Kernal มีผู้ริเริ่มคือ Linus Torvalds (ไลนัส เทอร์วัลต์ส) ยูบุนตูถูกพัฒนาให้สามารถใช้กับ PC, Notebook หรือ Server คำว่าอูบุนตูเป็นคำจากภาษาซูลูและโคซาในแอฟริกาใต้ หมายถึง เพื่อมวลมนุษยชาติทุกคน (Humanity to Others) ซึ่งหัวหน้าทีมพัฒนาอูบุนตู คือ Mark Shuttleworth และบริษัทคาโนนิคอล ที่เน้นให้อูบุนตูมีแต่ของฟรีสำหรับทุกคน
บทที่ 10 ประวัติ
– ประวัติของอูบุนตู
– รุ่นหรือเวอร์ชั่นของอูบุนตู
บทที่ 11 ติดตั้ง
– ติดตั้งในเครื่องใหม่
– ติดตั้งหลายโอเอส แบบแบ่ง Partition
– ติดตั้งเพิ่ม Install inside windows
บทที่ 12 การใช้งานอูบุนตู
– หน้าจอหลัก
– ส่วนประกอบหลัก
– การจัดการเดสก์ทอป
– การใช้งานไฟล์และโฟลเดอร์
– การใช้โปรแกรมพื้นฐาน
บทที่ 13 โปรแกรมประยุกต์
– Openoffice
– Firefox
– Pidgin สำหรับการแชทหลายบัญชี
– การใช้ร่วมกับอุปกรณ์ อาทิ mouse, printer, graphic card
– การใช้ Visual Effects ของอูบุนตู
http://www.thaiall.com/blog/burin/8311/
Ubuntu แยกเป็นหลายรุ่น ดังนี้
1. Kubuntu คือระบบสำหรับใช้งานบน Desktop สำหรับผู้ใช้
2. Xubuntu หรือ Lubuntu คือระบบสำหรับฮาร์ดแวร์เก่า ใช้ทรัพยากรน้อย
3. edubuntu คือ ระบบสำหรับนักเรียน นักศึกษา มีแอพเครืองคิดเลขคำนวณสูตรทางเคมี ฟิสิกส์
4. gobuntu คือ ระบบสำหรับกลุ่มเชี่ยวชาญที่มีประสบการณ์ จึงไม่มีไดรเวอร์ แอพพลิเคชั่น
แนะนำหัวข้อ Linux distro Linux Distribution (อ่านว่า ลินุกซ์ดิสทริบิวชัน) หรือเรียกย่อว่า Linux Distro (อ่านว่า ลินุกซ์ดิสโทร) คือ ระบบปฏิบัติการลินุกซ์ที่ถูกออกแบบและปรับแต่ง เพื่อการแจกจ่าย โดยการนำเอาระบบปฏิบัติการลินุกซ์มาปรับแต่งและเพิ่มซอฟต์แวร์พื้นฐานต่าง ๆ รวมเข้าไป เช่น เพิ่มส่วนติดต่อผู้ใช้, โปรแกรมจัดการไฟล์, โปรแกรมสำหรับดูหนัง-ฟังเพลง, โปรแกรมเว็บเบราว์เซอร์ เป็นต้น สรุปคือ ลินุกซ์ดิสโทรเป็นระบบปฏิบัติการลินุกซ์แบบสำเร็จรูป พร้อมใช้งาน เมื่อติดตั้งแล้วแทบจะไม่ต้องปรับแต่งหรือติดตั้งซอฟต์แวร์เพิ่มเลย ใช้งานได้ทันที เช่น Arch Linux, Debian, Ubuntu, Linux Mint, openSUSE, Red Hat และ Fedora เป็นต้น
อ่านเพิ่มเติมที่ https://poundxi.com
เรื่อง 4 ลีนุกซ์ดิสโทรสุดเจ๋งสำหรับฮาร์ดแวร์เก่า
อ่านจากบทความใน linux.com ของ JACK WALLEN เมื่อ 6 ตุลาคม 2017 เรื่อง 4 ลีนุกซ์ ดิสโทร สำหรับฮาร์ดแวร์ที่มีทรัพยากรน้อย ซึ่งเป็นโปรแกรมระบบปฏิบัติการ (Operating System) ที่ต้องการทรัพยากรน้อย จะช่วยปลุกชีพคอมพิวเตอร์เครื่องเก่าให้กลับมาใช้งานได้อีก เพราะระบบปฏิบัติการรุ่นใหม่ต้องใช้ทรัพยากรมาก คือ Linux Lite , Bodhi Linux , Puppy Linux , Lubuntu (Winner)
โปรแกรมประยุกต์บนระบบปฏิบัติการอูบุนตู ในบทที่ 13 โปรแกรมประยุกต์บนระบบปฏิบัติการอูบุนตู จากหนังสือ ระบบปฏิบัติการ ของ รศ.ดร.กฤษดา ขันกสิกรรม พบว่า แนะนำโปรแกรมประยุกต์ไว้ 5 หัวข้อ คือ 1) โปรแกรม OpenOffice.org 2) โปรแกรม Firefox 3) โปรแกรม Pidgin 4) การใช้งานระบบปฏิบัติการอูบุนตูร่วมกับอุปกรณ์ 5) การใช้งาน Visual Effects
1. โปรแกรม OpenOffice.org
คือ ชุดโปรแกรมสำนักงาน ในชุดนี้ประกอบด้วย Writer, Calc และ Impress ในชุด LibreOffice ก็ใช้ชื่อเดียวกัน คือ Writer, Calc และ Impress
2. โปรแกรม Firefox
คือ โปรแกรม Web Browser เพื่อใช้ท่องโลกออนไลน์
3. โปรแกรม Pidgin
คือ โปรแกรมติดต่อสื่อสาร เป็น Internet Messenger ที่รองรับการเชื่อมต่อกับหลายค่าย อาทิ MSN, QQ, ICQ, Google Talk, AIM
4. การใช้งานระบบปฏิบัติการอูบุนตูร่วมกับอุปกรณ์
คือ การปรับแต่งให้ใช้อุปกรณ์ต่าง ๆ อาทิ Mouse, Printer
5. การใช้งาน Visual Effects
คือ เทคนิคพิเศษเพิ่มเติม ทำให้การใช้งาน Desktop โปร่งแสง และบิดพริ้วหน้าต่างอย่างสวยงาม ด้วยการติดตั้ง Compiz manager เพื่อทำ Desktop cube
Command line เป็น emulator บน web browser

jamesfriend.com.au

bellard.org

dosbox.com
มีบริการให้ใช้งาน shell ของ DOS และ Linux ผ่าน browser โดยใช้ javascript เป็นตัวพัฒนา เหมาะกับผู้ที่ต้องการเรียนรู้ และทดสอบคำสั่งพื้นฐาน 1) ถ้าต้องการใช้ DOS shell หรือ command line ผ่าน online emulator เข้าใช้ที่ jamesfriend.com.au 2) ถ้าต้องการใช้ Linux shell ผ่าน online emulator เข้าใช้ที่ bellard.org มีตัวอย่างคำสั่ง linux ที่ /isinthai 3) ถ้าจะ DOS Shell บน windows ก็จะมี DOSBOX เป็น x86 emulator Downoad : dosbox.com แล้วก็ติดตั้ง ผมเคยเขียนตัวอย่างการใช้งาน DOSBOX ที่ thaiall.com
ถาม - ตอบ ส่วนหนึ่งเรียบเรียงจากหนังสือของ รศ.ดร.กฤษดา ขันกสิกรรม
ถามยูบุนตู (Ubuntu) พัฒนาต่อยอดมาจากอะไร
ตอบต่อยอดมาจาก เดเบียน (Debian) ซึ่งต่างเป็นลีนุกซ์ (Linux) ที่เป็น Open source และเป็น GPL (General Public License) คือ สัญญาอนุญาตในการนำไปใช้ โดยสัญญา GPL ฉบับแรกเขียนโดย Richard Stallman
ถามใครเป็นผู้ริเริ่มพัฒนา Linux Kernal
ตอบผู้ริเริ่มคือ Linus Torvalds (ไลนัส เทอร์วัลต์ส)
ถามคำว่า อูบุนตู เป็นคำที่มาจากอะไร
ตอบมาจากภาษาซูลูและโคซาในแอฟริกาใต้ หมายถึง เพื่อมวลมนุษยชาติทุกคน (Humanity to Others)
แนะนำเว็บไซต์ (Website guide) + http://com2000.s5.com/linuxborn.html
+ http://www.december.com/unix/tutor/filesystem.html อธิบาย unix file system ***
+ http://www.levenez.com/unix/ ยอดเยี่ยม ละเอียด และมีภาพ *
+ http://web.ku.ac.th/schoolnet/snet1/software/linux/
+ http://pirun.ku.ac.th/~fengwks/comtrp/os.pdf
+ http://www.cs.wisc.edu/~bart/537/lecturenotes/s24.html
+ http://www.csie.ntu.edu.tw/~pangfeng/System%20Programming/Lecture_Note_2.htm
+ ติดตั้ง Lubuntu บน Virtualbox บน Win10
เอกสารอ้างอิง (Reference) [1] Abraham silverschatz, Peter baer galvin, "Operating system concept", John wiley & Sons, New York, 2003.
[2] Milan Milenkovic, "Operating systems: concepts and design", McGraw-Hill inc., New York, 1992.
[3] William stallings, "Operating system", Prentice hall, New York, 1999.
[4] ไพศาล โมลิสกุลมงคล และคณะ, "ระบบปฏิบัติการ", สำนักพิมพ์ดวงกมลสมัย, กรุงเทพฯ, 2545.
[5] พิเชษฐ์ ศิริรัตนไพศาลกุล, "ระบบปฏิบัติการ (Operating system)", บริษัท ซีเอ็ดยูเคชั่น จำกัด., กรุงเทพฯ, 2546.
[6] ดร.ยรรยง เต็งอำนวย, "ระบบปฏิบัติการ (Operating system)", บริษัท ซีเอ็ดยูเคชั่น จำกัด., กรุงเทพฯ, 2541.
[7] ประชา พฤกษ์ประเสริฐ, "ระบบปฏิบัติการ", บริษัท ซัคเซส มีเดีย จำกัด., กรุงเทพฯ, 2549.
[8] วศิน เพิ่มทรัพย์, "คู่มือ MS-DOS", พี.เอ็น.การพิมพ์, กรุงเทพฯ, 2545.
[9] ชนินทร์ เชาวมิตร, "คู่มือยูนิกซ์เดสก์ทอป", บริษัท ซีเอ็ดยูเคชั่น จำกัด., กรุงเทพฯ, 2538.
[10] รศ.ดร.กฤษดา ขันกสิกรรม, "ระบบปฏิบัติการ (Operating Systems)", อาง้วนการพิมพ์, นครสวรรค์, 2555.

http://goo.gl/72BPC