u盘-Linux系统下,怎样用C语言判断U盘插入和拔出,并获取U盘路径?

问题描述

Linux系统下,怎样用C语言判断U盘插入和拔出,并获取U盘路径?

Linux系统下,用C语言判断U盘插入和拔出,并获取U盘路径、名字和容量等信息。请大神们指点指点。

解决方案

首先U盘是块设备,有专门的工具(fdisk,blockdev)可以查看U盘(/dev/sda)的具体信息,也可以通过 C语音open("/dev/sda", ...);ioctl(...)来获取U盘信息。

u盘插入后,一般会出现类似/dev/sda或者/dev/block/下面的某个设备,相应的拔出会删除此设备,C语言可以判断此设备是否存在,来判断u盘的插拔。

u盘路径的话,可以通过/proc/mounts 获取。

解决方案二:

http://blog.csdn.net/haomcu/article/details/7005194

时间: 2024-08-03 21:36:25

u盘-Linux系统下,怎样用C语言判断U盘插入和拔出,并获取U盘路径?的相关文章

在Linux系统下用DD命令制作ISO镜像U盘启动盘

  我的当前的系统是Linux(版本Xubuntu),之前是通过软通牒(UltraISO)在Windows系统下制作了这个Linux系统的U盘启动盘,然而在Linux系统下通过系统本身集成的DD命令,来实现在Linux系统下制作Linux系统的ISO系统U盘启动盘,一行简单的代码就可以搞定.可以顺利给没有系统或需要重装系统的电脑,通过这个制作的U盘来安装ISO镜像系统. 需要的工具:Linux系统.U盘.ISO镜像文件. 首先在Linux系统中打开终端,使用DD命令,格式如下: sudo dd

Linux系统下使用U盘的技巧

  一.插入u盘到计算机,如果目前只插入了一个U盘而且你的硬盘不是scsi的硬盘接口的话,那它的硬件名称为:sda1. 二.在mnt目录下先建立一个u的目录. 三.然后命令提示符#后输入:mount -t vfat /dev/sda1 /mnt/u. 四.卸载时用umount /mnt/u. 这就是最简单的Linux系统下使用U盘的技巧.当然现在的Linux最新发行版都是可以自动识别U盘和加载了,像ubuntu10.04和slitaz3.0,都是自动加载.

Linux系统下怎样玩转U盘

习惯了在Windows系统下即插即用U盘,换成Linux系统下你可能就不会使用了.为什么这么说呢?因为Linux系统U盘被视为SCSI设备,因此不能直接使用,还需要我们手动进行相应的设置,下面这篇教程就专门为第一次在Linux下使用U盘的朋友们而准备的. Linux系统中U盘被视为SCSI设备, SCSI设备对应的设备文件格式为"sdX" 系统中的第一个SCSI设备表示"sda",第二个表示为"sdb"等 1. 插入U盘 #fdisk –l (查

Linux系统下如何使用U盘?

  一.插入u盘到计算机,如果目前只插入了一个U盘而且你的硬盘不是scsi的硬盘接口的话,那它的硬件名称为:sda1. 二.在mnt目录下先建立一个u的目录. 三.然后命令提示符#后输入:mount -t vfat /dev/sda1 /mnt/u. 四.卸载时用umount /mnt/u. 这就是最简单的Linux系统下使用U盘的技巧.当然现在的Linux最新发行版都是可以自动识别U盘和加载了,像ubuntu10.04和slitaz3.0,都是自动加载.

检测在Linux系统下U盘是否已连接的方法

Linux的文件系统是异步的,也就是说写一个文件不是立刻保存到介质(硬盘,U盘等)中,而是存到缓冲区内,等积累到一定程度再一起保存到介质中. Linux的文件系统是异步的,也就是说写一个文件不是立刻保存到介质(硬盘,U盘等)中,而是存到缓冲区内,等积累到一定程度再一起保存到介质中.如果没有umount就非法拔出U盘,程序是不知道的,fopen,fwrite等函数都依然返回正确,知道操作系统要把写介质的时候,才会提示I/O错误.可是很多数据都会因为这个不及时的错误报告而丢失. 事实上,USB驱动程

Linux系统下卸载USB设备的方法

Linux系统下通常都会自动挂载USB设备,如果没有自动挂载的话就需要自己手动挂载USB设备了,那么Linux下要如何挂载USB设备呢?不需要的时候又要如何卸载呢?一起来了解下吧. 在挂载之前需要确定下列三种信息 1.要挂载对象的文件系统类型 2.要挂载对象的设备名称 3.确定挂载点 挂载时使用mount命令: 格式:mount [-参数] [设备名称] [挂载点] 我们常见的USB设备格式是:FAT32格式.NFTS格式等. ext2 linux目前常用的文件系统 msdos MS-DOS的f

Linux系统下配置软RAID及维护的例子

Linux系统下配置软RAID 一.设置磁盘 这里我们以Raid 1为例,其他的Raid级别设置类似.Riad 1需要两块硬盘,我在vps里添加了2块80G的硬盘.系统里使用fdisk –l 命令查看 二.安装mdadm mdadm 是multiple devices admin 的简称,它是Linux下的一款标准的软件RAID 管理工具. 1.先查看是否安装了mdadm软件 # rpm -qa|grep mdadm 2.如果未安装,则使用yum 方式安装. # yum install mdad

日志-linux系统下有Sense Key:recovered error [current]错误

问题描述 linux系统下有Sense Key:recovered error [current]错误 日志里有大量如图报警,不知道是什么原因引起的,查了ASC和ASCP也没有什么结果,拜托有知道的大神,给小弟指条明路 解决方案 看看是不是硬盘有坏道,或者文件破坏 参考:http://blog.itpub.net/25362835/viewspace-1058637/ 解决方案二: http://bbs.chinaunix.net/thread-4086486-1-1.html

ext下拉框在linux系统下,输入框有XX的关闭

问题描述 ext下拉框在linux系统下,输入框有XX的关闭 如果所示,在linux系统,可输入的下拉框有XX的按钮,但是本地却没有,不知道这个该怎么设置,现在的问题是,linux系统上点那个XX没有效果,点击为空后,鼠标放到别的地方时,当时选得值又出现了,有没有人知道这个梗.