เอกสารแนะนำโครงการพัฒนาPSU12-SritrangServerสำหรับการจัดการห้องบริการคอมพิวเตอร์

จาก Wiki Opensource

โครงการพัฒนา PSU12-Sritrang Server สำหรับการจัดการห้องบริการคอมพิวเตอร์


วันที่เริ่มต้นโครงการ

1 มิถุนายน 2555


สถานะโครงการ

ปรับปรุงเวอร์ชั่นให้ทันสมัย


ชื่อผู้จัดทำโครงการ

  1. นายวิบูลย์ วราสิทธิชัย นักวิชาการคอมพิวเตอร์ชำนาญการพิเศษ กลุ่มงานวิจัยและพัฒนา ศูนย์คอมพิวเตอร์ มหาวิทยาลัยสงขลานครินทร์
  2. นายวิศิษฐ โชติอุทยางกูร นักวิชาการคอมพิวเตอร์ชำนาญการพิเศษ หน่วยเทคโนโลยีสารสนเทศ คณะทันตแพทยศาสตร์ มหาวิทยาลัยสงขลานครินทร์
  3. นายวิภัทร ศรุติพรหม วิศวกรชำนาญการพิเศษ (ลาออกแล้ว) ผู้ริเริ่มจัดทำ cloning


ความสำคัญและที่มาของโครงการ

ภาระงานในการจัดการห้องบริการคอมพิวเตอร์ ส่วนใหญ่แล้วจะเกี่ยวข้องกับการเตรียมเครื่องคอมพิวเตอร์ที่พร้อมใช้ทั้งระบบปฏิบัติการและซอฟต์แวร์ที่นิยมใช้งาน รวมทั้งการตั้งค่าเครื่องพิมพ์ การตั้งค่าระบบปฏิบัติการที่จำเป็น การตั้งค่าของโปรแกรมต่างๆเมื่อมีการเรียกใช้งานครั้งแรก และงานอื่นๆที่แตกต่างกันไปในแต่ละแห่ง

จำนวนเครื่องคอมพิวเตอร์ในห้องบริการคอมพิวเตอร์ที่มีจำนวนมาก ทำให้ผู้ปฏิบัติงานต้องใช้เวลาในการเตรียมนานมากจนแล้วเสร็จในแต่ละห้อง เครื่องมือที่นิยมนำมาใช้ในการเตรียมเครื่องฯก็คือซอฟต์แวร์ชื่อว่า Norton Ghost ที่ใช้เทคนิคในการโคลนนิ่ง (cloning) ข้อมูลในฮาร์ดดิสก์ของเครื่องที่เตรียมเป็นเครื่องแรก มักจะเรียกว่า เครื่องต้นฉบับ แล้วสั่งให้เขียนข้อมูลนั้นกลับลงไปในฮาร์ดดิสก์ของเครื่องอื่นๆ ตามแต่วิธีการที่เลือกใช้ว่าจะทำคราวละเครื่อง หรือคราวละมากๆพร้อมๆกัน

ผู้พัฒนาต้องการจะนำความรู้การใช้งานซอฟต์แวร์ชนิดโอเพนซอร์สซึ่งนำมาใช้ในการทำเทคนิคการโคลนนิ่งได้เช่นเดียวกัน และมีประสิทธิภาพทำงานเสร็จในเวลาที่รวดเร็วเช่นเดียวกัน ทำให้ผู้ปฏิบัติงานไม่จำเป็นต้องซื้อซอฟต์แวร์ ประหยัดค่าใช้จ่าย และในบางกรณีที่อาจมีการนำซอฟต์แวร์มาใช้โดยทดลองใช้ไปเรื่อยๆก็อาจจะละเมิดลิขสิทธิ์การใช้ซอฟต์แวร์ได้

