Выполнение -ef
пикосекунды, чтобы найти, что число процесса выскочки является 1566. Когда идентификатор родительского процесса моей программы графического интерфейса является 1566, это может обычно отображаться. Теперь существует несколько проблем, которые заставляют мою программу графического интерфейса обычно не работать.
у меня есть systemd программа, ее имя является terui. Я хочу запустить свою программу графического интерфейса в terui. Это - мой код запуска:
система ("su sunxy-c 'ОТОБРАЖАЮТ =:0 XAUTHORITY =/home/sunxy/.Xauthority/etc/opt/kpki/mw/KCliBaseService/start_tray.sh'");
Я нашел, что после запуска таким образом, идентификатор родительского процесса программы графического интерфейса равнялся 1, не 1566, который заставил моей программе графического интерфейса не удаваться отобразиться обычно. Когда я вхожу
su sunxy-c'DISPLAY =:0 XAUTHORITY =/home/sunxy/.Xauthority/etc/opt/kpki/mw/KCliBaseService/start_tray.sh'
как пользователь root в ударе, моя программа графического интерфейса может обычно отображаться, и ее идентификатор родительского процесса является 1566.
Это - мой terui.service:
[Единица]
Демон Description=terui
Requires=network-online.target
After=network-online.target
[Сервис]
Среда = "ОТОБРАЖАЕТСЯ =:0"
Среда = "XAUTHORITY =/home/sunxy/.Xauthority"
ExecStart =/home/testui/build/terui
User=root
Type=simple
Restart=always
RestartSec=3s
[Установка]
WantedBy=graphical.target
Так, мой вопрос, что я должен сделать для отображения программы графического интерфейса обычно?
Так что здесь необходимо изменить пользователь, когда программа запущена с пользователей и одинаковых привилегий пользователей, будет применяться к программе GUI.
Согласно странице человека SystemCTL Пользовательский параметр также может быть изменен в соответствии с случаем использования. И измените владение службы, поэтому предупреждение пароля будет отключено.
до
[Service]
Environment="DISPLAY=:0"
Environment="XAUTHORITY=/home/sunxy/.Xauthority"
ExecStart=/home/testui/build/terui
User=root
Type=simple
Restart=always
RestartSec=3s
[Install]
WantedBy=graphical.target
после
[Service]
Environment="DISPLAY=:0"
Environment="XAUTHORITY=/home/sunxy/.Xauthority"
ExecStart=/home/testui/build/terui
User=USERNAME
Type=simple
Restart=always
RestartSec=3s
[Install]
WantedBy=graphical.target