LinuxSir.cn,穿越时空的Linuxsir!

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

kernel和modules编译的问题

[复制链接]
发表于 2005-5-11 14:25:58 | 显示全部楼层 |阅读模式
假如我编译了kernel_1和对应的modules_1(/lib/modules/),然后我又想重新编译一个kernel _2 and modules_2。

如果要两个共存怎么办?/boot/下的kernel因为文件名不同而可以共存,但第二次make modules_install 不是会把moduels_1的给盖掉?

如果我把 modules_1改名,那用kernel_1启动的时候,怎么找到对应的modules 啊?
发表于 2005-5-11 14:32:57 | 显示全部楼层
你启动哪个内核就用哪个内核的模块,不影响别的
回复 支持 反对

使用道具 举报

发表于 2005-5-11 14:45:20 | 显示全部楼层
不同内核的模块会被分别放到/lib/modules/下的不同的目录中。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-5-11 20:00:48 | 显示全部楼层
我的问题是,编译第二个内核的时候,make modules_install 会不会把第一个编译的模块给覆盖掉?
如果不覆盖的话,它是如何命名的?

因为我在vm上装了个rh7.3作试验,它的通用内核文件名是kernel-2.4,模块名也是这个名字目录
而我无论定制内核编译多少次,它的模块名都是kernel-2.4custom,那以前定制编译出来的模块不是没有了么?
回复 支持 反对

使用道具 举报

发表于 2005-5-11 20:26:33 | 显示全部楼层
>>我的问题是,编译第二个内核的时候,make modules_install 会不会把第一个编译的模块给覆盖掉?
不会的。
>>如果不覆盖的话,它是如何命名的?
它的命名规则不会让它和原来kernel的名字冲突。(我知道这是通过Makefile自动完成的,但我没有研究过)
>>因为我在vm上装了个rh7.3作试验,它的通用内核文件名是kernel-2.4,模块名也是这个名字目录
>>而我无论定制内核编译多少次,它的模块名都是kernel-2.4custom,那以前定制编译出来的模块不是没有了么?
这种情况下,是的。你原来编译出来的模块没有了。有兄弟在这个版里说到改变extraversion(在这里,custom就应该是extraversion吧),来达到每次重新编译都不会影响前一次编译的目的。
回复 支持 反对

使用道具 举报

发表于 2005-5-11 20:54:28 | 显示全部楼层
其他系统不清楚,如果是debian的话,重编译内核,模块是可以进行版本控制的
比如用append-vession来指定一个版本号
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-5-11 21:26:56 | 显示全部楼层
谢谢各位
回复 支持 反对

使用道具 举报

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

本版积分规则

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