昨日私同じ質問、私は以下を実行して問題を解決しました。
sudo synaptic
しかし、今日は何が起こったのかわかりません。私が走ったのか、gksu synaptic
彼らgksudo synaptic
が何もしなかったのかどうかはわかりません。
ルートに移動して次のコマンドを実行または実行すると、次のようにsudo synaptic
なります。
sudo synaptic
No protocol specified
(synaptic:32377): Gtk-WARNING **: cannot open display: :0.0
編集者:@Nunoxic
私はローカルコンピュータで作業しています。これを行うと、sudo apt-get update
一部の項目は更新され、一部の項目は更新されません。
E: Some index files failed to download. They have been ignored, or old ones used instead.
sudo apt-get update
2日前にジョギングを出ました。私がするときのecho $DISPLAY
出力は:0
@ギルス
出力はecho $XAUTHORITY
何もありません:)
の出力はsudo env | sort
次のとおりです。
COLORTERM=gnome-terminal
DISPLAY=:0.0
HOME=/root
LANG=en_US.UTF-8
LANGUAGE=en_US:en
LC_COLLATE=en_US.UTF-8
LC_CTYPE=en_US.UTF-8
LC_MESSAGES=en_US.UTF-8
LOGNAME=root
MAIL=/var/mail/root
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/X11R6/bin
SHELL=/bin/bash
SUDO_COMMAND=/usr/bin/env
SUDO_GID=0
SUDO_UID=0
SUDO_USER=root
TERM=xterm
USERNAME=root
USER=root
の出力はsudo xterm
次のとおりです。
No protocol specified
Warning: This program is an suid-root program or is being run by the root user.
The full text of the error or warning message cannot be safely formatted
in this environment. You may get a more descriptive message by running the
program as a non-root user or by removing the suid bit on the executable.
xterm Xt error: Can't open display: %s
編集する
の出力は XAUTHORITY=~/.Xauthority; sudo xterm
次のとおりです。
No protocol specified
Warning: This program is an suid-root program or is being run by the root user.
The full text of the error or warning message cannot be safely formatted
in this environment. You may get a more descriptive message by running the
program as a non-root user or by removing the suid bit on the executable.
xterm Xt error: Can't open display: %s
の出力はsudo -s9999 strace xterm
次のとおりです。
sudo: invalid option -- '9'
usage: sudo -h | -K | -k | -L | -V
usage: sudo -v [-AknS] [-g groupname|#gid] [-p prompt] [-u user name|#uid]
usage: sudo -l[l] [-AknS] [-g groupname|#gid] [-p prompt] [-U user name] [-u
user name|#uid] [-g groupname|#gid] [command]
usage: sudo [-AbEHknPS] [-C fd] [-g groupname|#gid] [-p prompt] [-u user
name|#uid] [-g groupname|#gid] [VAR=value] [-i|-s] [<command>]
usage: sudo -e [-AknS] [-C fd] [-g groupname|#gid] [-p prompt] [-u user
name|#uid] file ...
ベストアンサー1
1つの可能な説明は、最近の変更のためにX Cookieファイルの場所が~/.Xauthority
表示された場所の1つで変更されたことです$XAUTHORITY
。 X Cookieファイルには、Xサーバーに接続するときにXアプリケーションが提供する必要があるパスワードが含まれています。 (パート1を参照この回答背景の詳細をご覧ください。 )
XAUTHORITY
変数が削除されていないことを確認してくださいsudo
。次の行をファイルvisudo
に追加するには:sudoers
Defaults env_keep += XAUTHORITY
関連する可能性は、ユーザーエクスペリエンスにX Cookieがなければ、XAUTHORITY
X Cookieがに保存されることです~/.Xauthority
。HOME
環境変数が保存されていない場合、以下でsudo
実行されているXアプリケーションは正しいCookieを持たないCookieをsudo
見つけます。~root/.Xauthority
最も便利なものからあまり便利なものまで、この問題を解決する3つの簡単な方法があります。
- この
env_reset
オプションをオフにしてsudoers
(ターゲットユーザーとして任意のコマンドを実行できる場合は、実際のセキュリティ上の利点はありませんenv_reset
)、設定しないでくださいset_home
。このように、~/.Xauthority
アンダーはsudo
依然として呼び出し元のホームディレクトリを参照します。 - 上記の変数を
sudo
保持し、デフォルトの場合でもXセッション開始ファイルに設定するように指示します。XAUTHORITY
XAUTHORITY
XAUTHORITY
sudo
たとえば、次のコマンドを実行して、ユーザーのホームディレクトリへのセッション内呼び出しを使用して設定します。sudo env XAUTHORITY=${XAUTHORITY:-~/.Xauthority} xterm