我试图在 OpenVPN 通过--up
脚本连接后启动 qbittorrent。问题是该脚本是通过根配置文件运行的,因此启动应用程序有点问题。修复该问题后,下一个问题是应用程序打开,但没有在系统设置中完成任何用户配置文件主题和样式自定义(Kubuntu 20.04 和 KDE Plasma)
脚本(USER_NAME 是用户):
#!/bin/bash
xhost +
export DISPLAY=:0
sudo -u USER_NAME qbittorrent & disown
xhost -
我需要做什么才能以正确的主题和样式运行应用程序?
编辑:在 waltinator 的答案的帮助下,并通过使用查看用户环境变量,env
我设法通过以下方式为程序提供正确的主题和样式:
#!/bin/bash
sudo -i -u USER_NAME DISPLAY=:0 KDE_FULL_SESSION=true qbittorrent & disown
保留这两个环境变量(如果您还想设置三个环境变量,XDG_RUNTIME_DIR
以便程序不默认为),当OpenVPN 运行脚本时, /tmp
viavisudo
不会保留它们,因此每次我想要时都必须手动设置它们--up
运行程序。我还删除了这些xhost
调用,因为现在没有它们似乎也可以工作,我猜这是因为这个-i
选项。
答案1
阅读man sudo
,并将-i
选项添加到您的sudo
命令中。也读man sudoers
吧。
顺便说一句,使用xhost +localhost
并且xhost -localhost
不会向网络上的其他系统开放您的 X 服务器。读man xhost
。