您的位置:首页 > 运维架构 > Linux

Linux下对移动存储设备的检测

2011-05-12 23:47 232 查看
系统启动经过初始化操作之后,创建一个线程用于检测是否有移动存储设备插入或者拔出。

/proc/partitions和/proc/mounts,当有U盘插入时,以上两个文件中都会相应增加设备信息行。不同的是后者显示的是真正挂载上了的分区。可以通过读取这两个文件的方法来判断是否有移动设备插入。

char fdata[256] = {0};
char name[32] = {0};
FILE *fp = NULL;

fp = fopen("/proc/partitions", "r")
if (fp == NULL)
{
printf("open file error/n");
return ERROR;
}

while ( fgets(fdata, sizeof(fdata), fp) )
{
if ( fscanf(fp, "%d, %s", &major, name) > 0 )
{
if ( major == 8 && !strncmp(name, "sd", 2))
{
printf("Device insert/n");
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: