文档章节

openwrt下检测U盘是否插入

何凯峰
 何凯峰
发布于 2015/10/19 22:48
字数 345
阅读 74
收藏 0

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

    事实上,USB驱动程序在U盘插入和拔出时,都对系统配置文件做了修改。

    例如U盘驱动程序会在插入或拔出时往 /proc/scsi/usb-storage-0/0 里面记上 Attached:Yes or No

    通过查看这个文件就不难检测U盘是否插入或拔出了。

    注意:U盘是否插入的状态与是否挂载(mount)无关。


上面是针对linux的

在OpenWrt下, 在目录下/proc/scsi/usb-storage,

会出现0,1这样的文件。

可以cat 一下 :cat /proc/scsi/usb-storage/0

如果,没有U盘插入,则对应的0,1文件是不会存在的。

因此可以以此判断U盘是否插入。


© 著作权归作者所有

共有 人打赏支持
何凯峰
粉丝 2
博文 16
码字总数 4528
作品 0
高级程序员
把路由器改装成git服务器(OpenWRT环境的GIT服务器搭建)

在单位中,通常都标配了git服务器用来管理代码。 对于家庭或者小办公室,这种方式有点不经济。当然如果是开源项目就简单了,刚刚被微软收购的github是理想选择。但如果没有打算开源,我今天的...

俺踏月色而来
08/06
0
0
从0开始,制作Cubie版OpenWRT(功能齐全,大小仅有11M)

大家说,从0开始制作系统真是太难了,有失败的,有放弃的。 好吧,给大家一种简单的buildroot的方式,那就是,使用OpenWRT 目前Openwrt对Cubietech的产品已经算大部分支持了,不过官网上还叫...

cubieboard
2014/08/20
0
0
OpenWrt系列教程汇总 & OpenWrt简体中文Wiki

OpenWrt系列教程汇总 OpenWrt简体中文Wiki 快速导航

AlphaJay
2011/07/26
0
1
玩转小米路由器先从pcDuino的OpenWrt系统开始

小米路由器发布颠覆了路由器的定义,就像当初乔布斯发布没有键盘的iphone一样。玩家们都知道小米为发烧友而生,玩家都知道小米路由器使用的深度定制的OpenWrt系统,然而对于很多玩家来说,对...

simpower
2014/11/17
0
2
OpenWRT开发之——创建软件包(有更新)

试验步骤 为了达到自己编写一个程序打包成ipk,并能在OpenWRT上运行的目的。我在网上找了些学习的资料。 本人参考的是:如何在OpenWRT上做开发 感谢该网友的耐心解答。虽然有现成的步骤,博主...

临峰不畏
2015/05/04
0
2

没有更多内容

加载失败,请刷新页面

加载更多

关于Jackson默认丢失Bigdecimal精度问题分析

问题描述 最近在使用一个内部的RPC框架时,发现如果使用Object类型,实际类型为BigDecimal的时候,作为传输对象的时候,会出现丢失精度的问题;比如在序列化前为金额1.00,反序列化之后为1.0...

ksfzhaohui
29分钟前
0
0
vue less安装

$ npm install less less-loader --save 安装成功后修改文件:build>webpack.base.conf.js 在model.rules添加对象: { test: /\.less$/, loader: "style-loader!css-loader!less-loade......

shawnDream
34分钟前
1
0
kolla-ansible部署容器ceph

kolla是从openstack孵化出的一个项目,kolla项目可以制作镜像包括openstack、ceph等容器镜像, ansible是自动化部署工具,执行playbook中的任务。 kolla-ansible是容器部署工具,部署opensta...

zrz11
39分钟前
1
0
【三 异步HTTP编程】 1. 处理异步results

异步results 事实上整个Play框架都是异步的。Play非阻塞地处理每个request请求。 默认的配置适配的正是异步的controller。因此开发者应该尽力避免在在controller中阻塞,如在controller方法中...

Landas
41分钟前
1
0
Android Studio 3.1.4 buildApk遇到问题 Connection reset

打开设置,找到Android Studio选项卡,把下图选项打上勾就ok

lanyu96
42分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部