Linux下通过OTG把板卡上的一个磁盘或文件映射成PC机上的一个移动磁盘
来源:互联网 发布:塔布数据 编辑:程序博客网 时间:2024/05/16 14:53
============================================
作者:liuhuahan
http://blog.csdn.net/liuhuahan
============================================
我们经常会把手机或其他电子设备插入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 (<choice> [=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,那希望在PC机上看到该SD卡的操作为:
~# modprobe g_file_storage file=/dev/mmcblk1
注意,不要把/dev/mmcblk1写成/dev/mmcblk1p1,不然在PC机上会把mmcblk1p1这个SD卡的分区当做一个新的移动磁盘,重新分区格式化,这样就导致Linux一侧和PC侧两边看到的文件不一致了。
5、当然你也可以直接把一个文件挂载成PC端的一个磁盘,
先用dd命令创建一个空白文件:
~# dd if=/dev/zero of=/root/block bs=1M count=100
把该文件推送为PC端的一个可移动磁盘:
~#modprobe g_file_storage file=/root/block
这样PC端就可以看到一个100M大小的可移动磁盘了,格式化之后就可以直接访问了,和直接挂载SD卡的方法相比的话,就是无法再Linux端挂载该block文件后实现和PC端一样的访问,因为在Linux一侧,该block文件挂载是直接当做一个磁盘分区挂载,在PC一侧,该block文件是当做一个可移动磁盘来重新分区之后挂载得到的一个新分区而已,两边有一个MBR的偏移的差距。当然如何两边都不挂载文件系统,只是当做一个设备文件来直接读写的话,是可以实现相互通讯的。
1 1
- Linux下通过OTG把板卡上的一个磁盘或文件映射成移动磁盘
- Linux下通过OTG把板卡上的一个磁盘或文件映射成PC机上的一个移动磁盘
- VC++(MFC) 打开磁盘上的一个位图文件 (转载)
- 例10.5 有一个磁盘文件,内有一些信息。要求第一次将它的内容显示在屏幕上,第二次把它复制到另一文件上。
- 编程如何修改磁盘上的一个族文件(*.rfa)文件中的参数值
- linux下获取scsi上的磁盘设备的序列号
- [ZT]Linux下读取Windows磁盘文件及USB闪存上的文件
- Linux 挂载Windows下 某个磁盘上的目录
- 磁盘分区,文件在磁盘上的存储
- 如何快速的把日志输出到磁盘上
- jackson 读取或载入磁盘上的 json 格式文件
- GPT磁盘上的分区
- 将 tempdb 从其在磁盘上的当前位置移动到其他磁盘位置
- 写一个把调试信息输出到磁盘文件的DEBUG程序
- linux 将一个服务器上的文件或文件夹拷贝到另一个服务器上
- 通过附加的磁盘在 BladeCenter S 上安装和启动 Linux
- 如何把hdfs上的多个目录下的文件合并为一个文件
- 在装有Linux的虚拟机上新增磁盘的方法
- 黑马程序员 -- Java基础学习(9)
- 生命中总有一些事情无法等待 你读懂了多少?
- 文件操作
- 有些心情写给自己,也只能写给自己
- Tomcat引起的中文乱码问题
- Linux下通过OTG把板卡上的一个磁盘或文件映射成PC机上的一个移动磁盘
- awk命令基本处理 -- shell
- reportservice制作柱状图
- 当你对未来迷茫的时候,请打开这个锦囊!
- 刚毕业的路怎么走
- 牙膏的不寻常用途
- vmware :Ubuntu 12.04添加新硬盘
- 艺考生冬日穿泳装秀三围
- 西安做包皮手术的价格贵吗?