linux training in Thailand
| Home | Articles | Download | Free Linux Tips | Resources | Training | Web Link | Linux Training English|
| Courses | Schedule | Price & Promotion | Map | Customer Ref. | Instructors | Certification | FAQ | Registration Form |
สถาบันฯ ขอแจ้งปิดทำการระหว่างวันที่ 27 -31 กรกฏาคม 2558 และเปิดทำการปกติวันที่ 3 สิงหาคม 2558
We are on vacations 5 days in July 27-31, 2015 Please contract Line ID : nok_fly or e-mail : info@itdestination.com
ITDestination จะปิดปรับปรุงเว็บไซต์ ตั้งแต่วันที่ 7 - 9 มิถุนายน 2556
อาจจะทำให้ใช้งานไม่ได้ในบริการ Webboard Freetips และ E-Learning จึงขออภัยในความไม่สะดวกมา ณ ที่นี้
สถาบันฯ ขอแจ้งปิดทำการวันที่ 22-28 กุมภาพันธ์ 2560 และจะเปิดทำการปกติในวันที่ 1 มีนาคม 2560
กรณีติดต่อส่งข้อความมาที่ Facebook: LinuxITDestination หรือ e-mail: info@itdestination.com ซึ่งจะติดต่อกลับประมาณ 17.00 น.
ผู้ลงทะเบียนอบรมสามารถทำข้อสอบ online ในช่วงที่มาอบรมเพื่อทบทวนความรู้ ทำได้ไม่จำกัดจำนวนครั้ง มีข้อเฉลยที่ถูกต้องแนะนำ
สอบถามรายละเอียดโทร 089 890-5494 >>> อ่านรายละเอียด... คลิ๊ก

มาสร้างระบบ Thin Client ด้วยลีนุกซ์กันเถอะ

โดย ธีรภัทร มนตรีศาสตร์,RHCE