โครงการนี้เป็นโครงการพัฒนาเพิ่มเติมจากชิ้นงานเดิมที่มีคำแนะนำเขียนไว้เป็นเบื้องต้นเฉพาะในเรื่องของการ cloning (เว็บไซต์ opensource.psu.ac.th หัวข้อ PSU Open Server รุ่น PSU12) นอกจากการ cloning แล้ว ผู้พัฒนาได้ทำการศึกษาและปรับปรุงวิธีการที่จะนำไปใช้งานให้ง่ายมากขึ้น โครงการนี้ได้เพิ่มซอฟต์แวร์ชนิดโอเพนซอร์สอีกจำนวนหนึ่ง และพัฒนาโปรแกรมชนิด shell scripts เพิ่มเป็นจำนวนมาก เพื่อช่วยในการจัดการเครื่องที่เป็นระบบปฏิบัติการ Microsoft Windows อาทิเช่น การเปลี่ยนชื่อเครื่องคอมพิวเตอร์อัตโนมัติตามข้อมูลที่บันทึกไว้ในไฟล์ dhcpd.conf (ข้อมูลชื่อ Host และ ข้อมูล MAC address) ซึ่งเป็นสิ่งจำเป็นในขั้นตอนการเตรียมเครื่องฯ เพื่อให้ชื่อเครื่อง (Computer name) ไม่ซ้ำกัน การสั่ง shutdown เครื่องฯในห้องบริการเมื่อต้องการปิดห้องบริการ การส่งข้อความไปแจ้งเตือนผู้รับบริการที่กำลังใช้เครื่องฯ การบังคับเครื่องฯให้แสดงหน้าข่าวประชาสัมพันธ์ทันทีที่เปิดเครื่องทุกครั้ง เป็นต้น


วัตถุประสงค์ของโครงการ

  1. เพื่อประยุกต์ใช้ซอฟต์แวร์ชนิดโอเพนซอร์สแทนการใช้ซอฟต์แวร์เชิงพาณิชย์ในการจัดการห้องบริการคอมพิวเตอร์
  2. เพื่อสร้างระบบอัตโนมัติและสามารถตั้งค่าโปรแกรมสั่งงานตามที่ต้องการได้ในการจัดการห้องบริการคอมพิวเตอร์ และระบบดังกล่าวต้องให้ใช้งานง่าย
  3. เพื่อให้มีวิธีการสั่งงานที่สะดวก ให้สะดวกในการสั่งงาน ใช้วิธีการสั่งงานแบบพิมพ์ตัวอักษรน้อยที่สุด


ขอบเขต

  1. เป็นการประยุกต์ใช้ซอฟต์แวร์ต่างๆที่ใช้ในการโคลนนิ่งฮาร์ดดิสก์เฉพาะระบบปฏิบัติการ Windows และ Linux เท่านั้น
  2. เป็นการพัฒนาเครื่องมือส่วนติดตั้งเซิร์ฟเวอร์อย่างรวดเร็วเพื่อให้ได้เซิร์ฟเวอร์แบบสำเร็จรูปที่พร้อมซอฟต์แวร์จำเป็นสำหรับการจัดการห้องบริการคอมพิวเตอร์
  3. เป็นการพัฒนาเครื่องมือส่วนการปฏิบัติงานประจำวันในการให้บริการ โดยเขียน Shell script และ Dialog บน Linux ให้สะดวกในการสั่งงาน ใช้วิธีการสั่งงานแบบพิมพ์ตัวอักษรน้อยที่สุด
  4. เป็นการพัฒนาให้ใช้งานได้กับระบบเครือข่าย LAN ที่รองรับ IPv4 เท่านั้น


ประโยชน์ที่ได้รับและคุณค่าของผลงาน

  1. นำไปใช้งานได้กับห้องบริการคอมพิวเตอร์ที่คณะต่างๆในมหาวิทยาลัย
  2. สามารถประยุกต์ใช้ซอฟต์แวร์ชนิดโอเพนซอร์สมาใช้ในการทำงานได้อย่างมีประสิทธิภาพและใช้งานได้จริง
  3. พัฒนาและเพิ่มจำนวนบุคลากรให้มีความรู้ทางด้านซอฟต์แวร์ชนิดโอเพนซอร์ส
  4. เผยแพร่และถ่ายทอดความรู้ในการนำซอฟต์แวร์ชุดนี้ไปใช้ในสถาบันอื่นๆที่ให้ความสนใจ
  5. เหมาะสำหรับ admin ที่ต้องเตรียมเครื่องคอมพิวเตอร์ให้บริการ เพราะเป็นวิธีการลดเวลาในการทำงานของผู้เตรียมเครื่องคอมพิวเตอร์ด้วยการนำระบบอัตโนมัตินี้มาใช้งาน
  6. ลดการละเมิดลิขสิทธิ์ซอฟต์แวร์และประหยัดค่าใช้จ่าย


