分享
 
 
 

编译核心的方法

王朝other·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

编辑好核心设定档之后,再来就是重头戏喽!!

现在您可以开始来编译战死无数脑细胞所得来的战利品了,不过在编译之前,可能还得再奉献一些脑细胞来注意一些事项 ^_^

不同时期的版本提供了不同的编译方法,请您务必留心了!!

请先切换身份为 root

如果您使用的版本是 4.0 (不含) 以前的版本;或者是使用 RELEASE 路线的版本,而且 /usr/src 目录中只有 sys/ 这个子目录,那么您一定得用这种方式来编译安装您的核心┱

shell# cd /usr/src/sys/i386/confshell# /usr/sbin/config MYKERNELshell# cd ../../compile/MYKERNELshell# make dependshell# makeshell# make installshell# make clean

?config

检查核心设定文件是否有语法上的错误,如果没有就会在 /usr/src/sys/compile 建立 MYKERNEL/ 子目录,并将所需的原始程序代码覆制到 MYKERNEL/ 此目录下,准备好提供编译工作的环境

?make depend

检查所需的档案是否都存在

?make

开始编译核心。编译好之后的核心档名为 kernel,并存放于 /usr/src/sys/compile/MYKERNEL/ 目录下

?make install

安装编译好的核心与模块。

将 /modules 目录更名为 /modules.old

将编译好的模块安装到 /modules 目录中

将 /kernel 核心档更名为 /kernel.old

将编译好的核心档安装到 /kernel

?make clean

清除 /usr/src/sys/compile/MYKERNEL/ 目录下的所有档案

config 指令所产生的档案不会清除。

相关 make 的指令可以用 shell# make depend all install clean 来合而为一,这样就不用待在计算机旁等着下达下一个指令了!!

如果您是 4 字头的恶魔族 (FreeBSD 4.x),你要用底下的方法来编译核心┱

shell# cd /usr/srcVer: 4.2 (不含) 以后的版本shell# make buildkernel KERNCONF=MYKERNELshell# make installkernel KERNCONF=MYKERNELVer: 4.2 (含) 以前的版本shell# make buildkernel KERNEL=MYKERNELshell# make installkernel KERNEL=MYKERNEL

?make buildkernel KERNCONF=MYKERNEL

这个指令相等于先做 config 再做 make clean 然后执行 make depend

没有问题后就执行 make 来编译核心与模块

?make installkernel KERNCONF=MYKERNEL

这个指令相等于执行 make install 指令

其实这两个指令就是 make kernel KERNCONF=MYKERNEL 的拆开版。也就是说,如果您直接下达 make kernel KERNCONF=MYKERNEL 指令时,就会自动为您编译核心与模块,且安装它们就定位了。

如果您觉得要打这么长串的指令很麻烦的话,您可以在 /etc/make.conf 档案中加入 KERNCONF=MYKERNEL 的设定,就可以只下达 make kernel 指令。

如果您管理多部使用相同版本但配备不同的机器,您可以将所有的核心设定文件在执行速度较快的机器上进行编译,然后再将各机器的核心移过去安装。您可以同时编译它们,只要在 /etc/make.conf 中加入如下的设定即可。

# /etc/make.conf file# --- 省略 ---KERNCONF=MYKERNEL1 MYKERNEL2 MYKERNEL3 MYKERNEL4# --- 省略 ---# 各核心设定文件名称要以空白间隔开来哟

觉得每次要编译核心时,明明就没有更新核心的原始码,偏偏编译时模块就要再编一次,实在是很讨人厌,尤其是在速度特别慢的机器时,更是有想按下 Ctrl+C 的冲动 @@

其实您可以不用每次都编译模块的,用这个指令吧┱

make -DNO_MODULES kernel KERNCONF=MYKERNEL

您也可以在 /etc/make.conf 档案中加入如下设定 (二选一)┱

# /etc/make.conf file# --- 省略 ---NO_MODULES=true # 编译 kernel 时不编译模块MODULES_WITH_WORLD=true # 只在 buildworld 时才编译模块# --- 省略 ---

两种方法随您选用哦 ^_^

如果您要将在 A 主机上编译好的核心覆制到 B 主机上更新现有核心的话,您需执行如下指令┱

install -c -m 555 -o root -g wheel -fschg /path/kernel /kernel

-c = 覆制档案

-m = 档案权限

-o = 档案拥有者

-g = 工作群组

-f = 档案旗号

最后,再一次提醒您 ~ ~

要记得切换到 root 的身份来做这些事哟还有,系统安全等级要设为「0」 哟,不然您一定会吃鳖的 ^_^

最后,让我们来复习一下编译 kernel 的步骤┱

1.安装核心原始程序代码

2.编辑一个适合您系统的核心设定文件

3.决定编译核心的方式

4.编译新的核心并且安装

5.重新开机测试新的核心

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有