Ubuntu Hardy:在udev规则中测试环境变量似乎不起作用

我有一个Ubuntu 8.04 LTS(服务器版),我需要编写一个udev规则,以便在插入USB拇指驱动器时起作用.但是,我需要一个不同的操作,具体取决于驱动器的文件系统.我知道我可以使用ID_FS_TYPE环境变量来检查驱动器上的文件系统.

按照here的说明,我尝试了一个虚拟的udev规则:

KERNEL!="sd[a-z][0-9]",GOTO="my_udev_rule_end"
ACTION=="add",RUN+="/usr/bin/touch /tmp/test_udev_%E{ID_FS_TYPE}"
ACTION=="add",ENV{ID_FS_TYPE}=="vfat",RUN+="/usr/bin/touch /tmp/test_udev_it_works"
LABEL="my_udev_rule_end"

但是,当我插入带有vfat文件系统的拇指驱动器(应该触发两个规则)时,我最终得到一个名为/ tmp / test_udev_vfat的文件,这意味着第一个规则被成功触发,并且ID_FS_TYPE环境变量是“vfat” “,但我没有其他文件,这意味着虽然我知道ID_FS_TYPE env变量是”vfat“,但我似乎无法检查它是否匹配.

我尝试使用谷歌搜索,但几乎每个结果似乎都假设ENV {ID_FS_TYPE} ==“vfat”有效.我还在Ubuntu 10.04 LTS服务器上测试了完全相同的udev规则,并且我得到了相同的结果.

我可能错过了一些非常简单的东西,但我只是不明白.有没有人看到我的udev规则有什么问题会阻止它在ENV {ID_FS_TYPE}上匹配?

谢谢.

尝试在文件开头添加以下行:

IMPORT {program} =“/ sbin / blkid -o udev -p%N”

相关文章

目录前言一、创建Hadoop用户二、更新apt和安装Vim编辑器三、...
原文连接:https://www.cnblogs.com/yasmi/p/5192694.html ...
电脑重启后,打开VirtualBox,发现一直用的虚拟机莫名的消失...
参见:https://blog.csdn.net/weixin_38883338/article/deta...
Ubuntu 18.04 LTS 已切换到 Netplan 来配置网络接口。Netpla...
介绍每个 Web 服务都可以通过特定的 URL 在 Internet 上访问...