wtbapi 2024-04-16 22:38 采纳率: 0%
浏览 7

linux自动识别挂载U盘

【付费】帮写一些linux的U盘自动挂载的脚本。

最近正在做一些项目,主要使用的java,但是因为对linux不熟悉,涉及很多深入linux系统的东西,希望找到一位老哥,可以协助写一些脚本以便使用,比如自动识别U盘插拔并挂载或卸载等。所有脚本都付费。也希望建立长期合作关系,协助完成项目中linux的相应部分。

  • 写回答

5条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2024-04-16 22:38
    关注

    引自免费微信小程序:皆我百晓生

    为了实现Linux系统的U盘自动挂载,你需要在系统中配置一个监听USB设备插入和移除事件的工具,然后根据这些事件执行相应的挂载或卸载操作。这里推荐使用udisksctl工具和udev规则来实现这个功能。以下是详细的步骤:

    1. 安装udisks2(如果你尚未安装):
    sudo apt-get update
    sudo apt-get install udisks2
    

    或者对于基于RPM的系统(如Fedora、CentOS):

    sudo dnf install udisks2
    
    1. 创建一个名为99-automount_usb.rules的文件,用于定义udev规则。这个文件应该放在/etc/udev/rules.d/目录下:
    sudo nano /etc/udev/rules.d/99-automount_usb.rules
    

    添加以下内容到新创建的文件中,这将确保当U盘插入时自动挂载,并且当U盘移除时自动卸载:

    ACTION=="add", SUBSYSTEM=="block", ENV{ID_SERIAL}!="", ENV{ID_BUS}=="usb", RUN+="/bin/bash -c 'sleep 5; /usr/bin/udisksctl mount -b /dev/%k'"
    ACTION=="remove", SUBSYSTEM=="block", ENV{ID_SERIAL}!="", ENV{ID_BUS}=="usb", RUN+="/bin/bash -c '/usr/bin/udisksctl unmount -b /dev/%k && sleep 1 && /bin/rm -f /media/usbdrive/%E:/%N'"
    
    # Replace "/media/usbdrive" with the desired mount point directory
    # Replace "%E:" and "%N" with appropriate variables to get the drive name
    

    保存并关闭文件。

    1. 创建挂载点(如果尚未创建):
    sudo mkdir -p /media/usbdrive
    
    1. 设置挂载点权限:
    sudo chmod 777 /media/usbdrive
    
    1. 重启udevd服务使规则生效:
    sudo systemctl restart systemd-udevd
    

    这样,每当有新的USB设备插入时,它会在5秒后自动挂载到/media/usbdrive目录下。当设备移除时,会等待1秒后卸载并删除挂载点下的对应目录。

    注意:这个方法依赖于udisksctl命令,可能在某些较旧的系统上不可用。在这种情况下,可以考虑使用mountumount命令替代。此外,这个设置可能会覆盖现有的U盘挂载策略,如果有其他不同的需求,可能需要调整规则。

    如果你还有其他Linux相关的任务需要处理,例如编写脚本来监控特定的文件系统变化,或者进行其他自动化任务,都可以随时联系我,我会提供相应的帮助。

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 4月16日

悬赏问题

  • ¥15 视频编码 十六进制问题
  • ¥15 Xsheii7我安装这个文件的时候跳出来另一个文件已锁定文件的无一部分进程无法访问。这个该怎么解决
  • ¥15 unity terrain打包后地形错位,跟建筑不在同一个位置,怎么办
  • ¥15 FileNotFoundError 解决方案
  • ¥15 uniapp实现如下图的图表功能
  • ¥15 u-subsection如何修改相邻两个节点样式
  • ¥30 vs2010开发 WFP(windows filtering platform)
  • ¥15 服务端控制goose报文控制块的发布问题
  • ¥15 学习指导与未来导向啊
  • ¥15 求多普勒频移瞬时表达式