openwrt U盘热插拔自动挂载

  • 添加USB相关支持

    Kernel modules —> USB Support —> <*> kmod-usb-core.  ##默认已经选了
    Kernel modules —> USB Support —> <*> kmod-usb-ohci.  ##默认已选 old usb1.0
    Kernel modules —> USB Support —> <*> kmod-usb-uhci.  ## usb1.1
    Kernel modules —> USB Support —> <*> kmod-usb-storage.
    Kernel modules —> USB Support —> <*> kmod-usb-storage-extras.
    Kernel modules —> USB Support —> <*> kmod-usb2.  ##默认已经选了 usb2.0
  • 添加SCSI支持
    Kernel modules —> Block Devices —> <*>kmod-scsi-core  ##默认已经选了 usb3.0
  • 添加USB挂载
    Base system —> <*>block-mount
  • 添加文件系统支持
    Kernel modules —> Filesystems —> <*> kmod-fs-ext4 (移动硬盘EXT4格式选择)
    Kernel modules —> Filesystems —> <*> kmod-fs-vfat(FAT16 / FAT32 格式 选择)
    Kernel modules —> Filesystems —> <*> kmod-fs-ntfs (NTFS 格式 选择)
  • 退出保存 make V=99

自动挂载U盘:编辑 /etc/hotplug.d/block/10-mount 写入以下内容

#!/bin/ash

case "$ACTION" in
	add)
		for i in $(ls /dev/ | grep 'sd[a-z][1-9]')
		do
			mkdir -p /mnt/$i
			mount -o iocharset=utf8,rw /dev/$i /mnt/$i
			if [ $? -ne 0 ]
			then
				mount -o rw /dev/$i /mnt/$i
			fi
		done
		;;
	remove)
		MOUNT=`mount | grep -o '/mnt/sd[a-z][1-9]'`
		for i in $MOUNT
		do
			umount $i
			if [ $? -eq 0 ]
			then
				rm -r $i
			fi
		done
		;;
esac
时间: 2024-10-01 00:28:55

openwrt U盘热插拔自动挂载的相关文章

如何在openwrt上实现 U盘的自动挂载

U盘的自动挂载,分为两种场景 1.路由器先上电,然后插上U盘并自动挂载 2.路由器先插上U盘,然后上电并自动挂载 上述场景的实现,需要如下几个步骤: 1.支持如下模块: USB驱动模块:USB OHCI/USB 2.0/USB UHCI 文件系统支持:VFAT,ntfs-3g, 字符集支持:cp437/CP936/utf-8/iso8859-1 网络文件服务:samba server 2.使用hotplug机制,放入挂载脚本文件:/etc/hotplug.d/block/30-block_mou

android4.0 U盘热插拔后挂载不上bug解决

这几天测试的时候发现个很奇怪的问题 如果将TF卡插到读卡里然后在插到板子上 热插拔后都可以挂载上 但是使用U盘只有第一次插上去的时候能挂载上 拔下来后 在插上就挂载不上了 驱动里可以识别到U盘已经插入 研究了MountService和Vold 最后通过查看/proc/mounts文件发现 U盘第一次插上后是正常挂载 但是拔掉后没有卸载 多么纠结的事件 主要涉及文件system/vold/DirectVolume.cpp 分析log发现 拔掉带有TF卡的读卡器时 状态是这样的 4(Mounted)

修改mdev的配置以支持U盘的自动挂载

原文:https://www.cnblogs.com/lifexy/p/7891883.html 1.当我们每次插入u盘后,都会自动创键U盘的设备节点/dev/sda%d 这是因为里面调用了device_create()实现的, busybox的mdev机制就会根据主次设备号等信息,在/dev下创建设备节点,如下图所示: /dev/sda:表示整个U盘/dev/sda1:表示U盘的第一个分区 而想使用上面的sda1设备节点,读写数据时,还需要使用mount /dev/sda1  /mnt,来挂载

关于实现udev/mdev自动挂载与卸载

在网上有很多关于讲mdev的自动挂载基本上都是一个版本,经过测试自动挂载确实可行,但是关于自动卸载mdev似乎不能很好的支持,经过修改已经可以做到与udev的效果相似.不能在挂载的目录中进行热插拔,否则会出现问题,不过此问题在下次插入U盘时不会造成影响,可能对U盘有损坏. 本文介绍了mdev与udev两种方法来实现自动挂载,读者可根据需要任选其一即可. 首先介绍一下mdev与udev之间的关系: mdev是busybox中的一个udev管理程序的一个精简版,他也可以实现设备节点的自动创建和设备的

OpenWrt自动挂载sd卡

我们在编译的时候经常会遇到flash不够用的问题,怎么解决呢?可以通过挂载usb或者sd卡解决问题.在此介绍一下openwrt挂载sd卡. 1. 安装sd卡的驱动以及相关支持 make kernel_menuconfig Device Drivers -> MMC/SD/SDIO card support -> 找到该目录 如图在相关选项前打上"*"号 保存并退出 接下来make menuconfig Kernel modules ->Native Language

Linux USB U盘热插拔挂载和卸载

一.硬件平台 1.  控制器:MT7620(A9内核) 2.  RTC芯片:MCP7940 二.软件平台 1.开发环境:Ubuntu12.04 2.SDK内核包:MT7620 SDK软件开发包(MediaTek_ApSoC_SDK_4320_20150414.tar.bz2) 3.内核版本:linux-2.6.36.x 三.参考资料 <MTK_APSoC_SDK_User_Manual.pdf>. 下载链接:http://download.csdn.net/detail/xhoufei2010

linux下实现U盘和sd卡的自动挂载

<span style="font-family:Arial, Helvetica, sans-serif;"><strong>目的:使U盘和sd卡在linux系统中进行插入和拔除时能自动挂载和卸载,不需要手动mount和umount.</strong></span> <span style="font-family:Arial, Helvetica, sans-serif;"><strong>

A20 sugar-standard 版本无法支持U盘自动挂载问题解决

前面硬件工程师在sugar-standard的基础上搞了个什么USB HUB的线路<我不是很明白>,但是这个时候的sugar-standard 依然能自动挂载U盘. 后面他又把USB接口的东西给弄成了 A20 sugar-cubieboard 2 的版本,于是这个时候原来的img烧进去,U口就没有任何反应,只有一个口能使用鼠标. 经过查资料得知:android系统自动挂载U盘,与一个叫 vold.fstab的文件有关. 于是在公司自己的源码  android/ 目录下   find ./ -n

使用udev实现显示器的热插拔和usb的自动挂载

udev:用来监听硬件设备是否发生改变,并可以给硬件设备命名 ,也可以在硬件发生改变之后执行脚本 使用udev检测显示器是否发生变化,然后执行脚本,解决linux显示器热插拔问题 先补充一点: [[email protected] ~]# cat /sys/class/drm/card0-VGA-1/status connected connectd 表示VGA口处于连接状态 拔掉则显示disconnected  脚本里面可以通过这来判断显示器是否连接 vim /etc/udev/rules.d