新しいサーバーをつくって、ローカルPCからsshでログインしようとした際に上記のエラーが出ました。
検索してみたけど、日本語の情報があまり出てこなかったのでメモしておきます。
原因は本当にしょうもなくて、configファイルの記述ミスでした。
Host ssh-host
HostName hostname.example.com
User username-example
IdentityFile ~./ssh/ssh-host/private.rsa
こんな感じで記述したところ、以下のようなエラーが。
$ ssh ssh-host
tilde_expand_filename: No such user .
sshとの関係で調べてみても、それらしい情報に出会えず。
和訳すると「チルダのファイル名展開」みたいな意味です。
チルダか~…と思いながらconfigを見直してみたら、誤入力を発見しました。
Host ssh-host
HostName hostname.example.com
User username-example
# IdentityFile ~./ssh/ssh-host/private.rsa # <- ~の後ろに '.'が入っている
IdentityFile ~/.ssh/ssh-host/private.rsa # <- '~/.ssh'に修正
普通に入力ミスでした。
No such userじゃなくて、 No such file だったらすぐに気づいたんだけど…
ちなみに、チルダの後ろの誤入力を「foobar」にしたら、ちゃんと(?)
$ ssh ssh-host
tilde_expand_filename: No such user foobar
というエラーになりました。
誤入力には気を付けましょう、という話でした。
あなたのお役に立てましたらうれしいです。
最近のコメント