配置并编译内核[更新到linux-2.6.34][增加自动精简]
- casio2424
- 帖子: 30
- 注册时间: 2009-07-01 1:00
Re: 配置并编译内核[更新到linux-2.6.29.2]
很不错的东西,谢谢。
-
- 帖子: 6
- 注册时间: 2008-09-10 10:05
-
- 帖子: 14
- 注册时间: 2008-07-20 18:24
-
- 帖子: 17
- 注册时间: 2009-04-05 21:48
Re: 配置并编译内核[更新到linux-2.6.29.2]
mark 准备实施,是试试
-
- 帖子: 94
- 注册时间: 2007-04-21 13:05
Re: 配置并编译内核[更新到linux-2.6.29.2]
我编译的时候用的
sudo make-kpkg --initrd --append-to-version=-0720 kernel_image
后来改了配置文件,把后面的0720换成0722,说是最新的,没重新生成包
sudo make-kpkg --initrd --append-to-version=-0722 kernel_image
还有,楼主说的
补充1:如果编译内核后,只是希望修改某些模块(M)选项,可以不用完全重新编译。
只需要执行
make xconfig
然后之添加或减少模块(M)选项
然后(不要执行make mrproper和sudo make-kpkg clean),
直接执行编译命令如
sudo make-kpkg -initrd --initrd --append-to-version=david0.68 kernel_image #整条命令要和上次编译时一样
make就会在原来编译的基础上,编译新选上的模块(如果有的话),而不会全部重新编译。
写了两个-initrd,一个是两个-,另一个是一个-,不知道是不是写错了?我也试了下,不行~
sudo make-kpkg --initrd --append-to-version=-0720 kernel_image
后来改了配置文件,把后面的0720换成0722,说是最新的,没重新生成包
sudo make-kpkg --initrd --append-to-version=-0722 kernel_image
还有,楼主说的
补充1:如果编译内核后,只是希望修改某些模块(M)选项,可以不用完全重新编译。
只需要执行
make xconfig
然后之添加或减少模块(M)选项
然后(不要执行make mrproper和sudo make-kpkg clean),
直接执行编译命令如
sudo make-kpkg -initrd --initrd --append-to-version=david0.68 kernel_image #整条命令要和上次编译时一样
make就会在原来编译的基础上,编译新选上的模块(如果有的话),而不会全部重新编译。
写了两个-initrd,一个是两个-,另一个是一个-,不知道是不是写错了?我也试了下,不行~
- 。X-mAN
- 帖子: 25
- 注册时间: 2009-07-22 9:59
Re: 配置并编译内核[更新到linux-2.6.29.2]
强贴 

