研究室の計算サーバでX転送を使おうとして ssh -X hoge
としてログインしようとすると,なぜかログインに数十秒の時間がかかり,その後 /usr/bin/xauth: timeout in locking authority file .Xauthority
というメッセージが表示されました。
最初はパーミッションあたりに問題があるのかなと思って試行錯誤してみたのですが改善しませんでした。ググってみても,関係がありそうな情報があまり見つからなかったのですが,以下の日記にSELinuxとの関連を示唆する情報が載っていました。
普段はDebian系のLinuxを使っていてSELinuxとは縁が無いので,これにはなかなかびっくりしました。SELinuxではそれぞれのファイルにSELinuxコンテキストというタグのようなものが設定されているらしく,何かの拍子で誤った設定が行われてしまった可能性があります。以下のページによれば,restorecon
というコマンドを使うことでポリシーに適合するようにSELinuxコンテキストを修正してくれるようです。
そういうわけで restorecon -Rv $HOME
とすることで問題が解決できました。差分を見た感じでは $HOME
は unconfined_u:object_r:home_root_t:s0
ではなくunconfined_u:object_r:user_home_dir_t:s0
という設定にされるべきだったようです。