给joggler编译2.6.33.4内核
时间:2010-09-18 来源:瑞雪年
1. 先编译grub
wget ftp://alpha.gnu.org/gnu/grub/grub-1.98.tar.gz
wget http://stskeeps.subnetmask.net/joggler/grub-gop-video-v1.patch
tar xvf grub-1.98.tar.gz
cd grub-1.98
patch -p1 < ../grub-gop-video-v1.patch
apt-get install bison libxft-dev (备选)
./configure --with-platform=efi --disable-werror --target=i386
make
./grub-mkimage -d . -o grub.efi acpi cpuid gfxterm lspci sfs crc gptsync lvm sh gzio mdraid sleep datehook halt memrw pci tar date minicmd png terminal ata datetime hashsum minix probe terminfo at_keyboard dm_nv mmap echo help msdospart tga efi_gop hexdump raid bitmap efi_uga hfs read true bitmap_scale elf normal reboot udf blocklist iso9660 ntfscomp reiserfs bufio ext2 extcmd jpeg ntfs relocator cat fat keystatus scsi vga_text cat search_fs_file search_fs_uuid video_fb video videotest search_label fixvideo font fshelp loadbios loadenv linux part_msdos search xfs cmp charset setjmp loopback setpci cpio configfile gettext gfxmenu ls parttool
2. 使用生成的grub.efi替换内置引导程序boot.efi,并创建grub.cfg文件。
3. 生成kernel
到 http://aur.archlinux.org/packages.php?ID=36949下载全部源码:
wget http://ftp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.33.4.tar.bz2
wget http://www.ihku.biz/joggler/patches/joggler-backlight-2.6.32-v1.patch
wget http://www.ihku.biz/joggler/patches/joggler-i2c-fix-2.6.32-v1.patch
wget http://www.ihku.biz/joggler/patches/joggler-sound-fix-2.6.32-v2.patch
wget http://www.ihku.biz/joggler/patches/linux-2.6.33.2-iegd.patch
wget joggler-initscript
wget joggler-kernel.config
wget mkinitcpio-joggler.conf
tar xvf linux-2.6.33.4.tar.bz2
cd linux-2.6.33.4
patch -p1 < ../joggler-backlight-2.6.32-v1.patch
patch -p1 < ../joggler-i2c-fix-2.6.32-v1.patch
patch -p1 < ../joggler-sound-fix-2.6.32-v2.patch
patch -p1 < ../linux-2.6.33.2-iegd.patch
cp ../joggler-kernel.config ./.config
make menuconfig
make bzImage
make modules
make modules_install
cp ./arch/x86/boot/bzImage ./vmlinuz-2.6.33.4-joggler
4. 生成initrd
mkinitramfs -o ./ initrd.img-2.6.33.4-joggler
或
update-initramfs -c -k 2.6.33.4-joggler
cp /boot/initrd.img-2.6.33.4-joggler ./
5. 创建启动项
mkdir /media/mmcblk0p1/boot
cp ./vmlinuz-2.6.33.4-joggler /media/mmcblk0p1/boot/
cp ./ initrd.img-2.6.33.4-joggler /media/mmcblk0p1/boot/
在grub.cfg中添加下面内容:
menuentry "Joggler Ubuntu 9.10 with Linux 2.6.33.4"
{
set root=(hd0,1)
linux /boot/vmlinuz-2.6.33.4-joggler root=/dev/sda2 acpi=force ro idle=halt
initrd /boot/initrd.img-2.6.33.4-joggler
}
5. 重启后,就可这使用2.6.33.4内核进入U盘的ubuntu系统。
===================================================================================
注:参考文章《定制你的Joggler》