Windows 10のbashにて、sudoを実行すると「(コンピュータ名)の名前解決ができません」というメッセージと共にパスワード入力を要求されるようになった。
あれ?今まで要求されてたっけ?と思いつつ、正しいパスワードを入力してもエラー。
調べると、
/etc/hosts を編集する事で解決できるとの事だが、編集にはsudoが必要。
えええ!ここでもsudo要求されたら解決できねーじゃん!
という現象が起こったんで、以下の方法で強引に解決してみた。
- Windows側にて、%userprofile%\AppData\Local\lxss\rootfs\etc\hosts を開く
- localhostという記述の後ろに、「,127.0.1.1 (コンピュータ名)」を追加
(注意点)
hostsファイル編集後はUTF-8で保存。SJISで保存なんかしちゃうと、エラーが起こってbashが起動しなくなる。使うのはメモ帳でいいです。
WindowsとLinuxでは改行コードが異なるので、変に改行を入れない方がいい
ちなみに、%userprofile% は、コマンドプロンプトにて「cd %userprofile%」でも移動できるし、エクスプローラにて入力してもOKです。
何にせよ、rootパスワードがわからないままだと具合が悪いので、再インストールする事にした。以下、コマンドプロンプトにて実行。
アンインストール
lxrun /uninstall
インストール
lxrun /install
再インストール後も「(コンピュータ名)の名前解決ができません」というメッセージは出るものの、パスワードは要求されず。むぅ。何が原因で上記のようになったんだろう。