IO问题及原因

1.有些U盘/SD卡只有设备节点没有分区节点而有些U盘/SD卡即有设备节点又有分区节点?

这是MBR导致的,有些U盘/SD卡没有MBR,所以只有设备节点,而有些是有MBR的,所以即有设备节点和分区节点


2.在Windows下删除U盘里的文件后在linux下查看U盘剩余容量时获取上来的值仍然后在Windows下删除文件之前的值?

U盘使用的是fat32文件系统,fat32中有个fsinfo扇区里面记录了整个分区的容量信息,但这个值不要求一定正确,在Windows下删除文件后不会更新fsinfo扇区,因此导致linux中获取上来的值不对;还有跟mount时有无usefree参数也有关系,使用usefree参数linux会直接使用fsinfo扇区里的信息,这样可以加快挂载速度,如果fsinfo没有更新会导致获取上来的数据不正确;


3.U盘使用过程中变成了只读?

U盘挂载时会指定IO出错后的处理机制,未指定时默认在出错后将分区设置为只读的。以只读的方式open一个不存在的文件,write/read时传入的偏移值为负数等都会导致IO出错;如果不想IO出错后分区变为只读,mount时明确指定处理方式。


4.U盘在linux下创建了多个分区,但在Windows下只显示第一个分区的信息?

这个是Windows系统的限制,Windows只识别U盘的第一个分区。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值