Windows 8を搭載したノートパソコンがあります。 Cygwin64を介してこのラップトップからWindows 2012サーバーにSSHを設定しようとしています。
説明した手順に従いました。ここ。
ただし、step:を実行するとssh-user-config
エラーが発生します。
ERROR: There is no home directory set for you in /etc/passwd.<br>
ERROR: Setting $HOME is not sufficient!
私のCygwin64インストールフォルダには、私がログインしているWindowsユーザーからコピーされたユーザーを含むディレクトリホームがあります(このユーザーがきれいだと仮定)。
また、ファイルが表示されますが、cygwin64/etc/passwd
そのファイルには私のWindowsユーザー(クール)はありません。
私が見る唯一の行は次のとおりです。
[computername]+sshd:*:197610:197121:[computername]\sshd,S-1-5-21-1837826546-2281981055-3577963604-1002:/var/empty:/bin/false
passwdファイルを手動で追加し、以下を挿入してみました。
nifty:*:1:1:/home/nifty:/bin/bash/
私も以下を追加してみました。
[computername]++sshd:*:1:1::/home/swuyts:/bin/bash
インターネット検索をするときに私の心に浮かぶ唯一のことは、次のコマンドを実行してみることです。
mkpasswd -l -u >> /etc/passwd
私はこれがWindowsに存在するいくつかのアカウント(管理者グループ、システムアカウント、および上記の手順で作成されたcyg_server)を追加することに気づきましたが、ssh-user-configには役立ちません。
進行方法を説明できる人はいますか?
答え1
これは一時的な問題です。スクリプトssh-user-config
を変更する必要があります。
「How To Geek」チュートリアルがあなたの経験と一致しないのは、最新バージョンのCygwin(1.7.34)がアンインストールされた/etc/passwd
ためです。/etc/group
最終的に発見したように再生成することができますが、存在しない場合、Cygwin DLLはWindowsのデフォルトのユーザー/グループデータベースを使用します。開示する存在する場合、またはサムそうでなければ。
スクリプトは、質問に答えるためにコンテンツを/etc/passwd
介してのみ実行できるという古い仮定をします。awk
Cygwinは最近、Linuxと同様に動作し、getent(1)
ファイル、AD、SAMの違いを抽象化する新しいプログラムを得ました。スクリプトには、ファイル/etc
を解析するのではなく、このツールを使用するためのパッチが必要です。/etc
Cygwinメーリングリストで述べたように、正の温度係数!
答え2
setup.exe
に更新するには、もう一度実行してみてくださいopenssh-6.7p1-2
。これにより問題が解決します。
また、問題の原因(setup.exe
パッケージを初めてインストールするときの現在のバージョンではなく「以前の」バージョンの選択)が修正されました。