คุณสมบัติของโปรแกรม

  • ติดตั้งง่ายในเวลาอันรวดเร็ว
    o ใช้แผ่นดีวีดีสำหรับติดตั้ง ในขณะติดตั้งไม่จำเป็นต้องต่อเน็ต เป็นการติดตั้งแบบ cloning server ลงไปใน server ของท่าน
    o หรือเลือกติดตั้ง ubuntu server เสร็จก่อน แล้วลงชุด PSU Installer (รัน shell script ติดตั้ง) เพื่อให้เป็น PSU12-Sritrang Server ทีหลังก็ได้
  • DHCP + PXE Server - ทำงานเป็น DHCP server และ PXE server
    o ใช้เป็น PXE DHCP Server แจกจ่าย IP ให้กับเครื่อง PC ที่ตั้ง boot from network เพื่อ cloning เท่านั้น และ/หรือ
    o ใช้เป็น DHCP Server แจกจ่าย IP ให้กับเครื่อง PC ในห้องบริการคอมพิวเตอร์ที่ได้บันทึก MAC Address แล้วเท่านั้น เพื่อใช้งานอินเทอร์เน็ตได้
  • วิธีการบันทึกรายการ MAC Address ของ PC ทุกเครื่องในห้องบริการคอมพิวเตอร์
    o แบบ Auto Generate dhcpd.conf
    o แบบ Manual Edit dhcpd.conf
  • Boot Manager Server - ห้องคอมพิวเตอร์อัจฉริยะ
    o การลง OS มากกว่า 1 OS ในเครื่อง PC ใช้เทคนิคแบ่ง disk เป็นหลาย partition
    o ควบคุม boot manager จาก server สามารถกำหนดให้ PC ลูกข่ายบูตเข้า partition ไหนก็ได้
  • Cloning Server - ระบบ cloning ผ่าน network ใช้ทดแทนโปรแกรม GHOST ที่ Cloning ได้ทั้ง MS windows และ Linux
    o การโคลนนิ่ง PC เก็บต้นฉบับ (Backup Cloning) MS Windows / Linux
    o การโคลนนิ่ง PC (Restore Cloning) MS Windows / Linux แบบ Multicast หลายเครื่องพร้อมกัน
    o การโคลนนิ่ง PC (Restore Cloning) MS Windows / Linux แบบ Unicast ทีละเครื่อง
    o การสร้าง zone ใหม่ มีได้ตั้งแต่ zone 1 ถึง zone 9 เพื่อแยกการโคลนนิ่งสำหรับ PC รุ่นเดียวกัน
  • Log accounting Server - ระบบ log accounting เพื่อเก็บสถิติการใช้เครื่อง
    o สามารถเพิ่มการเก็บข้อมูลผู้เข้าใช้เครื่องโดยตั้งค่า RADIUS server ได้ (เช่น การใช้งาน RADIUS server เชื่อมต่อกับ PSU Passport ของม.อ.)
    o ระบบ log accounting เพื่อเก็บสถิติการใช้เครื่องจาก PSU Ticker (เครื่อง Windows)
    o ระบบ log accounting เพื่อเก็บสถิติการใช้เครื่องจาก PSU RADIUS (เครื่อง Linux)
  • สั่งเครื่อง PC ลูกข่ายให้ shutdown อัตโนมัติได้ ไม่ต้องเดินปิดทีละเครื่อง
    o การสั่ง shutdown แบบ manual
    o การตั้ง cron เพื่อกำหนดเวลาที่แน่นอน shutdown เครื่อง PC ลูกข่าย
  • ตั้งค่า Wakeonlan เพื่อสั่งเครื่อง PC ลูกข่าย เปิดเครื่องอัตโนมัติ โดยการตั้ง cron
  • การส่งไฟล์ไปให้เครื่องลูกทุกเครื่อง
    ส่งไฟล์ (send file) จากเครื่อง PC ผู้สอนไปยังเครื่อง PC ผู้เรียนได้ หรือในทางกลับกัน
  • การส่งข้อความที่ต้องการประกาศให้ผู้ใช้งานทราบ
    o ส่งข้อความ (send message) จากเครื่อง PC ผู้สอนไปยังเครื่อง PC ผู้เรียนได้
  • ประชาสัมพันธ์ข่าวสารผ่าน network (PR News)
    o เปลี่ยนข้อความได้ทุกวัน ทำให้ไม่พลาดข่าวกิจกรรมสำคัญของหน่วยงาน
    o แสดงด้วยภาพกราฟิก JPG ขนาด 640x480 พิกเซล ในขณะ Boot เครื่อง PC ทุกครั้ง
  • PC Tools Server - เป็นถังเครื่องมือบนเน็ต
    o เอา PC มาต่อ บูตผ่าน network เลือกใช้โปรแกรมได้เลย
    o สามารถให้ PC ลูกข่ายบูตแผ่นซีดี/ดีวีดีที่เก็บไว้บน server ได้ ประยุกต์เพื่อทำเป็น kiosk diskless PC presentation
  • การสำรองข้อมูลง่ายมาก
    o การย้ายไฟล์ข้อมูลเพื่อทำเครื่องใหม่ เก็บแค่ /etc/dhcp/dhcpd.conf และ /var/www/cloning/zone*
    o ขนาด external harddisk ขึ้นอยู่กับขนาดของ image file ที่โคลนนิ่ง
  • การใช้งานด้วยเมนู สะดวกในการใช้งาน
    o เมนูสำหรับ update scripts ของ PSU12-Sritrang Server เป็นเวอร์ชั่นล่าสุด
    o เมนู mainmenu.sh สะดวก ทุกอย่างควบคุมด้วย dialog โต้ตอบ


