MinGW/MSYSのコンソールエミュレータとしてminttyを使用しています。最近(正確にはいつかはわかりませんが)、この組み合わせで使用されるホームディレクトリがWindowsユーザーフォルダー(/c/Users/<me>/
)から/home/<me>/
に変更されました。
ホームディレクトリを元に戻すにはどうすればよいですか?オンラインで検索しましたが、これまでに見つけた情報はすべてCygwin固有のものであり、MinGW/MSYSにうまく変換されていません。
私がこれまでに追求した最も可能性が高いと思われる道は/etc/passwd
と/etc/nsswitch.conf
で、どちらもMSYSのルートにはまったくありません。 /etc/nsswitch.conf
行を含むdb_home: windows
を作成しようとしましたが、これは効果がないようです。 mkpasswd
がMinGW/MSYSに存在せず、その内容がわからないため、/etc/passwd
ファイルの作成をまだ試みていません。
私は走っています:
Cygwinとは異なり、MSYSはHOME
環境変数に依存しています。 HOME
変数を設定または変更するには:
HOME
変数を作成するか、既存の変数を選択して[編集...]をクリックしますMSYS2のソリューションは、/etc/nsswitch.conf
を1行で作成/更新することです
db_home: windows
cygwinのドキュメントで説明されているように https://cygwin.com/cygwin-ug-net/ntsec.html#ntsec-mapping-nsswitch-home 。
その後、構成はMSYS DLLロード時に一度だけ読み込まれるため、すべてのMSYSアプリケーションと端末を閉じる必要があります。( https://cygwin.com/cygwin-ugを参照) -net/ntsec.html#ntsec-mapping-nsswitch 。)
2019年10月の時点で、MSYS2の新規インストールで機能します。おそらく、MSYS 1ではnsswitch.conf
はサポートされていませんでした。
HOME
環境変数の作成はシェルでは機能しますが、ssh
では機能しません。シェルは/home/User/.ssh
にアクセスしようとします。