linux怎么检测u盘是否挂载成功,(转) 嵌入式 Linux 利用 udev 实现自动检测挂载U盘...

udev配置文件是/etc/udev/udev.conf,也许长这样:

# udev.conf

# The initial syslog(3) priority: "err", "info", "debug"or its

# state can be changed with:"udevcontrol log_priority=".

udev_root="/dev/"udev_rules="/etc/udev/rules.d"udev_log="err"

udev_rules这一行表示udev的规则存储的目录,这个目录存储的是以.rules结束的文件。每一个文件处理一系列规则来帮助udev分配名字给设备文件以保证能被内核识别。

一般/etc/udev/rules.d下面可能有好几个udev规则文件,这些文件一部分是udev包安装的,另外一部分则是可能是别的硬件或者软件包生成的。这些规则文件的文件名通常是两个数字开头,它表示系统应用该规则的顺序,数字越小优先级越高。

/etc/udev/rules.d/11-usb-hotplug.rules  检测U盘的文件也许长这样:

KERNEL=="sd*", SUBSYSTEM=="block", RUN+="/etc/udev/disk-hotplug.sh"

这一行字面意思可以理解为有节点 /dev/sd* 创建的话,就会去执行 /etc/udev/disk-hotplug.sh 这个脚本

sd*的*是通配符,包含sda/sda1/sda2...,sdb/sdb1/sdb2...

/etc/udev/disk-hotplug.sh 可以这样写:

#!/bin/sh################################################################################

# Create By Czy

################################################################################

################################################################################

CONSOLE=/dev/ttyAMA0

################################################################################

show_env ()

{

local RED="

你可能感兴趣的:(linux怎么检测u盘是否挂载成功,(转) 嵌入式 Linux 利用 udev 实现自动检测挂载U盘...)