在 CentOS 里并没有一个叫 “trigger” 的标准独立命令或配置项,这个词通常出现在不同场景中。你需要先确认你指的是哪一种:
如果是 systemd timer / path / service 触发
/etc/systemd/system/xxx.timer
示例:
[Unit]
Description=Run backup
[Timer]
OnCalendar=*-*-* 02:00:00
Unit=backup.service
[Install]
WantedBy=timers.target
启用:
systemctl enable xxx.timer
systemctl start xxx.timer
/etc/systemd/system/xxx.path
示例:
[Path]
PathChanged=/var/log/test.log
[Install]
WantedBy=multi-user.target
如果是 USB / 硬件插入触发
/etc/udev/rules.d/99-mytrigger.rules
示例:
ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="1234", RUN+="/usr/local/bin/my.sh"
重新加载:
udevadm control --reload
udevadm trigger
如果是 定时触发脚本
crontab -e
示例:
0 2 * * * /usr/local/bin/backup.sh
如果是 RPM 包安装触发
在 spec 文件中:
%triggerin -- package-name
echo "package installed"
如果你用的是:
alert.rules 中配置你可以告诉我:
我可以直接给你对应配置文件和示例。