要说再见真的很伤感 只有梦依旧香甜 当蜻蜓不再飞翔 当蝴蝶不再流浪 我的心已告别青苹果 只有爱依旧灿烂 请相信我们明天一定会再见 就像白云离不开蓝天
- lucky_yjw
- 帖子: 129
- 注册时间: 2009-07-17 20:57
Re: 配置并编译内核[更新到linux-2.6.29.2]
从通用内核升级到RT内核一定要重新再装一遍显卡驱动吗?
我的升级到RT内核后就没办法安装NV显卡了,而且老是说X-server在启动中,我明明已经gdm stop了啊!郁闷...
我的升级到RT内核后就没办法安装NV显卡了,而且老是说X-server在启动中,我明明已经gdm stop了啊!郁闷...
- syrano
- 帖子: 4313
- 注册时间: 2007-10-06 18:40
Re: 配置并编译内核[更新到linux-2.6.29.2]
pkill -9 Xorglucky_yjw 写了:从通用内核升级到RT内核一定要重新再装一遍显卡驱动吗?
我的升级到RT内核后就没办法安装NV显卡了,而且老是说X-server在启动中,我明明已经gdm stop了啊!郁闷...
E=m c^2
- lucky_yjw
- 帖子: 129
- 注册时间: 2009-07-17 20:57
Re: 配置并编译内核[更新到linux-2.6.29.2]
安装deb时出错:
Failed to process /etc/kernel/postinst.d at /var/lib/dpkg/info/linux-image-2.6.29.2vito1.postinst line 1186.
dpkg:处理 linux-image-2.6.29.2vito1 (--install)时出错:
子进程 post-installation script 返回了错误号 2
在处理时有错误发生:
linux-image-2.6.29.2vito1
怎么办?
还有,怎么卸载掉原来编译的内核?
Failed to process /etc/kernel/postinst.d at /var/lib/dpkg/info/linux-image-2.6.29.2vito1.postinst line 1186.
dpkg:处理 linux-image-2.6.29.2vito1 (--install)时出错:
子进程 post-installation script 返回了错误号 2
在处理时有错误发生:
linux-image-2.6.29.2vito1
怎么办?
还有,怎么卸载掉原来编译的内核?
- lucky_yjw
- 帖子: 129
- 注册时间: 2009-07-17 20:57
Re: 配置并编译内核[更新到linux-2.6.29.2]
解决了,把nvidia-common软件包卸掉就ok了,老显卡才会用到这个包!lucky_yjw 写了:安装deb时出错:
Failed to process /etc/kernel/postinst.d at /var/lib/dpkg/info/linux-image-2.6.29.2vito1.postinst line 1186.
dpkg:处理 linux-image-2.6.29.2vito1 (--install)时出错:
子进程 post-installation script 返回了错误号 2
在处理时有错误发生:
linux-image-2.6.29.2vito1
怎么办?
还有,怎么卸载掉原来编译的内核?
- lucky_yjw
- 帖子: 129
- 注册时间: 2009-07-17 20:57
Re: 配置并编译内核[更新到linux-2.6.29.2]
楼主不能回答一下这个问题吗?我也有同样的疑惑啊!czyhd 写了:我编译的时候用的
sudo make-kpkg --initrd --append-to-version=-0720 kernel_image
后来改了配置文件,把后面的0720换成0722,说是最新的,没重新生成包
sudo make-kpkg --initrd --append-to-version=-0722 kernel_image
还有,楼主说的
补充1:如果编译内核后,只是希望修改某些模块(M)选项,可以不用完全重新编译。
只需要执行
make xconfig
然后之添加或减少模块(M)选项
然后(不要执行make mrproper和sudo make-kpkg clean),
直接执行编译命令如
sudo make-kpkg -initrd --initrd --append-to-version=david0.68 kernel_image #整条命令要和上次编译时一样
make就会在原来编译的基础上,编译新选上的模块(如果有的话),而不会全部重新编译。
写了两个-initrd,一个是两个-,另一个是一个-,不知道是不是写错了?我也试了下,不行~
- syrano
- 帖子: 4313
- 注册时间: 2007-10-06 18:40
Re: 配置并编译内核[更新到linux-2.6.29.2]
以前可以, 好像现在不行了.lucky_yjw 写了:楼主不能回答一下这个问题吗?我也有同样的疑惑啊!czyhd 写了:我编译的时候用的
sudo make-kpkg --initrd --append-to-version=-0720 kernel_image
后来改了配置文件,把后面的0720换成0722,说是最新的,没重新生成包
sudo make-kpkg --initrd --append-to-version=-0722 kernel_image
还有,楼主说的
补充1:如果编译内核后,只是希望修改某些模块(M)选项,可以不用完全重新编译。
只需要执行
make xconfig
然后之添加或减少模块(M)选项
然后(不要执行make mrproper和sudo make-kpkg clean),
直接执行编译命令如
sudo make-kpkg -initrd --initrd --append-to-version=david0.68 kernel_image #整条命令要和上次编译时一样
make就会在原来编译的基础上,编译新选上的模块(如果有的话),而不会全部重新编译。
写了两个-initrd,一个是两个-,另一个是一个-,不知道是不是写错了?我也试了下,不行~
E=m c^2
- lucky_yjw
- 帖子: 129
- 注册时间: 2009-07-17 20:57
Re: 配置并编译内核[更新到linux-2.6.29.2]
怪不得无论查看man文件还是自己试了几遍都不行。看来修改配置文件后还是要先sudo make-kpkg clean才能重新编译得到正确的deb包啦?
而且第一个参数-initrd是没用的吧?应该要两个--
另外有一点不明白:
"fakeroot make-kpkg --initrd --append-to-version=david0.75 kernel_image"
不用fakeroot可以吗?直接sudo不行吗?若我不在我家目录编译,而是在/usr/src/`uname -r`下进行编译,用sudo不是更好吗?
毕竟fakeroot只是假的root。还望指教!
而且第一个参数-initrd是没用的吧?应该要两个--
另外有一点不明白:
"fakeroot make-kpkg --initrd --append-to-version=david0.75 kernel_image"
不用fakeroot可以吗?直接sudo不行吗?若我不在我家目录编译,而是在/usr/src/`uname -r`下进行编译,用sudo不是更好吗?
毕竟fakeroot只是假的root。还望指教!
- syrano
- 帖子: 4313
- 注册时间: 2007-10-06 18:40
Re: 配置并编译内核[更新到linux-2.6.29.2]
fakeroot 相对比较安全.lucky_yjw 写了:怪不得无论查看man文件还是自己试了几遍都不行。看来修改配置文件后还是要先sudo make-kpkg clean才能重新编译得到正确的deb包啦?
而且第一个参数-initrd是没用的吧?应该要两个--
另外有一点不明白:
"fakeroot make-kpkg --initrd --append-to-version=david0.75 kernel_image"
不用fakeroot可以吗?直接sudo不行吗?若我不在我家目录编译,而是在/usr/src/`uname -r`下进行编译,用sudo不是更好吗?
毕竟fakeroot只是假的root。还望指教!
E=m c^2
- lucky_yjw
- 帖子: 129
- 注册时间: 2009-07-17 20:57
Re: 配置并编译内核[更新到linux-2.6.29.2]
This option over rides the environment variable APPEND_TO_VERSION Please note that you must run a make-kpkg clean after configuring the kernel using make (x|menu)?config, since that creates the file include/linux/version.h without the append_to_version data (foo). This file won't be updated by the make-kpkg run (make-kpkg creates version.h if it doesn't exist, but doesn't touch if exists), so the final kernel will _not_ have the append_to_version data in its version number it shall look for the modules and symbols in all the wrong places. The simplest solution is either to remove include/linux/version.h after configuring and before compiling, or running make-kpkg clean after configuring, before compiling. Note also that once you use --append_to_version foo for configuring, or building the kernel-image, you need to also use the same option in any later invocation of make-kpkg (say, for building stand alone modules, or something). make-kpkg does not remember the argument foo in between invocations
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
以上是--append-to-version参数的部分man说明,简单地就是说配置内核后一定要重新运行make-kpkg clean 或者删除include/linux/version.h这个文件以达到不用重新编译内核也能更改模块设置。但我试过删除这个include/linux/version.h文件内核的deb包还是没有更新啊!郁闷....
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
以上是--append-to-version参数的部分man说明,简单地就是说配置内核后一定要重新运行make-kpkg clean 或者删除include/linux/version.h这个文件以达到不用重新编译内核也能更改模块设置。但我试过删除这个include/linux/version.h文件内核的deb包还是没有更新啊!郁闷....