debian: เกร็ดการคอมไพล์เคอร์เนล

โมเด็มเสีย เลยถือโอกาสปรับปรุงระบบหลายอย่าง รวมทั้งการคอมไพล์เคอร์เนลด้วย
ปัญหาคือการคอมไพล์เคอร์เนล มันจะเร่งการคอมไพล์ให้เร็วด้วยการสร้างการคอมไพล์แบบขนานไปหลาย ๆ งาน (concurrent) จนเต็มค่าปริยายคือ 40
ทำให้บริการอื่นตายหมด
วิธีแก้ไขคือ ปรับค่านี้ให้น้อยลง ตอนที่กำลังคอมไพล์เคอร์เนล ผมใช้ค่า 2
# export CONCURRENCY_LEVEL=2
# make-kpkg --initrd kernel-image

ถ้าเป็นการคอมไพล์ปกติ ใช้ make -j2 ...

debian: lenny แก้ปัญหา waiting for root file system

ช่วงนี้ติดตั้งเครื่องหลายเครื่องด้วย lenny พบปัญหาบูตไม่ขึ้นด้วยข้อความว่า "waiting for root file system"
ค้นกูเกิลดูพบว่าเป็นปัญหาของแพกเกจ initramfs (เป็นทั้งรุ่น 0.92a และ 0.92b) ที่ตีความฮาร์ดดิสก์เป็น sda
ทางแก้มีหลายทาง เช่น กำหนดชื่อ (label) ให้พาร์ติชั่น หรือใช้ uuid
แต่รู้สึกว่ายุ่งยากไปหน่อย เพราะเคยมึนกับปัญหา uuid มาทีนึงแล้ว เลยคิดว่าลองกลับไปคบกับ yaird แทน ซึ่งดูจะมีปัญหานี้น้อยกว่า

ตอนนี้ yaird บน lenny ไม่รู้หายไปไหน ก็เลยต้องไปดาวน์โหลดของ sid มาแทน เวลาติดตั้งด้วยคำสั่ง dpkg -i เขาจะแจ้งว่าติดดีเพนเดนซี่ที่แพกเกจไหนบ้าง ก็ลงไปตามนั้นจนจบ

มีต้องแก้ไฟล์นิดนึงคือไฟล์ kernel-img.conf
$ sudo vi /etc/kernel-img.conf

...
#ramdisk = /usr/sbin/mkinitrd /usr/sbin/mkinitramfs
ramdisk = /usr/sbin/mkinitrd.yaird

เสร็จแล้วก็กลับมาคอนฟิกเคอร์เนลใหม่
$ sudo dpkg-reconfigure linux-image-2.6.24-1-686

เสร็จแล้ว รีบูตเข้าเคอร์เนลใหม่ได้เลย

อ้างอิง
Kernel compile gone wrong - SOLVED (yaird issue)

Topic: 

sid: kernel-2.6.24 / smbfs

sid อัปเดตเคอร์เนลเป็นรุ่น 2.6.24 แล้ว
ปัญหาคือ เขาไม่ยอมตั้งให้ smbfs เป็นแบบมอดูลเสียแล้ว (ท่าจะเลิกสนับสนุน smbfs จริง ๆ)
ทำให้การใช้งานโปรแกรมผ่าน dosemu มีปัญหา เพราะใช้งานผ่าน cifs แล้วเพี้ยน ๆ

ทางแก้ก็ต้องคอมไพล์เคอร์เนลเอง
สงสัยตอนนี้เริ่มต้องกลับมาคอมไพล์เองอีกแล้ว เพราะ sid เริ่มเปลี่ยนแปลงแกนหลักหลายอย่าง

วิธีการไม่ถูกหลักนะครับ ที่ถูกต้องควรดูที่ คอมไพล์เคอร์เนลสไตล์เดเบียน | debianclub
$ cd /usr/src
$ sudo aptitude install linux-source-2.6.24
$ tar xfj linux-source-2.6.24.tar.bz2
$ cd linux-source-2.6.24
$ sudo cp /boot/config-2.6.24-1-686 .config
$ sudo vi .config

...
CONFIG_RPCSEC_GSS_SPKM3=m
CONFIG_SMB_FS=m
# CONFIG_SMB_NLS_DEFAULT is not set
CONFIG_CIFS=m
...

$ sudo make-kpkg clean
$ sudo make-kpkg --initrd linux-image

-- รอครึ่งชั่วโมง --
$ cd ..
$ sudo dpkg -i linux-image-2.6.24_2.6.24-10.00.Custom_i386.deb

บูตเครื่อง เลือกเคอร์เนลใหม่

เสร็จแล้ว โปรแกรมที่ใช้ดอส ผ่าน dosemu กลับมาใช้ได้เหมือนเดิมแล้ว
$ sudo mount -t smbfs //server/dosapp /mnt/dosapp -o username=user1,password=user1password