Wayland의 sudo-run systemd 서비스에서 사용자 데스크톱 알림을 받는 방법은 무엇입니까?

Wayland의 sudo-run systemd 서비스에서 사용자 데스크톱 알림을 받는 방법은 무엇입니까?

저는 Fedora 기반 배포판인 Nobara(Wayland)에서 KDE Plasma를 실행하고 있습니다. 저는 Wayland와 Nobara/Fedora를 처음 접했고 systemd에 대한 경험이 매우 제한적입니다.

작업 결과에 따라 성공, 경고 또는 오류 데스크톱 알림을 보내는 bash 스크립트가 있습니다.

  • sudo가 아닌 수동으로 스크립트를 실행하면 데스크톱 알림이 표시됩니다.
  • sudo가 아닌 터미널에서 알림 명령을 실행하면 데스크톱 알림이 수신됩니다.
  • /etc/systemd/system 서비스를 설정할 때 데스크톱 알림을 받지 못하고 Journalctl에 오류가 표시됩니다(그렇지 않으면 스크립트가 정상적으로 실행됩니다).

X11 $DISPLAY 없이는 D-Bus를 자동으로 시작할 수 없습니다.

스크립트 알림의 예:

notify-send -a 'Successful!' -u low -i vcs-normal

시스템 서비스:

[Unit]
Description=Test Script
Wants=network-online.target
After=network-online.target

[Service]
Type=simple
Nice=10
IOSchedulingClass=2
IOSchedulingPriority=7
ExecStart=/home/username/.local/bin/test.sh
User=username
Group=users

내 검색에 따르면 루트로 실행되는 systemd 서비스는 알림을 발행하기 위해 사용자 데스크탑에 액세스할 수 없습니다. 나주변의 시도를 보았습니다., 즉 서비스 파일에 추가합니다.

[Service]
User=username
Environment=DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/%U/bus 

내 경우에는 로그의 오류가 중지되었지만 데스크톱 알림은 제공되지 않았습니다.

나는 systemd 서비스를 사용자로 실행할 수 있고 systemd --user start test서비스 파일을 배치하면 ~/.config/systemd/user알림이 작동할 것이라는 것을 알고 있습니다(나는 이것을 달성했습니다). 하지만 이 경우에는 이 스크립트를 루트로 실행하고 싶습니다.

감사해요:)

관련 정보