一、Kernel常用命令
1、Kernel组成:
核心:/boot/vmlinuz-version
内核模块(ko): /lib/modules/version/
2、装载模块命令:
insmod
modprobe
3、用户空间:是访问、监控内核的方式:
4、伪文件系统/proc, /sys:
/proc/sys: 此目录中的文件很多是可读写的
/sys/: 某些文件可写
5、设定内核参数值的方法:
a、能立即生效,但无法永久有效:
echo VALUE > /proc/sys/TO/SOMEFILE,如:echo 1 > /proc/sys/vm/drop_caches;
sysctl -w kernel.hostname="NAME";
b、永久有效:/etc/sysctl.conf
c、修改文件完成之后,执行如下命令可立即生效:
sysctl -p :重读/etc/sysctl.conf文件
sysctl -a: 显示所有内核参数及其值
二、内核模块管理
1、内核模块管理命令:
a、lsmod: 查看内核模块
modprobe MOD_NAME:装载某模块
modprobe -r MOD_NAME: 卸载某模块
b、modinfo MOD_NAME: 查看模块的具体信息
insmod /PATH/TO/MODULE_FILE: 装载模块
rmmod MOD_NAME 移除模块
c、depmod /PATH/TO/MODILES_DIR 生成模块的依赖关系
2、编译内核功能的选择:
内核中的功能除了核心功能之外,在编译时,大多功能都有三种选择:
a、不使用此功能;
b、编译成内核模块;
c、编译进内核;
3、编译内核的环境make命令:GNU make utility to maintain groups of programs
a、make gconfig: Gnome桌面环境使用,需要安装图形开发库组:GNOME Software Development
b、make kconfig: KDE桌面环境使用,需要安装图形开发库
c、make menuconfig: 文本模式下的执行窗口;
三、文本模式下如何手动编译内核功能模块
1、挂载系统镜像文件 mount /dev/cdrom /media/cdrom
2、创建本地yum服务文件/etc/yum.repos.d/local.repo
[base]
name=Server
baseurl=file:///media/cdrom/CentOS
enabled=1
gpgcheck=0
3、cd /etc/yum.repos.d/
4、安装图形开发库Development Libraries和Development Tools
# yum groupinstall "Development Tools" "Development Libraries"
5、下载Kernel linux-2.6.28.10.tar.gz
6、解压缩tar xf linux-2.6.28.10.tar.gz -C /usr/src
7、# ln -sv linux-2.6.28.10 linux
8、cd /usr/src/linux
9、cp /boot/config-2.6.18-348.el5 /usr/src/linux/.config
10、make menucofig,在打开的图形窗口中开始编译需要的功能模块;
11、make
12、make modules_install
13、make install
四、编译内核功能模块的其他命令
1、screen命令,yum install screen 安装后,可模拟多个桌面;
a)screen -ls: 显示已经建立的屏幕
b)bscreen: 直接打开一个新的屏幕
Ctrl+a, d: 拆除屏幕
c)screen -r ID: 还原回某屏幕
exit: 退出
2、二次编译时清理第一次编译的内核模块功能(清理前,如果有需要,请备份配置文件.config文件)