รายชื่อหน่วยงานที่นำระบบไปใช้งาน

  1. ศูนย์คอมพิวเตอร์ มหาวิทยาลัยสงขลานครินทร์
  2. คณะทันตแพทยศาสตร์ มหาวิทยาลัยสงขลานครินทร์
  3. คณะวิทยาการจัดการ มหาวิทยาลัยสงขลานครินทร์
  4. สำนักทรัพยากรการเรียนรู้คุณหญิงหลง อรรถกระวีสุนทร มหาวิทยาลัยสงขลานครินทร์
  5. ฝ่ายคอมพิวเตอร์ฯ คณะวิศวกรรมศาสตร์ มหาวิทยาลัยสงขลานครินทร์
  6. คณะศิลปศาสตร์ มหาวิทยาลัยสงขลานครินทร์
  7. คณะทรัพยากรธรรมชาติ มหาวิทยาลัยสงขลานครินทร์
  8. คณะเภสัชศาสตร์ มหาวิทยาลัยสงขลานครินทร์
  9. วิทยาลัยนานาชาติ มหาวิทยาลัยสงขลานครินทร์
  10. ภาควิชาวิศวกรรมคอมพิวเตอร์ วิทยาเขตภูเก็ต
  11. ศูนย์สนเทศและการเรียนรู้ มหาวิทยาลัยสงขลานครินทร์ วิทยาเขตสุราษฎร์ธานี
  12. คณะวิทยาการสื่อสาร มหาวิทยาลัยสงขลานครินทร์ วิทยาเขตปัตตานี
  13. โรงเรียนสาธิตมหาวิทยาลัยสงขลานครินทร์ คณะศึกษาศาสตร์
  14. คณะสัตวศาสตร์ มหาวิทยาลัยสงขลานครินทร์


หน้านี้เผยแพร่เมื่อ 6 มีนาคม 2558 ปรับปรุงล่าสุดโดย วิบูลย์ วราสิทธิชัย เมื่อ 22 พฤษภาคม 2562