私のDebianボックスにこの問題があります。コマンドを実行するたびに
sudo ./FreeFileSync
次のエラーが発生します。
Invalid MIT-MAGIC-COOKIE-1 key10:24:17: Error: Unable to initialize GTK+, is DISPLAY set properly?
そのため、次のようにDISPLAY環境変数を確認しました。
rekotc@QSTACKER:~/FreeFileSync$ env | grep DISPLAY
WAYLAND_DISPLAY=wayland-0
DISPLAY=:0
ちゃんと設定になったようです。私は何を見逃していますか?
よろしくお願いします。
答え1
このユーザーとしてコンピュータにログインすると、john
そのユーザーだけが画面に画像を描いたり、キーボードやマウスの動きを読み取ったりする権限があります。ユーザーでさえroot
これを実行しないことがあります(一部の操作は実行しません)。
ログインを必要とするすべてのユーザーはキーを提供できる必要があります。 X11では、次の場所にあります/run
。
john@pc: ps aux | grep bin/X | grep -v grep
root 1125 5.0 0.5 1982242 145420 tty7 Rsl+ Mar26 96:33 /usr/bin/X -nolisten tcp -auth /run/folder/{12345678-1234-1234-1234-123456789a} -background none -noreset -displayfd 17 -seat seat0 vt7
-auth
ここでは、Xサーバーがパラメータをファイルとして使用して起動することがわかります/run/folder/{12345678-1234-1234-1234-123456789a}
(この場合はファイルです)。
Waylandの場合は、次のようになります。
john@pc: ps aux | grep /Xorg | grep -v grep
john 2490 2.8 0.7 628618 86908 tty2 Sl+ 21:26 0:03 /usr/lib/xorg-server/Xorg vt2 -displayfd 3 -auth /run/user/1000/gdm/Xauthority -nolisten tcp -background none -noreset -keeptty -verbose 3
ここでファイル名を見ることができます/run/user/1000/gdm/Xauthority
。
したがって、root
グラフィカルインターフェイスでプログラムを起動するには、このファイルが必要であり、そのファイル~/.Xauthority
からそのファイルを検索します。
したがって、ファイルをコピーして準備します。
john@pc: sudo cat /run/user/1000/gdm/Xauthority > /root/.Xauthority
次に、次のコマンドを実行します。
john@pc: sudo ./FreeFileSync
これは私にとって効果的です。