Tag Archives: admin

Upgrading gear.kku.ac.th

วันอาทิตย์ เข้าไปทำงานที่ภาควิชาฯ ไม่ได้อัปเกรด gear.kku.ac.th – เซิร์ฟเวอร์ของภาควิชาฯ – มาระยะนึงแล้ว กลับมาเที่ยวนี้ต้องอัปเกรดเสียหน่อย พอดีว่ามีเครื่องใหม่มาใช้งานแทนเครื่องเดิมด้วย ก็เลยลงแบบสะอาดๆ ได้ .. ใช้ฟรีบีเอสดีเช่นเคย (4.10-RELEASE) ติดตั้งแบบ customize เสร็จแล้วก็ cvsup ports sys คอมไพล์เคอร์เนล ติดตั้ง server software + tools ที่จำเป็นจาก ports .. จากนั้นก็ย้าย /home ของระบบเดิมมาเครื่องใหม่ (จะมาเสียเวลาเยอะก็ตรงนี้แหละ นานกว่าตอน cvsup ports ซะอีก – -‘) .. เสร็จเรียบร้อย สลับ IP เครื่องเก่ากับเครื่องใหม่ สั่ง reboot พร้อมกัน ตู้มม .. ssh เข้าระบบใหม่ แก้ไขอีกนิดหน่อยก็เรียบร้อย ของกล้วยๆ :D

ถ้าจำไม่ผิด gear.kku.ac.th เป็นเซิร์ฟเวอร์ที่ใช้ลินุกซ์ตัวแรกของ ม.ข. (เครื่องที่สองเป็นของ ชีวเคมี คณะแพทย์ฯ เครื่องที่สามคือ ftp.kku.ac.th) .. ถ้านับตั้งแต่ติดตั้งเครื่องนี้สำเร็จเป็นครั้งแรก อายุก็มากกว่าสิบปีแล้ว มีการเปลี่ยนแปลงมาเรื่อย จากลินุกซ์ที่มีแผ่นติดตั้งเกือบๆ สี่สิบแผ่น ดาวน์โหลดจาก ฟินแลนด์ สวีเดน และอเมริกา ใช้เวลาเป็นเดือน (แบนด์วิดธ์ของ ม.ข. ในสมัยนั้น19.2Kbps) .. ต่อมาก็ไช้ Slackware, Red Hat – เริ่มติดตั้งจาก CD, gzipslack (ที่เอา zipslack มาทำเป็น mini distro. เอง) ก่อนจะเปลี่ยนแปลกครั้งใหญ่เป็นฟรีบีเอสดี 4.2 จากนั้นก็ตามอัปเดตฟรีบีเอสดีมาตลอด ฮาร์ดแวร์จาก 486DX2-66MHz RAM 16 MB ก็ค่อยๆ เพิ่มเป็น 32 MB (~3 ปี) เป็น Pentium 75 MHz (~3 ปี), Pentium MMX 233 MHz (~3 ปี), Pentium II 266 MHz (~1 ปี) ล่าสุดตอนนี้เป็น Pentium-4 2 GHz .. มีแค่เครื่องแรกสุดเครื่องเดียวที่สเปคทันสมัย (ในยุคนั้น) หลังจากนั้นมากสเปคล้าหลังตลอด .. gear.kku.ac.th เปิดใช้งาน 24×7 มาตั้งแต่วันแรกๆ พอเปลี่ยนมาใช้ฟรีบีเอสดีก็ x100% เข้าไปอีกเพราะมี seti@home (ที่ nice 15) ด้วย .. ระบบไม่เคยงอแงเลย รับภาระงานได้สบายๆ ไม่รู้สึกว่าหน่วง ยิ่งเป็นฟรีบีเอสดีแล้วเสถียรภาพของระบบดีมากๆ uptime ครั้งละหลายๆ เดือน (i.e., จนกว่า UPS ดับ) ปัญหาจุกจิกน้อย ดูแลรักษาก็ง่าย .. ไม่แปลกใจเลยว่าทำไมค่าเฉลี่ยจำนวนเซิร์ฟเวอร์/ผู้ดูแล ของลินุกซ์/ยูนิกซ์จะสูงได้ถึง 44 เซิร์ฟเวอร์/คน ในขณะที่วินโดว์สอยู่ที่ราวๆ 10 เซิร์ฟเวอร์/คน .. อัปเกรดฮาร์ดแวร์คราวนี้ได้ Pentium-4 2 GHz จะว่าแรงเกินจำเป็นก็อาจจะได้ แต่ไหนๆ ก็มีเครื่องเร็วๆ ใช้ เลยตั้งให้ฟิลเตอร์สแปมกับไวรัสหนักๆ หน่อย เปิดได้วันเดียวก็มีรายงานไวรัส W32* มาแล้ว รายงานฟิลเตอร์สแปมได้อีกตรึม .. workunit ของ seti@home ก็น่าจะไปได้เร็วกว่าเดิมอีกหลาย .. ลอล

วันจันทร์เช้ากลับมานอนพักที่บ้าน .. ตื่นบ่ายๆ ก็ขับรถมากรุงเทพฯ มีงานต้องทำอีกเป็นกอง .. ส่งศุกร์นี้แล้วด้วย T_T

ปรับขนาดพาร์ติชันบนลินุกซ์โดยไม่ต้องลบ/ย้ายข้อมูล

