linux组成部分:
核心/boot/vmlinuz-version
内核模块:/lib/modules/version
内核设计:
单内核
模块化设计
微内核
装载模块命令:
insmod
modprobe
伪文件系统:
/proc
/proc/sys:此目录的文件很多是可读写的
/sys
某些文件可写
设定内核参数值的方法:
1、 echo VALUE > /proc/sys/to/somefile(重启会失效)
2、sysctl -w kernel.hostname="HOSTNAME"(重启会失效)
3、/etc/sysctl.conf(永久有效),但需使用sysctl -p 命令,使其立即生效
sysctl -a:显示所有系统参数值
内核模块管理
lsmod:查看系统模块
modprobe MOD_NAME:装载模块
modprobe -r MOD_NAME:卸载某模块
modinfo MOD_NAME:查看模块的具体信息
insmod /path/to/modules_FILE:装载模块
rmmod MOD_NAME:移除模块
depmod /PATH/TO/MODILES_DIR:生成模块的依赖关系
内核中的功能,除了核心功能以外,在编译时,大多功能都有三种选择:
1、不使用此功能
2、编译成内核模块
3、编译进内核
如何手动编译内核:
make gconfig :Gnome桌面环境使用(需安装图形开发库环境组:GNOME Software Development)
make Kconfig: KDE桌面环境使用(需安装图形开发库环境)
make menuconfig
make modules_install
make install
二次编译时清理,如果有需要,请备份配置文件.config:
make clean:清理此前编译好的二进制模块
make mrproper:清理编译所残留的工作的,包括.config
screen 命令:
screen -ls :显示建立的屏幕
screen :直接打开一个新的屏幕
screen -r ID:还原某屏幕
ctrl+a,d:拆除一个屏幕
生成initrd或者initramfs
RHEL5\6:mkinitrd,mkinitrd /boot/initrd-`uname -r` `uname -r`
mkinitrd initrd文件路径 内核版本号
RHEL6:dracut
linux内核编译及系统裁减(sysctl 内核模块管理 screen 生成initrd
原文地址:http://leozhenping.blog.51cto.com/10043183/1650917