我想sshd.service
在桌面上显示通知以了解是否有人使用 ssh 连接到我的电脑。
我可以通过使用终端并运行来跟踪更改journalctl -t sshd -f
,但如果每次都打开终端、运行命令并跟踪更改,则需要我额外注意。
答案1
我已经尝试过以下方法:
- 检查是否可以在 journalctl 中看到服务日志:
journalctl -t sshd -f
journalctl
创建将运行我的命令并使用桌面上的通知输出它的新服务:sudo vim.tiny /etc/systemd/system/shownotes.service
[Unit] Description=Show notifications from service on the desktop After=sshd.service [Service] Type=simple ExecStart=/home/user/test/output.sh WorkingDirectory=/home/user/test StandardOutput=journal+console [Install] WantedBy=multi-user.target
创建脚本
vim.tiny /home/user/test/output.sh
::#!/bin/bash export DISPLAY=:0 && journalctl -t sshd -f > /dev/pts/0
我用来
echo $DISPLAY
获取显示值。-/dev/pts/0
通知输出设备。-sshd
服务,我将直接将其 syslog 的输出定向到DISPLAY=:0
。启动并启用新服务:
sudo systemctl start shownotes && sudo systemctl enable shownotes
我可以通过以下方式实时查看新服务的状态:
journalctl -u shownotes -f
但在重新启动并进入 Gnome 会话(而不是 Kubuntu/Plazma)后,它开始显示通知/dev/pts/2