อยากลองใช้ transcode แปลง DVD เป็น VCD ดูสักหนล่ะครับ แต่พาร์ติชันขนาด 5 GB ที่กันไว้ตอนแรกไม่พอเสียแล้ว .. ก็แค่ซอร์สของ DVD แผ่นนึงก็หมดไป 4 กิ๊กแล้ว .. อิมเมจของ VCD ที่จะสร้างด้วย transcode ก็ใช้พื้นที่อีกประมาณ 1.4 GB (เท่ากับแผ่นซีดี 700 MB สองแผ่นไง) แต่เวลา encode ต้องมีพื้นที่ว่างๆ ประมาณสามเท่าของอิมเมจ รวมๆ กันแล้วต้องใช้พื้นที่ 8-9 GB .. เฮ่อ .. ฮาร์ดดิสก์ 60 GB จะหมดก็คราวนี้ล่ะฟะ .. วกกลับมาเรื่องพาร์ติชัน 5 GB กันต่อ .. ในเมื่อมันไม่พอก็ขยายพาร์ติชันสิ ข่าวดี (หรือหรือข่าวเก่าแล้วก็ไม่รู้) คือพาร์ติชันที่ใช้ไฟล์ซิสเต็มแบบ ext2/ext3 สามารถย่อ/ขยาย ได้โดยข้อมูลไม่สูญหาย ไม่ต้องลบ หรือย้ายข้อมูลก่อนด้วย .. โอ๊ะ .. ทำได้ไงๆๆ …

สิ่งที่ต้องทำมีสองส่วนคือปรับขนาดของไฟล์ซิสเต็ม และปรับขนาดของพาร์ติชันครับ .. การปรับขนาด ext2/ext3 ทำได้ด้วย resize2fs ส่วนขนาดของพาร์ติชันก็ใช้ fdisk นี่ล่ะ .. เริ่มกันเลย ..

สมมติว่าต้องการขยาย /dev/hda7 ก่อนอื่นต้อง fdisk ก่อน ดูให้แน่ใจว่ามีที่ว่ามีที่ว่างต่อจากพาร์ติชันที่ต้องการขยาย จากนั้นทำตามขั้นตอนนี้

  1. unmount file system ที่จะขยายเสียก่อน
  2. เรียกโปรแกรม fdisk
  3. จดตัวเลข start ของ /dev/hda7 .. จดสิๆๆ
  4. ลบ {{/dev/hda7 ทิ้ง ..เอ่อ.. ไม่ต้องห่วงๆ เพราะข้อมูลทุกอย่างยังไม่หายไปไหน มันแค่ลบ entry ในตารางพาร์ติชันของฮาร์ดดิสก์ ไม่ได้ลบข้อมูล .. แต่ถ้าต้องการให้มันกลับมาก็ต้องสร้างพาร์ติชันที่มีตำแหน่งเริ่มต้นตรงที่เดิม นั่นเป็นเหตุผลว่าทำไมต้องจด start ของ /dev/hda7 ไว้ ..
  5. สร้างพาร์ติชัน /dev/hda7 เริ่มต้นที่เลข start ตัวเดิม กำหนดขนาดตามต้องการ แต่ไม่เกินพื้นที่ว่างที่เหลืออยู่
  6. บันทึกการเปลี่ยนแปลง ออกจาก fdisk
  7. รีบูต .. เพื่อความแน่นอน.. รีบูตเลยครับ .. ผมเคยพลาดมาแล้ว ใจร้อน ไม่ยอมรีบูต ไฟล์ซิสเต็มหาย ข้อมูลไปหมดเลย กู้กันสามวันสามคืน ได้ข้อมูลสำคัญๆ กลับมา 3-4 MB แต่ชีวิตหลังจากนั้นเหมือนกลับไปอยู่อดีต 3 เดือนก่อน เพราะแบคอัพล่าสุดอายุประมาณนั้น
  8. หลังจากรีบูตแล้ว e2fsck -f /dev/hda7 พาร์ติชันก่อนหนึ่งที
  9. จากนั้นสั่ง resize2fs /dev/hda7 แล้วก็ลุ้น.. ไม่ต้องกลั้นหายใจนะครับ ถ้าขยายไฟล์ซิสเต็มให้โตขึ้นใหญ่มากๆ ก็ต้องรอนานเป็นนาทีเหมือนกัน :)

ส่วนการย่อขนาดพาร์ติชัน ต้องสั่ง resize2fs เพื่อเปลี่ยนขนาดไฟล์ซิสเต็มก่อน แล้วค่อย fdisk ไปแก้ขนาดพาร์ติชัน สมมติว่าจะย่อ /dev/hda7 ให้เหลือแค่ 1048576 blocks ก็สั่ง

resize2fs /dev/hda7 1048576

จากนั้นก็เข้า fdisk จดตำแหน่งเริ่มต้นของพาร์ติชัน ลบพาร์ติชันของ /dev/hda7 ทิ้ง แล้วสร้างใหม่แบบเดียวกับการขยาย ข้อควรระวังคือ ต้องกำหนดขนาดพาร์ติชันไม่ให้เล็กไปกว่าขนาดที่ระบุตอน resize2fs (เช่น ในตัวอย่างนี้คือ 1048576 blocks) เพราะจะทำให้ข้อมูลหายได้

เสร็จแล้ว ขอตัวไป RIP DVD ก่อนละคร้าบบบ