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

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

  • [Chapter0 linux下实现U盘和sd卡的自动挂载](#Chapter0 linux下实现U盘和sd卡的自动挂载)

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

原文链接:https://blog.csdn.net/EmSoftEn/article/details/45099699

目的:使U盘和SD卡在Linux系统中进行插入和拔除时能自动挂载和卸载,不需要手动mount和umount。

步骤:

1、在/etc/init.d/rcS中加入以下语句

bash 复制代码
echo /sbin/mdev > /proc/sys/kernel/hotplug

2、在/etc下的mdev.conf文件中加入(如果没有这个文件,则新建一个)

bash 复制代码
sd[a-z][0-9]      0:0 666 @(/etc/hotplug/insert.sh $MDEV $SUBSYSTEM)
sd[a-z]           0:0 666 $(/etc/hotplug/remove.sh $MDEV $SUBSYSTEM)
ub[a-z][0-9]      0:0 666 @(/etc/hotplug/insert.sh $MDEV $SUBSYSTEM)
ub[a-z]           0:0 666 $(/etc/hotplug/remove.sh $MDEV $SUBSYSTEM)
mmcblk[0-9]p[0-9] 0:0 666 @(/etc/hotplug/insert.sh $MDEV $SUBSYSTEM)
mmcblk[0-9]       0:0 666 $(/etc/hotplug/remove.sh $MDEV $SUBSYSTEM)

3、在/etc下建立hotplug文件夹,并在该文件夹下建立两个文件

insert.sh:

bash 复制代码
if [ -n "$1" ]; then
  if [ -b /dev/$1 ]; then
    if [ ! -d /media ]; then
      mkdir -p /media
    fi
    if [ ! -d /media/$1 ]; then
      mkdir -p /media/$1
    fi
      mount /dev/$1 /media/$1
    if [ $? -ne 0 ]; then
      rm -rf /media/$1
    fi
  fi
fi

remove.sh:

bash 复制代码
MOUNTS=$(mount | grep $1 | cut -d' ' -f3)
umount $MOUNTS
rm -rf $MOUNTS

4、增加可执行属性

bash 复制代码
sudo chmod 777 insert.sh remove.sh

这样在插入U盘或者sd卡使,系统就会在根目录下生成media目录,并将U盘或SD卡挂载在这个目录下。这些步骤也可以在制作文件系统时执行,这样linux系统就能永久自带这个自动挂载的功能。

注:使用上述方法需要如下所示在busybox配置中选择支持mdev。

5、热插拔TF卡,控制台输出信息

6、试验的内核版本 5.10.149

相关推荐
齐齐大魔王5 小时前
linux-僵死进程处理
linux·运维·服务器
wuminyu8 小时前
专家视角看Java字节码加载与存储指令机制
java·linux·c语言·jvm·c++
.小小陈.9 小时前
Linux 线程概念与控制:从底层原理到实战应用
linux·运维·jvm
网络工程小王9 小时前
【LangChain 大模型6大调用指南】调用大模型篇
linux·运维·服务器·人工智能·学习
wangbing11259 小时前
各linux版本的包管理命令
linux·运维·服务器
Joseph Cooper9 小时前
Linux/Android 跟踪技术:ftrace、TRACE_EVENT、atrace、systrace 与 perfetto 入门
android·linux·运维
比昨天多敲两行10 小时前
Linux基础开发工具(下)
linux·运维·服务器
笨笨饿12 小时前
69_如何给自己手搓一个串口
linux·c语言·网络·单片机·嵌入式硬件·算法·个人开发
cn_lyg12 小时前
Linux的入门级常用操作命令
linux·运维·服务器
就叫飞六吧13 小时前
TOML vs YAML:为什么 Cargo 选择 TOML?
linux·运维·服务器