linux - Linux:连接时的 USB 触发器仅在首次连接时触发。需要 `systemd --user damon-reload` 再次激活
问题描述
问题:
我有一个平板电脑。手写笔。每当我通过 USB 连接平板电脑时,我都希望它进行一些配置。我快到了,我的配置脚本在 systemctl 中注册为oneshot服务,并且在我第一次连接平板电脑时触发该服务。但是,后续连接不会触发该服务:换句话说,如果我断开平板电脑并重新连接它,则不会触发触发器。systemctl --user daemon-reload
我必须在触发器再次激活之前做一个。我错过了什么?
系统: 操作系统:Ubuntu 20.04.1 LTS x86_64 内核:5.4.0-52-lowlatency
这是我的触发器:
文件名:/etc/udev/rules.d/10-wacom.rules
ACTION=="add", SUBSYSTEMS=="usb",
ATTR{idVendor}=="256c",
ATTR{idProduct}=="006d",
MODE="0666",
TAG+="systemd",
ENV{SYSTEMD_USER_WANTS}="tablet-conf.service"
(实际文件中没有换行符,我只是将它们放入以便于阅读)
这是我的服务定义:
文件名:~/.config/systemd/user/tablet-conf.service
[Service]
Type=oneshot
ExecStart=/usr/local/bin/huion-inspiroy-950d-connect.sh
[Install]
WantedBy=xsession.target
这是我的配置脚本:
文件名:~/bin/system/devices/huion-inspiroy-950d-connect.sh
通过符号链接调用/usr/local/bin/huion-inspiroy-950d-connect.sh
#!/bin/bash
touch /home/esm/bin/system/devices/a-connected-waiting
sleep 2
touch /home/esm/bin/system/devices/a-connected-waited
xsetwacom set "HID 256c:006d stylus" MapToOutput HEAD-0 2>> /home/esm/bin/system/devices/a-configured
xsetwacom set "HID 256c:006d stylus" rotate HALF 2>> /home/esm/bin/system/devices/a-configured
(如您所见,我在配置过程中创建了一些空文件并记录了 som 信息。所有这些当然不是必需的,但是当我弄清楚如何使触发器工作时,我需要它。我会删除它,一旦我弄清楚如何让整个事情表现出来)
所以问题是...
我怎样才能实现在每个平板电脑连接上触发触发器,而不仅仅是第一个连接?
解决方案
推荐阅读
- javascript - 使用 Webpack 进行新部署后处理丢失的动态块
- css - 没有样式的 Laravel 分页
- python - uwsgi+django:不支持的哈希类型
- c# - .net 4.5.2 和 ssl 3.0
- javascript - Javascript在同一页面的多个表中搜索
- typo3 - 带有 MenuProcessor 的面包屑中的 TYPO3 新闻标题
- odata - Uri 函数“包含”一个父令牌。Uri 函数不能有父标记
- csv - 向pyspark中的数据框添加唯一的连续行号
- javascript - 本地 HTML 日期时间 - 使用箭头时,最小值和最大值无法正常工作
- java - 计算文本文件中重复行的程序