Qt-creatorで動作するようにUbuntuサーバーに接続しようとしています。すべてがうまくいかない前に、私は this チュートリアルに従いました。 PuTTYとXmingをダウンロードしましたが、すべてうまくいきました。
その後、突然、Qt-creatorの作業中に変更を保存できなくなりました。そこで、Qt-creatorを閉じてPuTTYセッションを再開しました。ユーザー名とパスワード(通常)を尋ねられ、サーバーにログインした後、Qt-creator(通常)を実行しようとすると、次のメッセージが表示されます。
PuTTY X11 proxy: wrong authorisation protocol attempted
Can't open display: localhost:10.0
そこで、インターネットで見つかった2つのアプローチを使用して問題を解決しようとしました。
1つ目は、dpyname protoname hexkey
を取得する方法です。
xauth list
これはキーを返しますが、次のようにして追加できます。
xauth add
ただし、xauth list
コマンドが何も返さなかったため、機能しませんでした。
2番目の解決策は、次の場所に移動することでした。
./etc/ssh/sshd_config
sshd_configファイルを開き、ForwardX11Trusted
行を編集してyes
を読み取ります。そのような行が存在しない場合は、追加します。
ForwardX11Trusted yes
次にsshサーバーを再起動すると動作するはずです。
しかし、それもうまくいきませんでした。 sshd_config
またはgedit
を使用してxdg-open
ファイルを開くことができず、同じメッセージが再び表示されます。
なぜこれが起こっているのか、そしてその解決策は何ですか?
Suとしてログインしているときに、「PuTTY X11プロキシ:不正な認証プロトコルが試行されました」というタイプのエラーがいくつか発生した後、認証の問題であることがわかりました。次に、.Xauthorityファイルを自分のプロファイルの/ homeディレクトリから/ rootにコピーすることを思い出しました。問題が解決しました!
上記の2つの混合物を使用して解決しました。
ForwardX11Trusted yes
Sudo apt-get install xauth
xauth list
は再起動する前は空でした。ただし、再起動後にデータが追加されました。やった xauth list
PuTTYでテストした後。
それから私はsshを再起動し、それはうまくいきました。わーい!
注:私が実際に行ったことはRaspberry Piを再起動する
ホームフォルダーのディスク領域が不足しているため、職場のサーバーでも同様の問題が発生しました。ログイン後、Xauthorityファイルを書き込むことができず、転送できませんでした。
スペースを解放することで問題は解決しました。
ホームフォルダーまたは.Xauthorityの権限が不適切に設定されており、書き込みアクセス権がない場合にも、同様の問題が発生すると思います。
私の場合、ルートでディスプレイを開くことができることに気づきましたが、私はsu-グリッドを実行しており、このユーザーグリッドに問題がありました。
解決策は、このセッションを閉じて、グリッドで直接新しいセッションを開くことでした。それは機能しました。suを実行することに関する何か-グリッドが失敗しました...
サーバーでも同様の問題がありました。その理由は、ユーザーが誤った数のディスプレイを取得したためです(DISPLAY = localhost:10.0)。ユーザーがSSH経由でサーバーに接続すると(test1と呼ばれるユーザーとして)、DISPLAY = localhost:11.0を取得します。別のユーザーとして接続し、ユーザー(test1)になると、ディスプレイの数が間違っています(DISPLAY = localhost:10.0)。 DISPLAYの初期値(DISPLAY = localhost:11.0)を設定すると機能します。