Linux 内核服务学习笔记(2)

㈢ 管理initrd image

initrd提供在引导初期要装载的模块

这些模块通常和存储设备及文件系统有关,但也支持其它特性和硬件外设

文件位于/boot/initrd-$(uname -r).img

有时会由于某种原因添加额外的模块:

mkinitrd --with=Module_name /boot/initrd-$(uname -r).img $(uname -r)

㈣ 通过/dev访问驱动程序

/dev目录下的文件可用来访问驱动程序

我们可以从这些文件读取或写入数据:

例如:

读取:cat /dev/ttyS0

写入:echo “message” > /dev/ttyS0

这些文件可分两类:

① 块设备:处理数据存储,使用缓冲

如:

/dev/hda :IDE硬盘

/dev/sda:SATA硬盘

② 字符设备:适用于数据流,不适用缓冲

最常用的字符设备是终端

[root@ ~]# who am i
root pts/2 2012-12-31 20:42 (:0.0)

/dev/tty[0-6]:虚拟控制台
/dev/null
/dev/random

“c”代表字符设备

“b”代表块设备

1,3:代表主号码为1,副号码为3

主号码确定访问哪个驱动程序

副号码可以让驱动程序区别相识的物理设备

㈤ 用udev管理/dev

Linux有个文化叫:设备即文件

udev可管理保存在/dev/目录下的文件

udev在插入或者拔出相应的设备时,可随时生成和删除文件

而且还允许系统管理员添加规则,以便修改/dev中默认的名称和权限,规则在/etc/udev/rules.d/目录下

㈥ 在/dev中添加文件

永久性:

① 先在/etc/udev/rules.d/中创建新文件

② 然后插入如下说明:

KERNEL=="sda",NAME="usbkey",SYMLINK="usbstorage"

这可令下次插入/dev/sda时生成一个名为usbkey的设备文件和一个名为usbstorage的符号链接

临时性:

mknod /dev/usbdevice b 8 0

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/20309.html