内核管理以及手动编译内核
2015-10-26 11:29
239 查看
内核管理:
1.查看当前内核加载的模块:lsmod
2.手动加载,卸载模块
modprobe mod_name -r选项为卸载
insmod /lib/modules/kernel_re/kernel/mod/_name
modinfo mod-name命令可以查看内核模块相关信息
depmod /path/to/filename 生成模块间的依赖关系
3.内核参数
/proc伪文件系统
/proc/sys目录下很多参数是可以读写的,可以使用cat,重定向等方式查看,修改其值
也可以使用sysctl命令进行修改
sysctl 由于默认就是修改/proc/sys目录下参数的值,所以使用格式比较特殊
将目录与文件之间的分隔符使用.替代/,省略/proc/sys
例如:修改/proc/sys/kernel/hostname参数,就sysctl -w kernel.hostname=NAME
-w:修改参数
-p:通知内核重读/etc/sysctl.conf文件
-a:显示全部内核参数和其值
使用上述方式修改在启动后会失效,但是会立即生效,永久生效的方式就是按照该文件的格式将参数和值写入/etc/sysctl.conf文件中
如何手动编译内核:
下载内核源码,解压到/usr/src,然后创建一个名为linux的链接文件,cd至linux目录下
make gconfig GNOME桌面环境使用:需要安装桌面图形开发库
make kconfig KDE桌面环境使用,同上
由于上述命令需要依赖于左面,用的最多的是make menuconfig会打开一个文本界面
打开的文本界面:
选择完成后,会生成一个.config的隐藏文件
为了保证编译后的内核可以运行,可以复制redhat官方的config文件(/boot/config)到该目录下为.config,然后再根据自己需要修改,可以显著的降低出错的可能性
然后make
make modules_install
make install
编译完成之后,会自动在grub.conf文件中添加一个新的title,可以选择使用新内核
如果内核编译错误,需要重新编译的时候,需要清楚之前编译生成的相关文件
make clean
make mrproper
1.查看当前内核加载的模块:lsmod
2.手动加载,卸载模块
modprobe mod_name -r选项为卸载
insmod /lib/modules/kernel_re/kernel/mod/_name
modinfo mod-name命令可以查看内核模块相关信息
depmod /path/to/filename 生成模块间的依赖关系
3.内核参数
/proc伪文件系统
/proc/sys目录下很多参数是可以读写的,可以使用cat,重定向等方式查看,修改其值
也可以使用sysctl命令进行修改
sysctl 由于默认就是修改/proc/sys目录下参数的值,所以使用格式比较特殊
将目录与文件之间的分隔符使用.替代/,省略/proc/sys
例如:修改/proc/sys/kernel/hostname参数,就sysctl -w kernel.hostname=NAME
-w:修改参数
-p:通知内核重读/etc/sysctl.conf文件
-a:显示全部内核参数和其值
使用上述方式修改在启动后会失效,但是会立即生效,永久生效的方式就是按照该文件的格式将参数和值写入/etc/sysctl.conf文件中
如何手动编译内核:
下载内核源码,解压到/usr/src,然后创建一个名为linux的链接文件,cd至linux目录下
make gconfig GNOME桌面环境使用:需要安装桌面图形开发库
make kconfig KDE桌面环境使用,同上
由于上述命令需要依赖于左面,用的最多的是make menuconfig会打开一个文本界面
打开的文本界面:
选择完成后,会生成一个.config的隐藏文件
为了保证编译后的内核可以运行,可以复制redhat官方的config文件(/boot/config)到该目录下为.config,然后再根据自己需要修改,可以显著的降低出错的可能性
然后make
make modules_install
make install
编译完成之后,会自动在grub.conf文件中添加一个新的title,可以选择使用新内核
如果内核编译错误,需要重新编译的时候,需要清楚之前编译生成的相关文件
make clean
make mrproper
相关文章推荐
- 神器SystemTap
- 簡單設定 kernel 選項在使用 iptables 前
- Ubuntu12.04内核升级出了问题
- kernel: printk: 2 messages suppressed.
- linux 内核 hash table 的使用
- Linux Kernel Panic报错解决思路
- linux安全相关
- 内核的主要配置文件的详细说明
- Linux Kernel 2.6.32 Local Root Exploit (x86_64)
- LINUX ulimit命令详解
- Linux Kernel kNFSd 整数溢出 拒绝服务漏洞 .
- 基于busybox和linux kernel制作小linux
- Linux IPv4代码分析系列(1)
- linux 升级kernel
- Linux内核锁机制
- gcc扩展,在kernel中的使用(怎么)
- 用brk实现sbrk,关于brk的返回值
- 【转载】解决/usr/bin/ld: cannot find -lxxx 问题
- 一个简单的时间片轮转多道程序内核代码 的实现
- epoll讲解