【实验目的】
移植udev 实验自动创建设备节点和自动挂在SD卡和U盘。
【实验环境】
1、 Ubuntu 10.10发行版
2、 u-boot-2010.03
3、 FS2410平台
4、 交叉编译器 arm-none-linux-gnueabi-gcc-4.3.2
【实验步骤】
1、下载UDEV源码udev-080.tar.bz2,网址:
http://www.us.kernel.org/pub/linux/utils/kernel/hotplug/,
并解压:tar xvf udev-080.tar.bz2
2.交叉编译(在udev-080目录下)。
vim Makefile
修改Makefile,具体修改如下:
CROSS = arm-none-linux-gnueabi-
保存退出。
执行命令:make 进行编译
然后执行
arm-none-linux-gnueabi-strip udev udevd udevstartudevinfo udevtest。
并拷贝这些文件(udev udevd udevstart udevinfo udevtest)到/source/rootfs/bin目录下面。
3.修改/source/rootfs/etc/fstab为
#device mount-point type options dump fsck order
proc /proc proc defaults 0 0
tmpfs /tmp tmpfs defaults 0 0
sysfs /sys sysfs defaults 0 0
tmpfs /dev tmpfs defaults 0 0
4.修改/source/rootfs/etc/init.d/rcS,添加如下内容
/bin/udevd --daemon
/bin/udevstart
这样当我们插上U盘和SD卡的时候,就可以看到我们的设备节点而不需要手动创建设备节点。
5.SD卡或U盘自动挂载的实现
拷贝实验代码中udev目录(老师给的代码)到 rootfs/etc
拷贝mount-sd.sh、 umount-sd.sh 、mount-usb.sh、 umount-usb.sh到/source/rootfs/sbin下
这个时候当插入U盘或SD卡时就会自动挂载在tmp下。可以通过修改mount-sd.s和mount-usb.sh添加其他功能和修改挂载点。