คำว่า Thin Clients เป็นเรื่องที่ถูกหยิบยกมากล่าวถึงกันอยู่เสมอ ๆ ในวงการไอทีทั่วโลก เนื่องด้วยปริมาณความต้องการใช้งานคอมพิวเตอร์ในปัจจุบันมีอัตราที่เพิ่มสูงขึ้นจนแทบเป็นเรื่องปรกติในองค์กร ส่งผลให้จำนวนเครื่องลูกข่ายที่มีเพิ่มขึ้นตามไปด้วย นอกจากจะหมายถึงการลงทุนที่เพิ่มสูงขึ้น ยังเป็นที่มาของความยุ่งยากในการดูแลบำรุงรักษาในด้านเทคนิคที่เพิ่มขึ้นอีกด้วย ยิ่งมีจำนวนเครื่องลูกข่ายในระบบมากเท่าไหร่ ปัญหาหลัก ๆ สองเรื่องดังกล่าวก็มักจะได้รับการนำมาทบทวนกันอยู่เสมอ และเมื่อมีปัญหาเกิดขึ้น ก็จะต้องมีเทคโนโลยีบางอย่างที่ถูกคิดค้นขึ้นเพื่อเป็นทางออกให้แก่ปัญหาเหล่านั้น ปัญหาของ Thick Client โดยทั่วไประบบคอมพิวเตอร์ในปัจจุบันจะถูกเชื่อมโยงกันด้วยระบบเครือข่ายท้องถิ่น ( Local Area Network : LAN ) ซึ่งเครื่องที่เป็นลูกข่ายในระบบหรือ Client มักจะเป็นเครื่องพีซีที่มีสเปคเครื่องที่เปี่ยมประสิทธิภาพ ประกอบด้วยโปรเซสเซอร์ความเร็วสูง ฮาร์ดดิสก์ความจุมาก ๆ หน่วยความจำที่มากเพียงพอต่อการรันแอปพลิเคชั่นที่นับวันจะต้องการพลังการประมวลผลสูงขึ้นทุกที และเพียบพร้อมไปด้วยอุปกรณ์ต่อพ่วงนานาชนิด เช่น ซีดีรอม เครื่องพิมพ์ ปัญหาของระบบที่ใช้เครื่องพีซีชุดใหญ่เช่นนี้จึงมีอยู่ไม่น้อยเลย เครื่องลูกข่ายประเภทนี้
ผู้เขียนขอเรียกสั้น ๆ ว่า Thick Client นะครับ
ในด้านการลงทุน เครื่องพีซีชุดใหญ่นี้จะมีราคาสูง หากใช้งานเพียงไม่กี่เครื่องก็คงไม่ใช้ปัญหา แต่ถ้ามีจำนวนเครื่องเป็นสิบเป็นร้อยเครื่องขึ้นไป ตัวเลขงบประมาณจะแตกต่างอย่างเห็นได้ชัด ทรัพยากรที่ซ้ำซ้อน และกระจัดกระจาย เป็นอีกปัญหาหนึ่งซึ่งมีผลกระทบต่อการบริหารจัดการ ในขณะที่พีซีเหล่านี้ทุกเครื่องต่างก็มีฮาร์ดดิสก์ภายในตัวเอง จะต้องมีซอฟต์แวร์ทั้งระบบปฏิบัติการและโปรแกรมประยุกต์ติดตั้งไว้ทุกเครื่อง เมื่อเริ่มต้นติดตั้งเครื่องเหล่านี้ในแต่ละจุดในสำนักงานก็สูญเสียเวลาและแรงงานไปมากมายแล้ว หากมองต่อไปถึงข้อมูลของผู้ใช้ที่กระจัดกระจายในแต่ละเครื่อง คอนฟิกและสภาพแวดล้อมการใช้งานของแต่ละบุคคล จะสร้างภาระในเรื่องการสำรองข้อมูลขนาดไหน ปัญหาจะปรากฏขึ้นให้เจ้าหน้าที่ฝ่ายเทคนิคต้องเหนื่อยและเบื่อหน่ายเป็นรายวันอีก หากเครื่องเหล่านี้ติดไวรัส หรือเกิดความเสียหายจนถึงขนาดต้องนำออกไปซ่อมและเปลี่ยนเครื่องใหม่เข้ามาทดแทน Thin Client คืออะไร มีด้วยความต้องการที่จะลดขนาดของเครื่องคอมพิวเตอร์ที่ใช้เป็นเวิร์กสเตชั่นเหล่านี้ให้มีขนาดเล็กลง เพื่อช่วยให้ความยุ่งยากในด้านการบริหารจัดการและการบำรุงรักษาลดลงไปได้ จึงทำให้เกิดแนวคิดของ Thin Client ขึ้น โดยลดทั้งขนาดและคุณสมบัติของเครื่องคอมพิวเตอร์ชนิดนี้ลงให้เหมาะสมกับงานที่ใช้ ซึ่งจะช่วยลดต้นทุนลงไปได้ส่วนหนึ่ง ในขณะเดียวกันก็เป็นการยกเลิกทรัพยากรที่เป็นสื่อบันทึกข้อมูลขนาดใหญ่อย่างเช่น ฮาร์ดดิสก์ ออกไปจากตัวเครื่องลูกข่าย แล้วยกภาระการประมวลผล การจัดเก็บข้อมูล การบริการงานแอปพลิเคชั่น ซอฟต์แวร์ระบบปฏิบัติการ ซอฟต์แวร์ประยุกต์ และการควบคุมต่าง ๆ ให้ไปรวมอยู่ที่เครื่องเซิร์ฟเวอร์ที่เป็นศูนย์กลางในระบบเครือข่าย ที่เรียกว่า Server Based Computing แนวคิดเช่นนี้จะช่วยให้เกิดประโยชน์หลายประการ
  • ช่วยลดต้นทุนด้านฮาร์ดแวร์ของเครื่องลูกข่ายลงได้ เช่น สำหรับสถานศึกษาอาจจะใช้เครื่องพีซีระดับต่ำ-ปานกลางที่ได้รับบริจาคมา
  • ลดความยุ่งยากในด้านการจัดการระบบ ได้แก่ การตรวจเช็คไวรัส หรือ การสำรองข้อมูลในฮาร์ดดิสก์ของแต่ละเครื่อง
  • ช่วยลดงานที่ต้องปฏิบัติที่จุดตั้งเครื่องลูกข่าย เช่น การเปลี่ยนตัวเครื่องเพื่อการซ่อมแซม อัพเกรด การติดตั้งซอฟต์แวร์
    ประยุกต์เพิ่มเติมให้แก่ผู้ใช้
  • ลดโอกาส และช่องทางที่จะเกิดความเสียหายเนื่องจากการโจรกรรมข้อมูล ในกรณีที่ตัวเครื่องลูกข่ายแบบ Thin Client ไม่ได้ติดตั้งหรืออนุญาติให้ใช้สื่อบันทึกข้อมูลประเภท Removable Media หรืออุปกรณ์ต่อพ่วง เช่น ฟล๊อปปี้ดิสก์ ( สำเนาไฟล์ไม่ได้ ) พอร์ตเครื่องพิมพ์ ( พิมพ์ข้อมูลจากเอกสารไม่ได้ ) เป็นต้น รวมไปถึงป้องกันการโจรกรรมอุปกรณ์บันทึกข้อมูลราคาแพงเช่น ฮาร์ดดิสก์อีกด้วย เพราะไม่มีฮาร์ดดิสก์อยู่ในเครื่องนั่นเอง
  • โครงสร้างของระบบ Server Based Computing ส่วนประกอบของระบบ Server Based Computing ที่จะนำเอา Thin Client มาใช้ประโยชน์ได้นั้นจะมี 3 ส่วนสำคัญ ส่วนแรกคือเครื่องลูกข่าย เป็นเครื่องพีซีที่ตั้งอยู่ในบริเวณที่ยูสเซอร์ต้องใช้งาน มีฐานะเป็น Terminal ตัวหนึ่งที่เชื่อมต่อเข้ากับระบบเครือข่าย และมีคุณสมบัติทางด้านซอฟต์แวร์ที่สนับสนุนการบูตระบบเข้าสู่เครือข่ายได้ด้วยตนเอง ส่วนที่สองคือเครื่องเซิร์ฟเวอร์ เป็นเครื่องพีซีที่มีประสิทธิภาพสูง เพื่อสามารถให้บริการด้านเครือข่ายขั้นพื้นฐาน เป็นหน่วยเก็บข้อมูล และซอฟต์แวร์ต่าง ๆ ทั้งหมด อาจรวมไปถึงให้บริการงานอื่น ๆ ตามความต้องการขององค์กรอีกด้วย เช่น เป็นอินเตอร์เน็ตเซิร์ฟเวอร์ ไฟล์เซิร์ฟเวอร์ เป็นต้น หน้าที่หลักในการสนับสนุน Thin Client ก็คือ ทำหน้าที่เป็น Terminal Server ที่คอยสนับสนุนขั้นตอนการบูตระบบของ Thin Client ไปจนกระทั่งเครื่องเหล่านั้นสามารถใช้งานต่าง ๆ ได้ตามปรกติ และส่วนประกอบสุดท้ายคือ ระบบเครือข่ายที่ใช้เชื่อมต่อเครื่องลูกข่ายทั้งหลายเข้าสู่เครื่องเซิร์ฟเวอร์นั่นเอง


    รูปที่ 1 โครงสร้างการเชื่อมต่อในระบบ Server Based Computing


    โปรโตคอล และบริการที่นำมาใช้ เพื่อทำให้การใช้งาน Thin Client เกิดเป็นโปรเจคที่เป็นจริงขึ้นได้นั้นจะต้องอาศัยโปรโตคอล และบริการด้านระบบเครือข่ายประกอบเข้าด้วยกันมากมายหลายอย่าง ตามลำดับการทำงานที่เราสามารถสัมผัสได้ จะแบ่งออกตามขั้นตอนการบูตของเครื่อง Thin Client จนกระทั่งผู้ใช้งานสามารถใช้งานแอปพลิเคชั่นได้ดังนี้
  • เริ่มต้นจากเครื่องพีซีที่เป็น Thin Client เริ่มต้นเปิดเครื่อง ไบออสของเครื่องจะเลือกวิธีการบูตเครื่องตามที่มีการกำหนดไว้แล้จากการเซ็ตอัพภายในตัวไบออสเอง ซึ่งในกรณีของการบูตเพื่อเข้าสู่ระบบเครือข่ายจะแบ่งออกได้ 3 ลักษณะคือ
    1. บูตด้วยซอฟต์แวร์ที่บรรจุอยู่ใน ROM Boot ของการ์ดแลน บนแผงวงจรของการ์ดแลนส่วนใหญ่มักจะมีซ๊อกเก็ตว่างเตรียมไว้ให้ผู้ใช้นำชิปหน่วยความจำรอมติดตั้งลงไปได้ ซึ่งภายในหน่วยความจำนี้ผู้ใช้จะต้องบันทึกโปรแกรมสำหรับใช้บูตเครื่องเข้าสู่เครือข่ายไว้เสียก่อน
    2. บูตด้วยโปรโตคอล PXE ( Preboot Execution Environment ) ซึ่งมักจะมี Build-in มาพร้อมกับไบออสของเมนบอร์ดรุ่นใหม่ ๆ หรือ Flash เพิ่มเติมเข้าไปในการ์ดแลนรุ่นใหม่ ๆ ได้
    3. บูตด้วยแผ่นฟล๊อปปี้ดิสก์ โดยเป็นการจำลองการบูตของ ROM Boot ไว้ในแผ่นฟล๊อปปี้ดิสก์ เป็นวิธีที่ง่ายต่อการทดสอบก่อนการนำโค๊ดของ ROM Boot ไปเบิร์นลงสู่ ROM จริง ๆ
    ในขั้นตอนนี้โปรแกรมที่กล่าวไปข้างต้นจะทำการ Broadcast ไปในระบบเครือข่าย ด้วยโปรโตคอล BOOTP ( RFC951) เพื่อร้องขอ TCP/IP Configuration จาก DHCP/BOOTP Server
  • DHCP/BOOTP Server จะตรวจสอบ MAC Address ของ Thin Client นั้น แล้วส่งพารามิเตอร์ที่เกี่ยวข้องกับคอนฟิกของ
    โปรโตคอล TCP/IP ให้แก่ Client รวมทั้ง Path และชื่อไฟล์เคอร์เนลที่จะใช้ในการบูตในขั้นตอนถัดไป
  • Thin Client เมื่อได้รับค่าพารามิเตอร์ต่าง ๆ เกี่ยวกับ TCP/IP มาแล้ว จะใช้โปรโตคอล TFTP ( Trivial File Transfer Protocol ) เพื่อดาวน์โหลดไฟล์เคอร์เนลที่ระบุโดย DHCP Server มาสู่หน่วยความจำ และเริ่มต้นทำงานด้วยเคอร์เนลนี้
  • เคอร์เนลจะดำเนินการเริ่มต้นระบบปฏิบัติการ โดยในช่วงแรกจะทำงานภายใน RAM Disk ก่อน จากนั้นจึงรันโปรแกรม init เพื่อปฏิบัติงานตามสคริปต์ที่กำหนดการทำงานไว้ ได้แก่ การค้นหาอุปกรณ์ต่าง ๆ โหลดโมดูลที่จำเป็น โดยเฉพาะโมดูลไดร้วเวอร์สำหรับระบบเครือข่าย
  • เครื่อง Thin Client จะทำการ Broadcast ในฐานะ DHCP Client อีกครั้ง แต่ในครั้งนี้จะให้ความสำคัญกับข้อมูลเกี่ยวกับการ mount เข้าสู่ NFS Server ( Network File Service ) เพื่ออาศัยเนื้อที่ดิสก์ที่แชร์จากเครื่องเซิร์ฟเวอร์เป็น Root File System หลังจาก mount สำเร็จแล้ว สคริปต์ของ Thin Client จะทำการสลับการใช้งาน Root File System จาก RAM Disk มาเป็น Root File System ที่ได้จากการ mount ผ่านบริการ NFS นี้ จึงทำให้ Thin Client สามารถใช้งานซอฟต์แวร์ต่าง ๆ ร่วมกันจากจุดศูนย์กลาง ( เครื่อง NFS Server ) ดังนั้นผู้ดูแลระบบจึงสามารถกำหนดคุณสมบัติของ Thin Client ได้จากศูนย์กลางผ่านกลไกอันนี้
  • ต่อจากนั้น เคอร์เนลจะสร้าง File System ส่วนอื่น ๆ ขึ้นเพื่อระบบที่สมบูรณ์ยิ่งขึ้น จากนั้นจะเข้าสู่ Run Level ( โหมดของระบบปฏิบัติการ ) ตามที่ผู้ดูแลระบบกำหนดไว้ ซึ่งจะทำให้การทำงานของ Client เข้าสู่โหมดการทำงานแบบ Text Mode หรือ Graphical Mode ได้ตามที่ต้องการ หากเป็นการใช้งานแบบ Text Mode การทำงานจะสิ้นสุดลงที่เครื่องหมายพร้อมพ์และรอคอยให้ผู้ใช้สั่งงานคำสั่งแบบคอมมานด์ไลน์


    รูปที่ 2 หน้าจอของ Terminal หลังจากบูตสำเร็จและรอคอยการป้อนคำสั่ง

  • แต่ถ้าเป็นกรณีที่ผู้ดูแลระบบกำหนดให้ Thin Client เริ่มทำงานในแบบ Graphical Mode สคริปต์ start_x จะทำงานต่อไป โดยจะทำการ Probe การ์ดแสดงผล และรันซอฟต์แวร์ชุด Xfree86 ซึ่งทำหน้าที่เป็น X Window จากนั้นจึงใช้โปรโตคอล Network X Protocol เชื่อมต่อเข้าสู่ X Server และ Display Manager เพื่อล๊อกอินเข้าใช้งานแบบกราฟฟิกต่อไป


  • รูปที่ 3 หน้าจอล๊อกอินแบบ GUI บนเครื่อง Thin Client


    สร้างระบบ Thin Clients ด้วยลีนุกซ์ ระบบ Thin Client ในปัจจุบันมีอยู่มากมายหลายค่าย ตั้งแต่ประเภท Embedded หรือที่เป็นเครื่องสำเร็จรูป ที่เรียกว่า Network Computer ประเภทที่เป็นชุดซอฟต์แวร์โซลูชั่นที่รันภายใต้ระบบปฏิบัติการวินโดวส์ ลีนุกซ์ และโซลาริส สำหรับผู้ที่ชื่นชอบการใช้งานฟรีซอฟต์แวร์/โอเพ่นซอร์สแล้ว ก็มีโปรเจคที่น่าสนใจให้ใช้งานได้เช่นกัน โปรเจคนี้ชื่อว่า Linux Terminal Server Project หรือเรียกย่อ ๆ ว่า LTSP LTSP เป็นโปรเจคที่พัฒนาขึ้นเพื่อเสริมความเป็น Terminal Server ให้แก่ลีนุกซ์เซิร์ฟเวอร์ ( ดิสทริบิวชั่นใดก็ตาม ) โดยอาศัยคุณสมบัติด้านระบบเครือข่ายที่มีพร้อมอยู่แล้วในลีนุกซ์เซิร์ฟเวอร์ทุก ๆ ดิสทริบิวชั่น ไม่ว่าจะเป็น DHCP Server ,DNS Server ,TFTP Server,NFS Server และ X Server โดยที่มีเว็บไซต์ของกลุ่มผู้พัฒนาโปรเจคนี้ที่ http://www.ltsp.org ซึ่งจะมีเอกสาร ไฟล์โปรแกรมต่างๆ ให้ดาวน์โหลด นอกจากนี้ยังมี Mailing List ให้บริการสำหรับผู้ที่ต้องการคำปรึกษา แลกเปลี่ยนประสบการณ์กันอีกด้วย เพื่อให้เกิดความเข้าใจมากยิ่งขึ้น ก่อนจะลงมือสร้างระบบนี้ขึ้น ควรทราบภาพรวมกันก่อนว่ามีงานย่อย ๆ อยู่หลายส่วนทีเดียวที่จะต้องจัดเตรียมและดำเนินการกว่าจะสำเร็จได้
    1. ตรวจสอบเครื่องพีซีที่จะใช้งานเป็น Thin Client ว่าการ์ดแลน และการ์ดแสดงผลวีจีเอใช้ชิปรุ่นใดอยู่ และเตรียมซอฟต์แวร์ Boot Loader ให้เหมาะกับการ์ดแลนที่ใช้
    2. เตรียมเครื่องลีนุกซ์เซิร์ฟเวอร์ ผู้เขียนเลือกใช้ Red Hat Linux 9.0 Professional ติดตั้งและคอนฟิกส่วนของระบบเครือข่ายไว้พร้อมแล้ว
    3. ดาวน์โหลดซอฟต์แวร์ของ LTSP ที่จำเป็นต้องใช้คอนฟิกลีนุกซ์เซิร์ฟเวอร์เป็น Terminal Server ตามคุณสมบัติที่ต้องการ
    4. ติดตั้งซอฟต์แวร์ของ LTSP ปรับแก้คอนฟิกไฟล์ที่เกี่ยวข้อง และเริ่มเปิดบริการที่จำเป็นต้องใช้งานขึ้น ประกอบไปด้วย บริการ DHCP,TFTP,NFS เป็นสำคัญ
    5. บูตเครื่องพีซี Thin Client เพื่อทดสอบการทำงาน
    เตรียมเครื่องพีซี Thin Client เครื่องพีซีที่จะเลือกมาใช้เป็น Thin Client ควรเป็นเครื่องที่เราทราบรายละเอียดของฮาร์ดแวร์โดยเฉพาะการ์ดแลน กับการ์ดแสดงผลวีจีเอ ตามจุดประสงค์ของ Thin Client จึงไม่จำเป็นต้องมีฮาร์ดดิสก์ติดตั้งอยู่ อย่างเช่นาเครื่องที่ผู้เขียนใช้เป็น Celeron 433MHz RAM 128MB ใช้ชิปแสดงผล S3 Trio3D และการ์ดแลนใช้ชิป Intel EtherExpress Pro 100 ( On board ) ข้อมูลของชิปแสดงผลจะถูกใช้ในขั้นตอนการดาวน์โหลดโปรแกรม X Server ให้ตรงรุ่นกันจะได้ไม่มีปัญหาตอนแสดงผลแบบกราฟฟิก ส่วนชิปของการ์ดแลน เราจะต้องไปดาวน์โหลดโปรแกรม EtherBoot จากเว็บไซต์ http://www.rom-o-matic.net ซึ่งทางผู้พัฒนาโปรแกรมนี้ได้สร้างโปรแกรมช่วยคอมไพล์โปรแกรมให้ใช้งานสะดวกมากทีเดียว เพียงแค่เลือกรุ่นของชิปที่ต้องการโปรแกรมฝั่งเว็บไซต์จะสร้างโปรแกรมให้ดาวน์โหลดได้ทันที ดังรูปที่ 4


    รูปที่ 4 แบบฟอร์มที่ช่วยสร้างโปรแกรม EtherBoot

    ไฟล์อิมเมจที่ได้จะมีให้เลือกหลายรูปแบบด้วยกัน เช่นสำหรับผู้ที่จะนำไป Burn ลง ROM Boot ของการ์ดแลนจะต้องเลือกเป็นไฟล์ .zrom สำหรับผู้ที่ต้องการไฟล์อิมเมจเพื่อนำไปสร้างแผ่นบูตดิสก์สำหรับบูตเครื่อง Thin Client จะต้องเลือกไฟล์ที่เป็นฟอร์แมต .zdsk เมื่อได้ไฟล์นี้มาแล้วให้นำไฟล์ไปไว้ที่เครื่องลีนุกซ์เซิร์ฟเวอร์ นำแผ่นดิสก์เปล่าที่จะใช้เป็นแผ่นบูตเครื่อง Thin Client ใส่ไว้ แล้วพิมพ์คำสั่งต่อไปนี้ จะเป็นการสร้างแผ่นบูตขึ้นสำหรับการ์ดแลนรุ่นที่เราดาวน์โหลดมา ( ในตัวอย่างเป็นการ์ดแลนของ Intel ที่ใช้ทดสอบ )
    # cat eb-5.2.4-eepro100.zdsk > /dev/fd0


    เมื่อได้แผ่นดิสก์นี้มาแล้วให้นำมาบูตที่เครื่อง Thin Client โดยไม่ต้องเสียบสายแลน หรือต้องแน่ใจว่าไม่มีเครื่องคอมพิวเตอร์ใดกำลังทำงานเป็น DHCP Server อยู่ ข้อความที่ปรากฏบนจอภาพของ Thin Client จะแจ้งให้เราทราบหมายเลข Ethernet Address ของการ์ดแลนตัวนี้ โดยแสดงเป็นตัวเลขฐาน 16 จำนวน 12 หลัก เช่น 00:06:29:1E:BA:6B เป็นต้น ควรจดบันทึกไว้เพื่อใช้ในขั้นตอนที่คอนฟิกที่เครื่องเซิร์ฟเวอร์ เตรียมลีนุกซ์เซิร์ฟเวอร์ ผู้เขียนเลือกใช้ Red Hat Linux 9.0 โดยติดตั้งแบบ EveryThing เช่นเคย มีบางสิ่งที่ควรต้องตรวจสอบให้แน่ใจดังนี้
    1. คอนฟิก Network Interface ให้เรียบร้อย
    2. ควรมีแพคเกจที่เกี่ยวข้องกับ DHCP ,NFS ,TFTP เป็นอย่างน้อย
    3. มีส่วนประกอบของ X Window และ GNOME Desktop จะช่วยให้การทำงานราบรื่น
    4. อย่าเพื่งเปิดบริการเกี่ยวกับไฟร์วอลล์จนกว่าจะแน่ใจว่าระบบทำงานได้สมบูรณ์แล้ว
    5. หากต้องการให้เดสทอปสนับสนุนภาษาไทย ควรทำการเซ็ตภาษาไทยไว้เสียก่อนเลย
    6. อย่าลืมเพิ่มชื่อยูสเซอร์และกำหนดรหัสผ่านไว้ทดสอบ
    7. เป็นความคิดที่ดีที่จะเปิดบริการ telnet หรือ http server ไว้ทดสอบระดับเบื้องต้น
    ตามตัวอย่างในบทความนี้กำหนดให้เซิร์ฟเวอร์มีหมายเลขไอพีเป็น 192.168.0.30 ชื่อโฮสต์ icute.itdestination.com และจะกำหนดให้เครื่องที่เป็น Thin Client มีหมายเลขไอพีเป็น 192.168.0.31 ชื่อโฮสต์ ws031.itdestination.com ดาวน์โหลดแพคเกจซอฟต์แวร์ของ LTSP ที่เว็บไซต์ http://www.ltsp.org จะมีซอฟต์แวร์ของ LTSP มีให้ดาวน์โหลด 3 รูปแบบด้วยกัน คือ แพคเกจ RPM สำหรับลีนุกซ์ Red Hat ,Mandrake แพคเกจ .deb สำหรับ Debian และไฟล์ประเภท Tarball ( tgz ) เป็นซอร์สโค๊ดที่ต้องนำไปคอมไพล์เอง ผู้เขียนเลือกใช้ Red Hat Linux เป็น Terminal Server จึงเลือกดาวน์โหลดเป็นแพคเกจแบบ RPM โดยเลือกดาวน์โหลดเฉพาะไฟล์ที่ต้องใช้งานจริง ๆ เท่านั้น ซึ่งในที่นี้จะใช้ LTSP เวอร์ชั่น 3 จำนวน 6 ไฟล์ ขนาดโดยรวมประมาณ 36 MB สำหรับเครื่อง Thin Client ที่ใช้การ์ดแสดงผลแตกต่างออกไปจากนี้จะต้องดาวน์โหลดแพคเกจให้เหมาะสมกับชิปแสดงผลที่ใช้งานด้วย ติดตั้งแพคเกจและคอนฟิก Terminal Server อย่างง่าย หลังจากที่นำไฟล์แพคเกจที่ดาวน์โหลดมาทั้งหมดไปไว้ที่ลีนุกซ์เซิร์ฟเวอร์แล้ว ให้ใช้คำสั่ง rpm ติดตั้งแพคเกจทั้งหมดนี้
    ตามตัวอย่างคำสั่งดังนี้
    # rpm -ivh *.rpm
    หลังจากติดตั้งครบทุกแพคเกจแล้ว จะมีไดเร็คทอรี่เกิดขึ้น 2 แห่ง คือ /opt/ltsp และ /tftpboot/lts
    ให้ไปที่ /opt/ltsp/templates แล้วรันสคริปต์ ltsp_initialize ดังรูปที่ 5 สคริปต์จะสอบถามให้ยืนยันความต้องการคอนฟิก ดังรูปที่ 6 และเปิดโอกาสให้เราเลือกที่จะไม่คอนฟิกบางส่วนได้ ในส่วนนี้ให้ตอน A หมายถึงยอมรับการคอนฟิกตามที่แนะนำทั้งหมด ซึ่งจากรองรับการเป็น Thin Client ทั้งแบบ Text Mode และ Graphic Mode ดังรูปที่ 7


    รูปที่ 5 รันสคริปต์ ltsp_initialize



    รูปที่ 6 ยืนยันการคอนฟิก



    รูปที่ 7 เลือกแก้ไขคอนฟิก หรือยอมรับทั้งหมด

    ต่อมาให้สำเนาไฟล์ /etc/dhcpd.conf.example เป็นไฟล์ใหม่ชื่อ /etc/dhcpd.conf แล้วเปิดไฟล์นี้มาแก้ไข ดังตัวอย่างในรูปที่ 8 ซึ่งผู้คอนฟิกจะต้องนำค่า Ethernet Address ของการ์ดแลนที่ใช้ในเครื่อง Thin Client มากำหนดในไฟล์คอนฟิกนี้ด้วย สำหรับเครื่องลูกข่าย Thin Client ตัวถัดไปจะคอนฟิกในทำนองเดียวกันนี้ โดยเพิ่มเฉพาะ section ของ ws031 แต่แก้ไขชื่อโฮสต์ เป็น ws032 หมายเลขไอพี และ Ethernet Address ของโฮสต์นั้นเท่านั้น หลังจากแก้ไขรายละเอียดในไฟล์คอนฟิกแล้ว บันทึกไว้ แล้วสั่งให้ DHCP Server เริ่มทำงานด้วยคำสั่ง service dhcpd restart และ chkconfig dhcpd on ตามลำดับ


    รูปที่ 8 ตัวอย่างไฟล์คอนฟิกของ DHCP Server

    ในการสื่อสารกันระหว่างเครื่อง Thin Client กับ Linux Terminal Server จะให้ความสำคัญในเรื่องของ Name Resolution เป็นอย่างมาก ดังนั้นจึงต้องแน่ใจว่าไฟล์ /etc/hosts ได้กำหนดค่าไว้อย่างถูกต้อง ในที่นี้มีรายชื่อเครื่องเซิร์ฟเวอร์และลูกข่ายเก็บไว้อย่างถูกต้องครบทุกเครื่อง ดังตัวอย่างในรูปที่ 9


    รูปที่ 9 ตัวอย่างไฟล์ /etc/hosts

    อย่างไรก็ตาม ภายใต้สภาพแวดล้อมที่อาจจะไม่พร้อมในเรื่องของ Domain Name Service ( DNS ) อาจจะส่งผลกระทบต่อการทำงานของ ระบบบริหารจัดการ Log File หรือ โปรแกรม syslogd ได้ ซึ่งตามคอนฟิกของเราจะกำหนดให้เครื่องลูกข่าย Thin Client ทุกตัวต้องส่งผลการทำงานที่จะปรากฏใน Log File มารวมไว้ที่เครื่องเซิร์ฟเวอร์ เพื่อป้องกันปัญหาดังกล่าวจึงควรแก้ไขคอนฟิกของโปรแกรม SysLogd ของเครื่องเซิร์ฟเวอร์ซักเล็กน้อยตามรูปที่ 10 แล้วอย่าลืมรีสตาร์ตบริการตัวนี้เสียด้วย


    รูปที่ 10 แก้ไขคอนฟิกของ syslogd

    ไฟล์คอนฟิกที่สำคัญต่อการทำงานของเครื่อง Thin Client ที่สุดก็คือไฟล์ /opt/ltsp/i386/etc/lts.conf ซึ่งจะกำหนดการทำงานพื้นฐานของ Thin Client แต่ละตัวไว้ เช่น หมายเลขไอพีของเครื่องเซิร์ฟเวอร์ ขนาดของหน่วยความจำ SWAP ค่าพารามิเตอร์กำกับการทำงานของ X Server เป็นต้น ดังตัวอย่างในรูปที่ 11


    รูปที่ 11 คอนฟิกสำหรับ Thin Client

    เมื่อได้คอนฟิกทุกอย่างในฝั่งเซิร์ฟเวอร์เรียบร้อยแล้ว ควรทำการรีสตาร์ตเครื่องเซิร์ฟเวอร์ใหม่อีกครั้งเพื่อความแน่ใจว่าทุกอย่างจะเริ่มต้นได้อย่างปรกติทุก ๆ ครั้งที่เปิดระบบ โดยปฏิบัติตามคำสั่งต่อไปนี้
             
            # chkconfig nfs on
    # chkconfig tftp on
    # chkconfig dhcpd on
    # reboot
    ทดสอบโดยบูตเครื่อง Thin Client เมื่อทำการบูตเครื่อง Thin Client ด้วยแผ่นฟล๊อปปี้ดิสต์ที่เตรียมไว้ เครื่องจะมาหยุดที่เครื่องหมายพร้อมพ์ หากต้องการทดสอบการใช้งานง่าย ๆ อาจจะใช้คำสั่ง ifconfig , ping หรือ telnet ก็ได้ หรือถ้าต้องการเข้าสู่การใช้งานในโหมดกราฟฟิกก็เพียงแค่พิมพ์คำสั่ง
    # /tmp/start_ws
    เครื่อง Thin Client ของเราจะเข้าสู่หน้าจอล๊อกอินของ GNOME ดังรูปที่ 12 สามารถใช้ชื่อและรหัสผ่านของยูสเซอร์ของเครื่องเซิร์ฟเวอร์ได้ทันที ยูสเซอร์จะสามารถใช้งานแอปพลิเคชั่นที่มีอยู่ในเครื่องเซิร์ฟเวอร์ได้ทั้งหมด ถ้าเครื่องเซิร์ฟเวอร์เองสามารถใช้งานอินเตอร์เน็ตได้ก็จะทำให้เครื่อง Thin Client เหล่านี้ใช้งานอินเตอร์เน็ตได้เช่นเดียวกัน สำหรับพื้นที่เก็บข้อมูลของแต่ละยูสเซอร์ก็คือ Home Directory ของยูสเซอร์นั้น ๆ เอง โดยใน GNOME Desktop จะมีไอค่อนแสดง Home Directory ไว้บนเดสทอปอยู่แล้ว


    รูปที่ 12 หน้าจอ GUI ที่พร้อมให้ล๊อกอิน

    สำหรับค่าคอนฟิกต่าง ๆ ที่ยูสเซอร์ทำการปรับแต่งแก้ไขด้วยตัวเอง จะถูกเก็บไว้ภายใต้ Home Directory ของแต่ละคนอยู่แล้ว ( ซึ่ง Home Directory คือพื้นที่บนเครื่องเซิร์ฟเวอร์ ) ดังนั้นไม่ว่ายูสเซอร์นั้นจะย้ายไปล๊อกอินที่เครื่อง Thin Client ใดก็ตาม ก็จะได้สภาพแวดล้อมเดิมติดตามไปปรากฏให้ใช้งานเสมอ ไม่ว่าจะเป็นเรื่องของเดสทอป ( GNOME หรือ KDE ) ภาพวอลล์เปเปอร์ หรือ theme สวย ๆ ค่าคอนฟิกในโปรแกรมต่าง ๆ ได้แก่ การตั้ง Proxy Server การจดจำรหัสผ่าน cookies จากเว็บไซต์ที่เข้าชม เป็นต้น จะเห็นว่า Linux Terminal Server Project เป็นระบบ Thin Client ที่อาจเรียกได้ว่าสำเร็จรูปเลยก็ว่าได้ เพราะใช้งานไม่ยาก สามารถช่วยลดภาระงานเซอร์วิสจุกจิกที่กระจัดกระจายให้มารวมอยู่ที่ศูนย์กลางได้ตามคอนเซ็ปของไคลเอ้นท์บางเบา ( Thin Client ) แต่สิ่งหนึ่งที่เป็นข้อแลกเปลี่ยนที่จะต้องยอมรับและตัดสินใจเลือกก็คือระบบนี้มีความต้องการเครื่องเซิร์ฟเวอร์อย่างหนา ( Thick Server ) ที่มีประสิทธภาพสูง เพราะทุก ๆ โปรเซสที่รันจากเครื่อง Thin Client จะเกิดการประมวลผลที่ฝั่งเซิร์ฟเวอร์เป็นส่วนใหญ่ รวมไปถึงปริมาณแพคเก็ตข้อมูลที่มีปริมาณสูงในระบบเครือข่ายก็เป็นอีกสิ่งหนึ่งที่ต้องพิจารณา และนี่คืออีกหนึ่งโซลูชั่นที่สร้างขึ้นจากคุณสมบัติที่สารพัดประโยชน์ของระบบปฏิบัติการที่ชื่อว่า "ลีนุกซ์"
    แหล่งข้อมูลอ้างอิง
  • http://www.ltsp.org
  • http://www.rom-o-matic.net
  • LTSP - Linux Terminal Server Project - v3.0,James A. McQuillan