建立新的 Windows 8.1 使用者帳戶時,您通常必須登出目前帳戶並以新使用者身分重新登入。發生這種情況時,Windows 開始設定您的主目錄並執行許多其他操作。 (我不知道什麼!)
但由於我已經使用另一個帳戶安裝了 Cygwin 和 ssh,因此我只想添加額外的僅 SSH 帳戶,而不需要所有常規 Windows 垃圾資料夾。
因此,透過使用本機Windows命令列工具等net
,我可以新增使用者和密碼。那麼是否可以設定一個功能正常的 Cygwin 用戶來 ssh 進入這台機器?editrights
wmic
Cygwin 通常喜歡在第一次執行 Cygwin shell 時啟動一些腳本(哪個?)。那麼我如何透過 ssh(從另一個本機帳戶)登入來完成同樣的事情呢?
附言。寫出這個問題後,我意識到這可以歸結為了解 Windows 在您第一次登入時會做什麼,以及(無論它做什麼)對於一個正常運行的帳戶來說,這是否真的有必要。
答案1
(如果我有代表的話,這將是一條評論)
這可能只是傳聞,但上次我在 Cygwin 中使用 OpenSSH 時(大概是 2001 年),我只能以目前登入的 Windows 使用者身分登入 SSH。
答案2
這簡直是小菜一碟!從來沒想過它會起作用。像往常一樣,只需建立新的 Windows 使用者帳戶即可。為了簡單起見,我們將其稱為“xxxx”,並確保授予它管理權限。然後以管理員身份執行來開啟 Cygwin shell。檢查您的帳戶建立情況:
net user xxxx
現在執行以下命令:
mkpasswd.exe -l -u xxxx >>/etc/passwd
net stop sshd
net start sshd
現在轉到您的外部電腦並嘗試透過 SSH 連線到您的新使用者帳戶:
ssh -2 xxxx@<local-pc-ip-address>
嘭!您已進入,Cygwin 將自動建立主目錄並複製“的所有骨架檔案”.bashrc「等等。你甚至不需要弄亂任何 ssh 檔案。
Could not chdir to home directory /home/xxxx: No such file or directory
Copying skeleton files.
These files are for the users to personalise their cygwin experience.
They will never be overwritten nor automatically updated.
`./.bashrc' -> `/home/xxxx//.bashrc'
`./.bash_profile' -> `/home/xxxx//.bash_profile'
`./.inputrc' -> `/home/xxxx//.inputrc'
`./.profile' -> `/home/xxxx//.profile'
附言。這假設您已經在普通 Windows 帳戶上設定了一個可用的 SSHd。