我们经常会把手机或其他电子设备插入PC机来进行一些文件的互传,当把手机插入PC机时,会看到PC上出现了一个移动磁盘,但具体在Linux下如何实现,现把方法介绍如下,至于详细的原理这里就不介绍了,因为我也只是知其然不知其所以然。好了废话不多少,现介绍如下:
1、首先,想在PC机上看到Linux板卡上的磁盘,首先你的这个Linux板卡需要支持OTG且厂商已经提供好相应驱动,我这里用的是i.mx6平台,OTG驱动都已经配置好了。
2、其次,编译内核相应模块,需要的模块为:
Location:
│ -> Device Drivers
│ -> USB support (USB_SUPPORT [=y])
│ -> USB Gadget Support (USB_GADGET [=y])
-> USB Gadget Drivers ([=m])
->File-backed Storage Gadget(USB_FILE_STORAGE [=m])
3、将要使用的核心模块名为 g_file_storage.ko,使用方法如下
~#modprobe g_file_storage file=/root/block
4、注意最好用modprobe来加载该驱动模块,因为该驱动模块会有一些关联模块,手动一个一个加载太麻烦。该模块参数为 “file=”后紧跟你希望PC机上能看到的文件名,主要该文件在PC机端看到时,会把该文件当做一个独立的移动磁盘。比如你的Linux板卡上有一个 SD卡,在Linux上的设备文件文件为/dev/mmcblk1