如何取得 X-Server 的完整地址

如何取得 X-Server 的完整地址

編輯了@terdon 的答案。

在我的 ubuntu 電腦上:

如果我透過連接伺服器ssh -X my_server,那麼我可以啟動一個程式。

然後我用sudo -i成為root,但我無法啟動相同的程式。
錯誤:

由於身份驗證錯誤,X11 連線被拒絕。 qt.qpa.xcb:無法連線顯示 localhost:18.0 qt.qpa.plugin:即使找到了,也無法在「」中載入 Qt 平台插件「xcb」。該應用程式無法啟動,因為無法初始化 Qt 平台插件。重新安裝應用程式可能會解決此問題。

可用的平台插件有:eglfs、linuxfb、minimal、minimalegl、offscreen、vnc、xcb。

中止(核心轉儲)


我有一個視窗虛擬機MobaXterm。它顯示了 X 伺服器使用的位址。

在此輸入影像描述

如果我按照上面的方法做同樣的事情,我也會遇到同樣的問題。但我可以打字export DISPLAY=172.30.4.66:0.0並且有效。

echo $DISPLAY然後給我輸入的地址。


如何在我的 ubuntu 電腦上取得這些位址?

透過打字echo $DISPLAY我得到了:0。並且export DISPLAY=<my ip>:0不起作用。

未安裝“x11-xserver-utils”(有沒有 xhost)。

答案1

首先,你永遠不需要sudo su,為什麼要使用 2 個程序,而一個程序就可以?趕緊跑sudo -i。其次,為什麼你需要這個?如果您想以 root 身份運行該程序,只需運行sudo programName.接下來,這不是關於獲取 IP(順便說一句,混淆您的 IP 是沒有意義的:172.30.4.66 是您家庭網路上的內部位址,不是您的公共 IP),而是關於允許存取。

如果您確實希望 root 能夠在您的 X 會話上啟動圖形程序,您需要運行xhost +以允許所有使用者存取。因此,只需運行xhost +然後嘗試啟動即可。如果這不起作用,請使用輸出更新您的問題。

相關內容