为何要说是在fc4下哪,通过我从晚上看其他文章发现fc4编译内核与以前rh有很大不同,在于步骤更简单。
先到www.kernel.org下载最新的内核,放到/usr/src下面,解压。
有几种方式定制
#make config(基于文本的最为传统的配置界面,不推荐使用)
#make menuconfig(基于文本选单的配置界面,字符终端下推荐使用)
#make xconfig(基于图形窗口模式的配置界面,Xwindow下推荐使用)
#make oldconfig(如果只想在原来内核配置的基础上修改一些小地方,会省去不少麻烦)
这四个命令中,make xconfig的界面最为友好,如果你可以使用Xwindow,那么就推荐你使用这个命令。
如果你不能使用Xwindow,那么就使用make menuconfig好了。界面虽然比上面一个差点,总比make config的要好多了。
需要占几百m空间,编译完之后
make modules_install
这个过程很快,之后
make install
这样就编译完成,会把一个img文件考到/boot下面,如果你重启的话会在grub中让你选择使用新的内核。
背景知识:
Linux作为一个自由软件,在广大爱好者的支持下,内核版本不断更新。新的内核修订了旧内核的bug,并增加了许多新的特性。如果用户想要使用这些新特性,或想根据自己的系统度身定制一个更高效,更稳定的内核,就需要重新编译内核。
通常,更新的内核会支持更多的硬件,具备更好的进程管理能力,运行速度更快、 更稳定,并且一般会修复老版本中发现的许多漏洞等,经常性地选择升级更新的系统内核是Linux使用者的必要操作内容。
为了正确的合理地设置内核编译配置选项,从而只编译系统需要的功能的代码,一般主要有下面四个考虑:
自己定制编译的内核运行更快(具有更少的代码)
系统将拥有更多的内存(内核部分将不会被交换到虚拟内存中)
不需要的功能编译进入内核可能会增加被系统攻击者利用的漏洞
将某种功能编译为模块方式会比编译到内核内的方式速度要慢一些
内核编译模式
要增加对某部分功能的支持,比如网络之类,可以把相应部分编译到内核中(build-in),也可以把该部分编译成模块(module),动态调用。
如果编译到内核中,在内核启动时就可以自动支持相应部分的功能,这样的优点是方便、速度快,机器一启动,你就可以使用这部分功能了;缺点是会使内核变得庞大起来,不管你是否需要这部分功能,它都会存在,这就是Windows惯用的招数,建议经常使用的部分直接编译到内核中,比如网卡。
如果编译成模块,就会生成对应的.o文件,在使用的时候可以动态加载,优点是不会使内核过分庞大,缺点是你得自己来调用这些模块。
分享到:
相关推荐
Fedora Core 4(FC4)的发布标志着Linux在桌面领域的又一个重要里程碑,它采用了最新的开源技术,包括GNOME 2.10、KDE 3.4、Firefox 1.0.4、OpenOffice.org 2.0(1.9.104)、X.org 6.8.2以及2.6.11内核。这些组件的...
在Linux操作系统中,编译内核是一项关键任务,它涉及到对操作系统的底层核心进行定制,以满足特定的功能需求或优化性能。当需要启用或禁用内核模块,或者支持新的硬件设备时,就需要重新编译内核。以下是关于Linux...
Fedora Core 4.0用户可以直接在`/usr/src/kernel`对应的目录下运行`make menuconfig`,参考发行版提供的`.config`文件进行配置。 **配置选项**: - **内核选项**:配置内核时,可以选择将某些组件编译进内核(*...
1. **软件包管理器**:在Fedora Core 4.0中,内核源码位于`/usr/src/kernels`目录下。如果未安装`kernel-devel`包,可以使用软件包管理器(如`yum`)进行安装。 2. **在线升级**:使用apt+synaptic或yum工具可以在线...
在安装或解压内核源码时,Fedora Core 4.0 将源码存放在 `/usr/src/kernels` 目录下。如果通过在线升级获取内核源码,也会保存在这个位置。如果没有安装 `kernel-devel` 软件包,那么这个目录会为空。可以通过软件包...
在开始编译内核之前,首先需要确认当前系统的内核版本,并下载相应的内核源代码包。可以通过以下命令来查看当前系统安装的内核版本: ```bash uname -r ``` 根据提供的部分内容,可以看出RH5、RH9以及RHEL4等不同...
在这个实验中,学生需要在Linux环境下重新编译内核,这包括寻找并下载内核源代码、配置内核、编译内核和模块,以及配置启动文件。以下是对实验步骤的详细解释: 1. **查找并下载内核源代码** Linux内核遵循GNU ...
它基于kprobes技术,允许用户在不编写C代码或编译内核模块的情况下,使用一种简单的脚本语言对内核行为进行观察和调试。kprobes是Linux内核中的一个功能,能动态地在内核函数或指令上设置探测点,以便在运行时捕获和...
确保在编译前已经正确配置了所有必需的驱动程序和支持组件,以确保新内核能够正常运行。 通过以上步骤,我们可以完成Linux内核的升级。这个过程虽然较为复杂,但对于提高系统的性能和安全性来说是非常必要的。希望...
- 在编译内核之前,一定要仔细阅读文档和相关资料,确保选择正确的配置选项。 - 确保所有依赖的库和工具都已经正确安装。 - 如果在升级过程中遇到问题,可以尝试搜索在线论坛或寻求专业人员的帮助。 通过上述步骤,...
在 /usr/src 文件夹下,删除 linux 文件夹(如果内核先前从未编译过,则没有这个文件夹),然后解压新内核源码包 using tar jvxf 命令,最后重新生成 linux 文件夹。 六、安装 module-init-tools 工具 在 /usr/src...
本文详细介绍了从2.4.x版本升级至2.6.24版本的过程,包括准备工作、配置安装、编译内核以及可能出现的问题及其解决方案。遵循本教程,即使是Linux初学者也能顺利完成内核升级任务。需要注意的是,内核升级涉及到系统...
4. 编译并移动旧文件:`#make moveold` 5. 安装所有文件:`#make allinstall` 6. 生成模块信息:`#./generate` #### 四、总结 本文详细介绍了从 Linux 2.4 内核升级到 2.6 内核的具体步骤,包括前期准备、下载必要...
返回到新内核目录,执行 `make && make modules` 来编译内核及模块。 2. **生成 initrd** 使用 `mkinitrd` 工具创建新的 initrd 映像。 3. **安装新内核** 使用 `make modules_install && make install` 来...
在 Fedora Core 系统下,可以使用以下命令编译内核: # make menuconfig 在内核配置界面中,需要选择正确的块设备选项,例如 loop()选项,因为刻录机是 IDE 类型的。然后,需要进入 “IDE, MFM, RL support” ...
这里需要注意,`rm -rf linux` 命令会删除 `linux` 文件夹,如果此前未曾编译过内核则可以直接跳过此步骤。 3. **安装module-init-tools** 仍然在 `/usr/src` 目录下,执行以下命令来解压并安装 `module-init-...
假设使用的发行版是Fedora Core 8 (FC8),可以在 `/lib/modules/<version>/build` 目录下找到 `.config` 文件。具体操作如下: ```bash # cd linux-2.6.24-rc3 # cp /lib/modules/2.6.23.1-42.fc8/build/.config . ...
#### 编译内核 - 进入内核源码目录:`#cd /usr/local/src/linux-2.6.18/linux-2.6.18` - 执行编译命令:`#make bzImage` - 成功编译后,内核映像文件会存放在`/usr/src/linux/arch/x86/boot/bzImage`路径下。 #### ...
配置完成后,开始编译内核: ```bash make ``` 这一步骤可能需要较长时间。 **9. 创建模块初始化脚本** 使用`mkinitrd`工具创建初始化脚本: ```bash mkinitrd /boot/initrd-2.6.20.img 2.6.20 ``` **10. 安装...