内核组成部分:
 kernel    initrd

内核模块
uname -r查看当前内核
内核的功能:
文件系统
进程管理
内存管理
网络功能
驱动程序
安全管理(selinux)
虚拟化

/proc :进程和内存参数 用于查看进程和内存参数的接口
 /sys: 用于查看硬件设备或驱动程序相关参数

cd  /proc

cat swaps 查看swap分区信息

cat uptime 查看启动时间

cd /proc/sys/netipv4/

cat ip_forward  用于 ip转发

cd  /proc/sys/vm

echo 1 > drop_caches 丢弃缓存

sysctl -p 可以让内核重新读取sysctl.conf文件 不用重启

-a 用于显示当前所有内核参数及正在使用的值

-w 临时设置内核参数数值

如:sysctl  -w  net.ipv4.ip_forward=0

查看硬件信息
lspci
lsusb  
查看cpu的信息 cat /proc/cpuinfo
 x86info -a 显示详细信息

手动创建设备文件; mknod

如; mknod  /dev/mydev  b 16 1

 -m 可以设定权限

随机取数:

如  dd if=/dev/urandom bs=256 count=1 | md5sum | cut -d‘ ’ -f1 | tr -d 'a-zA-Z'

有规律的:echo $RANDOM

模块:

lsmod 查看内核已经装载的模块
  modinfo 查看模块的信息; 后跟模块名
 手动装载和卸载模块:
 modprobe module 装载
 modprobe -r module 卸载

insmod 插入模块

如: insmod   /lib/modules/2.6.18-164.el5/kernel/drivers/block/floppy.ko

 rmmod module 移除模块

 

配置文件:
  /etc/modprobe.conf 可给mod起别名

 

如何编译安装新内核:
1 下载获取新版本内核
2 配置新内核,选定要使用的功能或模块
ln -sv linux-2.6.28.10 linux
yum grouplist "Development Libraries"
yum groupinstall  Development Tools

cd /usr/src/linux
cp /boot/config-2.6.18-164.el5 ./.config
make menuconfig []不启用此项
[*]直接编译进内核
[M]编译成模块

cp /boot/config-2.6.18-164.el5 ./.config

3编译新内核
make

4安装
make modules_install
make install

配置内核的替代方法: yum groupinstall "KDE Software Development"
make xconfig
yum groupinstall "GNOME Software Development"
make gconfig

二 在已经编译过的内核源码基础上重新编译:
make clean
nake mrproper 清理源代码数
screen
-ls 查看screen列表
-r 后跟screen id
ctrl+a,d