จิ๊กมัน
วันนี้หลายคนคงตื่นเต้นกับการออกของ Edgy หรือ Ubuntu Linux 6.10 ผมเลยถือโอกาสบันทึกวิธีการสร้างแผ่น image ของแผ่นติดตั้งโดยใช้ Jigit คือเป็นวิธีหนึ่งของ Jigdo นั้นเองวิธีการทำงานก็คือ เรามีแผ่นติดตั้งรุ่นทดสอบอยู่แล้วและไม่อยากโหลดใหม่ทั้งหมด นั้นคือโหลดเฉพาะส่วนที่แตกต่าง ผมใช้วิธีนี้เพราะผมตามโหลดจาก daily เป็นประจำซึ่งจะเร็วกว่าโหลดทั้งแผ่นมาก แต่ถ้าเราไม่มีแผ่นก่อนหน้านี้มันก็จะ download debs ต่าง ๆ มาประกอบเป็นแผ่นให้เช่นกัน แต่ที่ผมจะเล่าตอนนี้คือวิธีที่ทำให้ jigit ดึงจาก mirror ที่เร็วที่สุดสำหรับเรา เพราะปกติมันจะไปดึงมาจากเว็บของ Ubuntu ซึ่งจะช้า
ลงมือทำ
จำลองเครื่องเป็นเว็บ Server + ReWrite mod เมื่อติดตั้งและ up server ได้แล้วก็ สร้าง dir ชื่อ jigit แล้วเขียน rule ให้ rewrite ดังนี้
RewriteRule ^jigit/archive/(.*)$ http://th.archive.ubuntu.com/ubuntu/$1 [P,L]
สังเกตุตัวหลังตรง URL ที่ไหนเร็วก็ให้กำหนดที่นั้น ที่ lab ผม th กับ au จะเร็วพอ ๆ กันถ้า th ไม่ up ก็จะชี้ไป au แทนเมื่อได้แล้วก็ reload apache หลังจากนั้นก็เข้าไปใน dir jigit download files .jigdo กับ .template มาเช่น
ubuntu-6.10-alternate-i386.jigdo และ ubuntu-6.10-alternate-i386.template
จากตัวอย่างจะเป็นแผ่น alternate หรือแผ่นติดตั้งแบบ text mode นั้นเอง เมื่อได้ files ทั้งสองมาแล้วให้เราสร้าง file ชื่อว่า
ubuntu-6.10-alternate-i386.conf โดยมีบรรทัดดังนี้
JIGDO=ubuntu-6.10-alternate-i386.jigdo
TEMPLATE=ubuntu-6.10-alternate-i386.template
SNAPSHOT=archive
เมื่อได้แล้วก็ให้ save หลังจากนั้นให้ติดตั้ง jigit ในระบบ
$ sudo apt-get install jigit
สร้าง /etc/jigit.conf โดยใส่ บรรทัดดังนี้
HOST=http://localhost
ถ้าเรามี iso เก่าของตัวทดสอบให้ทำการ mount loop เช่น
$ sudo mount ubuntu-6.10-rc-alternate-i386.iso some-path
หลังจากนั้น ให้ทำการ jigit ดังนี้ครับ
$ jigit ubuntu-6.10-alternate-i386
jigit จะถามว่ามี archive เก่าหรือไม่ถ้ามีนะอยู่ที่ไหนเราก็ใส่ path ที่เรา mount ไปเมื่อสักครู่ แต่ถ้าไม่มีก็ enter ผ่านได้เลย ถ้าขั้นตอนต่าง ๆ ถุกต้อง server และ net ไม่เดี้ยง มันก็จะดูด ๆ ๆ แล้วก็สร้าง iso ให้เราก็ถือเป็นการเสร็จสิ้น