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

相关推荐
冰橙子id4 小时前
linux-远程访问管理(sshd,scp,sftp)
linux·网络·ssh
光电的一只菜鸡5 小时前
ubuntu之坑(十五)——设备树
linux·数据库·ubuntu
saynaihe7 小时前
ubuntu 22.04 anaconda comfyui安装
linux·运维·服务器·ubuntu
企鹅与蟒蛇7 小时前
Ubuntu-25.04 Wayland桌面环境安装Anaconda3之后无法启动anaconda-navigator问题解决
linux·运维·python·ubuntu·anaconda
程序设计实验室7 小时前
小心误关了NAS服务器!修改Linux的电源键功能
linux·nas
渡我白衣10 小时前
Linux操作系统之信号:信号的产生
linux
阿巴~阿巴~11 小时前
理解Linux文件系统:从物理存储到统一接口
linux·运维·服务器
tan77º11 小时前
【Linux网络编程】应用层自定义协议与序列化
linux·运维·服务器·网络·c++·tcp/ip
菜鸡000113 小时前
存在两个cuda环境,在conda中切换到另一个
linux·人工智能·conda
吃着火锅x唱着歌14 小时前
LeetCode 424.替换后的最长重复字符
linux·算法·leetcode