h3. Asked: 2009-10-15 14:40:30 +0800 CST2009-10-15 14:40:30 +0800 CST 2009-10-15 14:40:30 +0800 CST Linux (Ubuntu) 在 USB 挂载时运行脚本 772 我有一个带有外部 USB 硬盘驱动器的 Ubuntu 服务器。 我基本上只想在插入硬盘驱动器时运行一个脚本。 实现这一目标的最佳方法是什么? linux 2 个回答 Voted Best Answer Michael Pobega 2009-10-15T16:36:53+08:002009-10-15T16:36:53+08:00 您可以为您的特定设备添加一个 udev 规则——为此,创建一个名为 /etc/udev/010custom.rules 的文件(或类似的东西;只要确保它在数字上是目录中最小的)。文件内容将是: BUS="usb", SYSFS{idVendor}="**IDVENDOR**", SYSFS{product}="**PRODUCT**", NAME="usb/%k", SYMLINK="DEVICE" RUN+="/path/to/your/script" 将粗体关键字替换为您设备的值lsusb: 总线 005 设备 002:ID 0b05:b700 ASUSTek Computer, Inc. Broadcom 蓝牙 2.1 上面的第一个粗体字段是 IDVENDOR,第二个粗体字段是 PRODUCT。 至于DEVICE,这个可以自己定义;它将创建一个 /dev/ 节点,该节点是任何符合上述条件的设备的符号链接(因此,如果您将 foobar 作为 SYMLINK,udev 将创建一个 /dev/foobar,它是您的 USB 设备的符号链接)。 注意:我自己没有尝试过,因为我没有任何可移动的 USB 设备,但它应该可以工作。如果您有任何问题,请查看 udev 文档以了解规则。 Dennis Williamson 2009-10-15T16:21:54+08:002009-10-15T16:21:54+08:00 您可能想查看udev. 不幸的是,你刚刚目睹了我对它的了解。
您可以为您的特定设备添加一个 udev 规则——为此,创建一个名为 /etc/udev/010custom.rules 的文件(或类似的东西;只要确保它在数字上是目录中最小的)。文件内容将是:
将粗体关键字替换为您设备的值
lsusb
:总线 005 设备 002:ID 0b05:b700 ASUSTek Computer, Inc. Broadcom 蓝牙 2.1
上面的第一个粗体字段是 IDVENDOR,第二个粗体字段是 PRODUCT。
至于DEVICE,这个可以自己定义;它将创建一个 /dev/ 节点,该节点是任何符合上述条件的设备的符号链接(因此,如果您将 foobar 作为 SYMLINK,udev 将创建一个 /dev/foobar,它是您的 USB 设备的符号链接)。
注意:我自己没有尝试过,因为我没有任何可移动的 USB 设备,但它应该可以工作。如果您有任何问题,请查看 udev 文档以了解规则。
您可能想查看
udev
. 不幸的是,你刚刚目睹了我对它的了解。