p { margin-bottom: 0.08in; }
Linux
内核版本:
2.6.33.7
,目的:调试带
K
VM
的内核
重新指定时区
:
dpkg-reconfigure
tzdata ,否则编译不完整
(make:
warning: Clock skew detected.Your build may be incomplete.)
第一次运行前,清除以前的状态:
清除残余文件:
make mrproper
删除
.O及其配置文件
.
config
,在第一次编译前使用,以后使用
make
clean
depmod
menuconfig
选项选择:
升级:
apt-get
upgrade
或者
apt-get
dist-upgrade
安装编译所需工具:
apt-get
install build-essential kernel-package libncurses5-dev libqt3-headers
建立链接文件:
ln
-s
/usr/src/linux-2.6.33.7 /usr/src/linux
运行
make
menuconfig
目的是生成
.config文件
把
Makefile中的
-O2优化选项改为
-O
make过程:
make -j4
CONFIG_DEBUG_SECTION_MISMATCH=y
make
install 拷贝
arch/x86/boot/bzImage)
make -j4
modules `
make modules_install
创建
initram
(#mkinitramfs
-o
/boot/initrd.img-2.6.33.7
此法在
ubuntu上行不通
)
#update-initramfs –c –k 2.6.33.7
拷贝三个文件到目标机的
/boot目录
#scp
/usr/src/linux/arch/x86/boot/bzImage
root@192.168.6.13:/boot/vmlinuz-2.6.33.7-kgdb
#scp
System.map root@192.168.6.13:/boot/System.map-2.6.33.7-kgdb
#scp
initrd.img-2.6.33.7 root@192.168.6.13:/boot/initrd.img-2.6.33.7
修改目标机的
grub引导菜单,先备份
/boot/grub/grub.conf
自动生成
grub.cfg:
update-grub
,但还是需要修改
grub.cfg
修改:
/boot/grub/grub.conf:
title 2.6.33.7 kgdb
root (hd0,0)
kernel /boot/vmlinuz-2.6.7-kgdb ro
root=/dev/hda1 kgdboc=ttyS0 ,9600 kgdbwait
重启:
目标机重启
reboot 2.6.33.7 kgdb
系统提示
wait remoting
connecting....
开发机连接目标机
#cd /usr/src/linux2.6.33/
#gdb vmlinux
(gdb)set remotebaud 9600
(gdb)target remote /dev/ttyS0
(gdb)cont