LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1826|回复: 10

关于内核的一些经验,大家多谈谈哪些注意事项

[复制链接]
发表于 2002-8-1 23:48:41 | 显示全部楼层 |阅读模式
开个头:
[转贴]
《 octapult 》的文章 :
:一般来说 Debian 的 kernel-image 软体包的维护者在软体包
:的制作过程中都很贴心的为我们把所有的选项都编成
:module 了,所以我们在安装好 kernel-image 软体包後,
:只要执行 modprobe 就可以把我们需要的功能给载入
:kernel。如果您想要把某些功能直接编进 kernel,或者
:想要尝试编程属於自己系统的 kernel,可以使用下面的
:方法∶
下面的 xxxx 请您填入您准备安装的版本号码)
:
:1. $ apt-get install kernel-source-xxxx
:2. $ cd /usr/src
:3. $ tar zxvf kernel-source-xxxx.tar.gz
:4. $ cd /usr/src/kernel-source-xxxx
:5. $ make config
个人建议您使用 make menuconfig 或是 make xconfig
:,可以得到各个选项的简单说明。但是记得要安装其他相
:关软体包才能执行)
:6. $ make-kpkg -rev Custom.1 --initrd kernel_image
Custom.1 可以改成您自己取的版本名称)
:7. $ cd /usr/src
:8. $ dpkg -i kernel-image-xxxx_Custom.1_i386.deb
:
:其馀修改 lilo 的部份与安装 kernel-image 软体包的过程相同。
:
:p.s. 如果您不满意目前编程好的 kernel,而想要再重新
:编程一次,记得要先执行 make-kpkg clean 以後再执行
:5~8 的步骤。
 楼主| 发表于 2002-8-2 01:53:18 | 显示全部楼层

补充

一般从网上直接抓kernel image下来用的话,其实还可抓一个头文件下来,
象kernel-image-2.4.18.deb的话就有kernel-headers-2.4.18.deb这个deb.
那么自己如果想象官方一样发行kernel image的话,如何也提供一个headers呢?
以下是制作方法:
要编译一个完整的kernel_image + kernel_headers的话,请用一下指令

#make-kpkg --initrd --append-to-version=-custom.${VER} \
--revision=custom.${VER} \
kernel_image \
modules_image \
kernel_headers

make-kpkg的男人(man)里面有这些参数的说明,学会看男人,很重要哦。
嘿嘿
发表于 2004-4-25 15:56:58 | 显示全部楼层
发错啦!抱歉!
发表于 2004-4-26 16:38:34 | 显示全部楼层
呵呵,发现2。6内核的编译和2。4以前的不同。偶一直都是用官方的内核。我下载了kernel-source-2.6.5,发现里面有些新的东西。呵呵,按标准的内核编译方法,至少不用make dep了:-)
/usr/share/doc/kernel-source-2.6.5/debian.README.gz

准备重新编译一下内核。。。
发表于 2004-4-26 18:05:52 | 显示全部楼层
呵呵,居然出错了。在2.4内核中没有此问题。
make-kpkg --revision 20040421 kernel_image
出现的错误信息如下:                          
HOSTCC  scripts/modpost.o
scripts/modpost.c:197: error: redefinition of `print_exported_symbol'
scripts/modpost.c:179: error: `print_exported_symbol' previously defined here
scripts/modpost.c:203: error: redefinition of `print_exported_symbols'      
scripts/modpost.c:185: error: `print_exported_symbols' previously defined
here                                                                     
scripts/modpost.c:272: error: redefinition of `read_exported_symbols'
scripts/modpost.c:235: error: `read_exported_symbols' previously defined
here                                                                     
scripts/modpost.c:499: error: redefinition of `is_vmlinux_syms'
scripts/modpost.c:486: error: `is_vmlinux_syms' previously defined here
scripts/modpost.c:185: warning: `print_exported_symbols' defined but not
used                                                                     
scripts/modpost.c:235: warning: `read_exported_symbols' defined but not used
make[2]: *** [scripts/modpost.o] ?? 1                                       
make[1]: *** [scripts] 错误 2        
make[1]: Leaving directory `/usr/src/kernel-source-2.6.5'
make: *** [stamp-kernel-configure] 错误 2

有人遇到类似的问题吗?
发表于 2006-4-24 20:54:28 | 显示全部楼层
make clean,清了在编应该就行了.
回复 支持 反对

使用道具 举报

发表于 2006-4-24 22:21:26 | 显示全部楼层
apt-get install kernel-source-xxxx

貌似在etch里找不到把?
回复 支持 反对

使用道具 举报

发表于 2006-4-25 12:05:44 | 显示全部楼层
Post by quanliking
开个头:
[转贴]
《 octapult 》的文章 :
:一般来说 Debian 的 kernel-image 软体包的维护者在软体包
:的制作过程中都很贴心的为我们把所有的选项都编成
:module 了,所以我们在安装好 kernel-image 软体包後,
:只要执行 modprobe 就可以把我们需要的功能给载入
:kernel。
......

前段时间,我安装了linux-image-2.6.16-xxx,让我这种从来没用更新过内核的菜鸟爽了一回,真是太简单了:apt-get install linux-image-2.6.16-xxx之后,/boot目录下面什么都有了,连老的grub都做了备份。自己不做任何修改,重启就可以在grub菜单发现新内核了。

但是,看了楼主文章,我想知道知道这个软体包为我提供了哪些模块?是否有我正想要的nvidia驱动和alsa驱动模块呢?
回复 支持 反对

使用道具 举报

发表于 2006-4-27 11:55:21 | 显示全部楼层
Post by haiti
貌似在etch里找不到把?

现在的内核包你名字一般是"linux-image-***",不是"kernel-iamge-***"。
我到sid的源里,下载的2.6.16内核包。
回复 支持 反对

使用道具 举报

发表于 2006-4-27 17:23:30 | 显示全部楼层
Post by terree
现在的内核包你名字一般是"linux-image-***",不是"kernel-iamge-***"。
我到sid的源里,下载的2.6.16内核包。

2.6.8的包那?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表