相关疑难解决方法(0)

如何在 USB 设备插件上运行自定义脚本?

在当前的 Linux 发行版(如 Debian/CentOS/Fedora)下,在 USB 设备插件上自动执行自定义脚本的最先进方法是什么?

例如,如果您想根据 UUID(或设备 ID 等)自动挂载/复制某些文件/卸载 USB 大容量存储设备。

usb udev uuid

47
推荐指数
2
解决办法
10万
查看次数

如何在插入 USB 设备时执行 shellscript

我想在我的 Linux 机器上插入设备时执行脚本。例如,xinput在鼠标或某个驱动器上的备份脚本上运行。

我看过很多关于这方面的文章,最近一次是这里这里。但我就是无法让它工作。

下面是一些试图获得至少某种响应的简单示例。

/etc/udev/rules.d/test.rules

#KERNEL=="sd*", ATTRS{vendor}=="*", ATTRS{model}=="*", ATTRS{serial}=="*", RUN+="/usr/local/bin/test.sh"
#KERNEL=="sd*", ACTION=="add", "SUBSYSTEM=="usb", ATTRS{model}=="My Book 1140    ", ATTRS{serial}=="0841752394756103457194857249", RUN+="/usr/local/bin/test.sh"
#ACTION=="add", "SUBSYSTEM=="usb", RUN+="/usr/local/bin/test.sh"
#KERNEL=="sd*", ACTION=={add}, RUN+="/usr/local/bin/test.sh"
KERNEL=="sd*", RUN+="/usr/local/bin/test.sh"
KERNEL=="*", RUN+="/usr/local/bin/test.sh"
Run Code Online (Sandbox Code Playgroud)

/usr/local/bin/test.sh

#!/usr/bin/env bash
echo touched >> /var/log/test.log

if [ "${ACTION}" = "add" ] && [ -f "${DEVICE}" ]
then
    echo ${DEVICE} >> /var/log/test.log
fi
Run Code Online (Sandbox Code Playgroud)

规则文件夹由监视inotify并应立即激活。我不断地重新插入我的键盘、鼠标、平板电脑、记忆棒和 USB 驱动器,但没有。没有触及日志文件。

现在,至少知道某些事情正在起作用的最简单方法是什么?使用有效的方法比使用无效的方法更容易。

linux bash ubuntu udev

40
推荐指数
3
解决办法
7万
查看次数

如何在插入 USB 设备时收到通知?

我的系统必须自动挂载 USB 设备;如何在插入 USB 设备时收到通知?我在哪里可以阅读有关此主题的更多信息?

我想通过 C 或 shell 脚本来处理这个问题。

linux usb notifications devices

8
推荐指数
1
解决办法
2955
查看次数

将文件从 Mac 同步到闪存驱动器 - 自动吗?

我有一个闪存驱动器,让我们命名它 FLASH

我想,当在我的 mac 上时,当FLASH插入(并自动安装)时,执行特定的脚本并使其~/Documents自动复制到/Volumes/FLASH/Documents(mac 将驱动器安装在/Volumes)。

同一个驱动器,,FLASHDocuments之前用mac情况添加了这个新文件夹),当插入Ubuntu机器时,我希望它自动复制FLASH/Documents~/Documents(或在安装后自动执行脚本)。

在这些不同的场景中,我应该如何做到这一点?我不想为此使用第三方应用程序,我更喜欢使用两个平台中都可用的核心/内置工具。

ubuntu backup rsync macintosh

5
推荐指数
1
解决办法
1394
查看次数

标签 统计

linux ×2

ubuntu ×2

udev ×2

usb ×2

backup ×1

bash ×1

devices ×1

macintosh ×1

notifications ×1

rsync ×1

uuid ×1