บันทึกกันลืมอันเนื่องมาจากงานชิ้นนี้โหดร้ายพอดู จริงๆก็เป็นการอัพเกรดเคอเนลจาก 2.4 ไปเป็น 2.6 ของลีนุกซ์ debian3.1r3 ธรรมดาๆ แต่ที่มันไม่ธรรมดาคือต้องทำผ่านเน็ตเวิร์คเลย หนักกว่านั้นคือ จากที่บ้าน รีโมทตรงๆไปที่เครื่องไม่ได้ ต้องผ่านออฟฟิศเก่าผมก่อน(โชคดีที่ vpn ยังใช้งานได้) เข้าไปพักที่เครื่อง enigma ก่อนทั้ง ssh และ scp (โชคดีที่สองที่พวกเด็กแว้นเวรวันหยุดเขาไม่โหลดบิทกันไม่งั้นจุก) ที่ลำบากอีกอย่างคือเครื่องทั้งสามตัวออกเน็ตไม่ได้ ไอ้จะ apt-get ง่ายๆก็ต้องอด

เดิมระบบลงไว้แบบสุดประหยัึด(เพราะตัวทั้งตัวเป็นลีนุกซ์ที่รันบนคอมแพคแฟลชขนาด2GB) สเปกเครื่องเป็น CPU = Celeron 400Mhz, RAM = 512MB

เริ่มจาก

1 ดาวน์โหลดไฟล์เหล่านี้จากอินเตอร์เน็ตที่ http://www.debian.org/distrib/packages

fakeroot_1.2.10_i386.deb
bzip2_1.0.2-7_i386.deb
patch_2.5.9-2_i386.deb
make_3.80-9_i386.deb
binutils_2.15-6_i386.deb
dpkg-dev_1.10.28_all.deb
kernel-kbuild-2.6-3_2.6.8-2_i386.deb
kernel-headers-2.6.8-3_2.6.8-16sarge6_i386.deb
procps_3.2.1-2_i386.deb
linux-kernel-headers_2.6.18-7_i386.deb
libc6_2.3.6.ds1-13etch5_i386.deb
libc6-dev_2.3.6.ds1-13etch5_i386.deb
cpp-3.3_3.3.5-13_i386.deb
gcc-3.3_3.3.5-13_i386.deb
cpp_3.3.5-3_i386.deb
gcc_3.3.5-3_i386.deb
kernel-package_8.135_all.deb
libncurses5-dev_5.5-5_i386.deb
module-init-tools_3.2-pre1-2_i386.deb
initrd-tools_0.1.81.1_i386.deb

อ้อ.. ลืมไป มี

linux-2.6.8.tar.bz2

2 โหลดเสร็จแล้ว tar รวมกันโยนสองต่อไปที่เครื่องปลายทาง

เครื่องผม ---FTP--->เครื่องenigmaที่ออฟฟิศ---SCP--->เครื่องปลายทางที่สาขา

3 ติดตั้งพวกที่เป็น .deb ด้วยคำสั่ง dpkg -i

dpkg -i fakeroot_1.2.10_i386.deb bzip2_1.0.2-7_i386.deb
dpkg -i patch_2.5.9-2_i386.deb make_3.80-9_i386.deb binutils_2.15-6_i386.deb dpkg-dev_1.10.28_all.deb
dpkg -i kernel-kbuild-2.6-3_2.6.8-2_i386.deb kernel-headers-2.6.8-3_2.6.8-16sarge6_i386.deb
dpkg -i procps_3.2.1-2_i386.deb
dpkg -i linux-kernel-headers_2.6.18-7_i386.deb libc6_2.3.6.ds1-13etch5_i386.deb libc6-dev_2.3.6.ds1-13etch5_i386.deb
dpkg -i cpp-3.3_3.3.5-13_i386.deb gcc-3.3_3.3.5-13_i386.deb
dpkg -i cpp_3.3.5-3_i386.deb gcc_3.3.5-3_i386.deb
dpkg -i kernel-package_8.135_all.deb
dpkg -i libncurses5-dev_5.5-5_i386.deb module-init-tools_3.2-pre1-2_i386.deb initrd-tools_0.1.81.1_i386.deb

4 ต่อไปก็คอมไฟล์เคอเนลโดยแตกไฟล์ linux-2.6.8.tar.bz2 ไปไว้ที่ /usr/src

tar xvfj linux-2.6.8.tar.bz2 -C /usr/src
cd /usr/src/linux-2.6.8
make menuconfig

(ใช้ค่า default ไม่ได้คอนฟิกอะไรเลย)

make-kpkg clean
fakeroot make-kpkg --revision=custom.1.0 kernel_image

(หลังคำสั่งนี้ก็หาอะไรทำล่ะพี่น้องนานโคตร เครื่องนี้ประมาณชั่วโมงกว่าๆ ก็เลยแอบมาเขียนบันทึกซะ)

จากคำสั่งด้านบนถ้าไม่มีข้อผิดพลาด จะได้ไฟล์ชื่อ kernel-image-2.6.8_custom.1.0_i386.deb อยู่ที่ /usr/src

5 เมื่อได้ไฟล์ kernel-image-2.6.8_custom.1.0_i386.deb ก็ติดตั้งได้เลย

dpkg -i kernel-image-2.6.8_custom.1.0_i386.deb
(จากนั้นสร้างแรมดิส)
cd /boot/
mkinitrd -o /boot/initrd.img-2.6.8 2.6.8

6 แก้ไขบูทโหลดเดอร์ (grub) file /boot/grub/menu.lst ให้ได้ตามด้านล่างนี้

title           Debian GNU/Linux, kernel 2.6.8
root            (hd0,0)
kernel          /boot/vmlinuz-2.6.8 root=/dev/hdc1 ro
initrd          /boot/initrd.img-2.6.8
savedefault
boot
 
title           Debian GNU/Linux, kernel 2.6.8 (recovery mode)
root            (hd0,0)
kernel          /boot/vmlinuz-2.6.8 root=/dev/hdc1 ro single
initrd          /boot/initrd.img-2.6.8
savedefault
boot

จากนั้นสั่งแล้วบูทเครื่องเลย

update-grub
reboot

7 ภาวนาให้เครื่องที่สั่ง reboot กลับคืนมาโดยเร็ว

8 เหงือแตก

9 มาล่ะ หลังรีโมทเข้าไปได้ตรวจสอบเคอเนลที่อัพเกรดดูได้ดังนี้

gsm_modem5:/usr/src# uname -a
Linux gsm_modem5 2.6.8 #1 Tue May 20 00:30:07 ICT 2008 i686 GNU/Linux

10 นอนล่ะ

« »