Linux设备驱动程序学习--内核编译
2012-03-09 11:43
369 查看
Linux内核版本3.2.0(uname -r可查看)
Ubuntu版本10.04(查看方法/article/6076913.html)
通过http://www.kernel.org/下载需要的内核版本
解压到某一路径下,我解压到了/usr/src,任意路径应该都可以,该文件夹的名字为linux-3.2
#cd /usr/src/linux-3.2
配置内核,使用make menuconfig, make xconfig等命令均可,配置方法参考http://lamp.linux.gov.cn/Linux/kernel_options.html,由于我并不了解,不在此班门弄斧。
编译内核
#make
可能需要几个小时
安装模块及内核
#make modules_install
#make install
更新grub
两种方法
#grub_mkconfig
或
#update-grub
之后,启动项在/boot/grub/grub.cfg中查看,大概60多行的样子
我的增加了如下内容
menuentry 'Ubuntu,Linux 3.2.0' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod ext2
set root='(hd0,3)'
search --no-floppy --fs-uuid --set 6f9dd836-7461-4b59-84ca-eff8707297e1
linux /boot/vmlinuz-3.2.0 root=/dev/sda3 ro quiet splash
}
menuentry 'Ubuntu,Linux 3.2.0 (恢复模式)' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod ext2
set root='(hd0,3)'
search --no-floppy --fs-uuid --set 6f9dd836-7461-4b59-84ca-eff8707297e1
echo '载入 Linux ...'
linux /boot/vmlinuz-3.2.0 root=/dev/sda3 ro single
echo '载入引导虚拟磁盘 ...'
}
重新启动电脑,选择该选项,即可进入自己新编译的内核了。
看起来很简单的事情,愁了好几天。主要是不知道grub要更新,有命令的,我自己进入该文件,类似的复制了一份,进行了修改,应该是修改错了,每次选择那个内核的时候,都是kernel panic,我一度怀疑是配置内核时出问题了,编译了无数次。。。。
感谢zjc和gmy给我的帮助。
Ubuntu版本10.04(查看方法/article/6076913.html)
通过http://www.kernel.org/下载需要的内核版本
解压到某一路径下,我解压到了/usr/src,任意路径应该都可以,该文件夹的名字为linux-3.2
#cd /usr/src/linux-3.2
配置内核,使用make menuconfig, make xconfig等命令均可,配置方法参考http://lamp.linux.gov.cn/Linux/kernel_options.html,由于我并不了解,不在此班门弄斧。
编译内核
#make
可能需要几个小时
安装模块及内核
#make modules_install
#make install
更新grub
两种方法
#grub_mkconfig
或
#update-grub
之后,启动项在/boot/grub/grub.cfg中查看,大概60多行的样子
我的增加了如下内容
menuentry 'Ubuntu,Linux 3.2.0' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod ext2
set root='(hd0,3)'
search --no-floppy --fs-uuid --set 6f9dd836-7461-4b59-84ca-eff8707297e1
linux /boot/vmlinuz-3.2.0 root=/dev/sda3 ro quiet splash
}
menuentry 'Ubuntu,Linux 3.2.0 (恢复模式)' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod ext2
set root='(hd0,3)'
search --no-floppy --fs-uuid --set 6f9dd836-7461-4b59-84ca-eff8707297e1
echo '载入 Linux ...'
linux /boot/vmlinuz-3.2.0 root=/dev/sda3 ro single
echo '载入引导虚拟磁盘 ...'
}
重新启动电脑,选择该选项,即可进入自己新编译的内核了。
看起来很简单的事情,愁了好几天。主要是不知道grub要更新,有命令的,我自己进入该文件,类似的复制了一份,进行了修改,应该是修改错了,每次选择那个内核的时候,都是kernel panic,我一度怀疑是配置内核时出问题了,编译了无数次。。。。
感谢zjc和gmy给我的帮助。
相关文章推荐
- 关于学习Linux的经典书籍 (深入理解Linux内核、Linux设备驱动程序等) .
- 关于学习Linux的经典书籍 (深入理解Linux内核、Linux设备驱动程序等)
- Linux字符设备驱动程序编译进入内核的方法
- 关于学习Linux的经典书籍 (深入理解Linux内核、Linux设备驱动程序等
- 关于学习Linux的经典书籍 (深入理解Linux内核、Linux设备驱动程序等)
- 关于学习Linux的经典书籍 (深入理解Linux内核、Linux设备驱动程序等)
- [linux设备驱动程序]scull字符设备驱动编译在新内核编译问题解决方案
- 学习笔记——《LINUX设备驱动程序(第三版)》Linux设备模型:内核添加、删除设备、驱动程序
- 关于学习Linux的经典书籍 (深入理解Linux内核、Linux设备驱动程序等) .
- linux设备驱动程序 源码 2.6 内核编译错误总结
- Linux设备驱动程序学习(7)-内核的数据类型
- 关于学习Linux的经典书籍 (深入理解Linux内核、Linux设备驱动程序等)
- 关于学习Linux的经典书籍 (深入理解Linux内核、Linux设备驱动程序等)
- 关于学习Linux的经典书籍 (深入理解Linux内核、Linux设备驱动程序等)
- Linux设备驱动程序学习(7)-内核的数据类型(深入分析Linux内核链表)
- Linux设备驱动程序学习(7)-内核的数据类型
- 关于学习Linux的经典书籍 (深入理解Linux内核、Linux设备驱动程序等) .
- .Linux设备驱动程序学习(0)——设备驱动介绍& Hello, world!模块 内核参数传递
- 关于学习Linux的经典书籍 (深入理解Linux内核、Linux设备驱动程序等)
- 关于学习Linux的经典书籍 (深入理解Linux内核、Linux设备驱动程序等)