Ssh

SSH 到 localhost 時為空的 homedir 名稱

  • March 27, 2012

我正在嘗試啟動一個系統(Hadoop,但這對於這個問題來說並不重要),並且需要能夠 ssh 到 localhost。我用cygwin在windows上做這個。cygwin SSHD 服務正在執行,並且 ssh localhost 工作(與 ssh username@localhost 一樣)。但是,當我這樣做時,它會說:

Could not chdir to home directory : No such file or directory
mkdir: cannot create directory `': No such file or directory
 could not be created.
Setting HOME to /tmp.

不知何故,它試圖 chdir 到一個名稱為空的目錄,但失敗了。但是,我不明白它為什麼會這樣做。/home/username 文件夾應該存在,並且可以在通過 ssh 登錄後訪問。

關於 ssh 從何處獲取空文件夾名稱的任何指針?(一些我可能不知道的配置?)。

提前致謝!

您的使用者有主目錄嗎?您可以通過echo $HOMEand進行檢查grep user /etc/passwd,前者回顯使用者的目錄,而 grep 則查看儲存在密碼文件中的主目錄。

如果事實證明您的使用者沒有在 中Home設置目錄passwd,那麼執行 ausermod -d /some/directory user將強制更改,然後使用者將登錄該目錄。

另請注意,由於您的原始首頁設置為/tmp,因此可能有一些使用者設置文件需要轉移到新目錄(.ssh例如)。

引用自:https://serverfault.com/questions/373931