为你详解:Suse模块的知识

系统 Linux
在工作中也很喜欢总结关于Suse的经验教训,下面就这个问题来详细说说Suse模块。Suse模块的问题希望对你有所帮助。看完本文你肯定有不少收获,希望本文能教会你更多关于Suse模块的东西。

本人很喜欢Suse,在工作中也很喜欢总结关于Suse的经验教训,下面就这个问题来详细说说Suse模块。Suse模块的问题希望对你有所帮助。看完本文你肯定有不少收获,希望本文能教会你更多关于Suse模块的东西。

一、升级Suse内核

1、查看当前系统内核版本
cat /proc/version
rpm -qf /boot/vmlinuz

2、备份原kernel的启动文件
cp /boot/vmlinuz /boot/vmlinuz.old
cp /boot/initrd /boot/initrd.old

3、安装新内核
rpm -Uvh new_kernel.rpm

二、降级内核
rpm -Uvh --force old_kernel.rpm

三、内核配置
当前内核结构存储在/proc/config.gz中,

1、要修改配置,需以root用户到/usr/src/linux*目录下执行:
zcat /proc/config.gz >.config
make oldconfig
make oldconfig命令以/usr/src/linux*/.config做为内核配置的临时模板,当前系统内核中所有新的选项都会被扫描。
如果没有使用.config,则默认使用当前内核源码配置

2、命令行下配置
make menuconfig

3、X-window下配置
make xconfig

四、内核模块
硬件发展速度太快,内核更新速度相对慢,使用新的硬件设备就需要使用驱动程序,让kernel认识这个新设备。
linux中配置驱动有两种方式:

1、将驱动程序编译到内核中,这样编译出来在内核体积很大。

2、将驱动程序编译成一个模块,kernel在需要时再加载这个模块,这样编译出来的内核体积小,
在编译内核时,选择驱动程序是否编译到内核中。
在系统启动时,bios或者 boot loader.需要加载内核,所以,最好情况下是尽可能的减小内核大小,加快启动速度。
像ext2,SCSI驱动等一些小的驱动程序,适合编译到内核中;
而像声卡、msdos、isofs这些在系统启动时并不需要,可以做为模块来加载,不要编译到内核中,减小内核大小

内核模块位于/lib/modules/目录下

1、hwinfo命令可以打印出当前系统中的硬件信息
hwinfo --help
hwinfo --scsi 可以查看某一个模块的信息

2、模块相关的一些命令
insmod
从/lib/modules/及其子目录下查找模块,然后加载模块到kernel中。2.6之后尽量使用modprobe代替insmod命令
rmmod
卸载指定的模块。当某个模块不再需要时,可以从内核中卸载。
例如,isofs模块,只有在CD-ROM没有mount时才可以卸载
depmod
在/lib/modules/下创建一个modules.dep文件,详细说明了所有模块之间的附属关系。
当系统启动时,会自动创建这个文件
modprobe
加载、卸载一个指定的模块。
modprobe会检查/etc/modprobe.conf文件,加载模块
lsmod
查看当前系统中加载了那些模块,哪些模块使用了它们
modinfo
查看某个模块的信息
std:~ # modinfo ide_disk
filename: /lib/modules/2.6.16.21-0.8-default/kernel/drivers/ide/ide-disk.ko
description: ATA DISK Driver
alias: ide:*m-disk*
license: GPL
vermagic: 2.6.16.21-0.8-default 586 REGPARM gcc-4.1
supported: yes
depends: ide-core
srcversion: 83FCEE80754F82BEA4B03A0

3、/etc/modprobe.conf
系统启动时,会读取/etc/modprobe.con、/etc/modprobe.conf.local和/etc/modprobe.d目录,根据这些文件与目录相关内容加载模块
更详细信息查看man modprobe.conf

五、编译内核
将内核编译成一个"bzImage"
如果配置过程中,加载了过多的模块。造成内核过大,在编译过程中会报错
cd /usr/src/linux*
make clean
make bzImage
make clean
make vmlinux
上面命令也可以写成一行
make clean bzImage
make clean vmlinux
完成后,到/usr/src/linux/arch//boot下查找名称为vmlinux.gz的文件,这个是内核的压缩镜像

如果没有文件,说明编译过程不成功
make bzImage 2>&1 | tee kernel.out
make clean vmlinux 2>&1 | tee kernel.out

本文已经讲完了Suse模块,希望你已经熟悉了我所讲的Suse模块。

【编辑推荐】

  1. SUSE linux10.0下用vsftp建FTP
  2. 解决Suse SLES11 bond网卡的XEN网桥问题
  3. 怎样开启Suse ntp服务
  4. 学习技巧:Suse启动xdmcp
  5. 详解用SuSE Linux10安装Oracle数据库
责任编辑:小霞 来源: 青之专栏
相关推荐

2009-12-03 18:50:55

Suse xmanag

2009-11-27 16:39:55

Suse YaST

2009-12-03 14:35:09

DHCP服务器配置

2009-11-30 18:04:10

Suse Moblin

2009-12-02 09:17:50

Open Suse

2009-12-16 09:13:05

Ruby赋值语句

2018-06-29 16:00:05

SUSE

2009-11-26 17:20:39

Open SUSE安装

2009-12-08 11:05:59

2009-11-26 08:52:04

XManager连接O

2009-11-25 11:17:54

Suse Linux

2009-11-30 10:21:41

2009-12-03 18:46:06

Suse ftp配置

2009-12-01 13:55:05

SUSE Linux

2009-11-27 16:16:58

Suse中文编码

2009-12-02 11:39:15

samba设置用户

2009-12-11 14:05:32

Linux安装GCC

2009-12-01 16:16:41

Open Suse

2009-11-30 17:40:13

Suse双网卡绑定

2009-11-30 13:50:13

配置透明代理
点赞
收藏

51CTO技术栈公众号