背景:
本来usbHUB都调试过了,时间过去好几个月了,我也忘记当时情况了,板子上的hub芯片出来了三路usb接口到连接器,今天插上u盘打包文件系统,发现无法使用,系统一直报错。
问题1:
插上U盘之后,一直报错,大意就是U盘没有响应,无法挂载。网上搜了一下,发现很多人说usb的数据正负反接了会出这种问题,吓得我赶紧检查了原理图,没啥毛病。然后就怀疑是外接线缆是不是接反了,万用表检查一下,果然如此。拆线,重新焊接。
问题2:
修复正负接反的线缆之后,再次插上U盘,看起来是已经识别到U盘了,但还是报错了。仔细看一下提示写不了,读可以,还提示设备没有正常卸载,需要运行一下fsck,修复文件系统。
fsck的日常用法,看看下面的连接吧:
https://www.cnblogs.com/machangwei-8/p/10353614.html
https://www.cnblogs.com/ftl1012/p/9248703.html
总之是不能写入了,需要修复,我就尝试修复了一下,可是我的fsck使用不当,可能是没有先卸载。我这样说是因为看了下面这个连接:
https://www.cnblogs.com/coding-way/p/4243331.html
最后,我是通过dosfsck命令进行修复的,修复完成之后,插拔U盘提示基本正常。具体过程如下所示:
1、umount /***/***(挂载路径)
先卸载当前U盘的挂载
2、sudo dosfsck -V -a /***/***(文件系统路径)
修复文件系统,然后重新拔插U盘,提示变了。
上面的提示中还有不能写入的提示,但是实际测试读写已经没有问题。不过,我的U盘每次插拔如果不执行umount卸载操作,还是会报非正常卸载的错误,仍然需要修复。