web-dev-qa-db-ja.com

Windows 10 WSLからlinux / Ubuntuファイルにアクセスするにはどうすればいいですか?

この質問 は、Ubuntu BashからWindowsファイルにアクセスする方法を回答しますが、どうすれば逆もできますか?

具体的には、Bashの下の/home/mark/.ssh/id_rsaにあるWindowsからSSHキーにアクセスする必要があります。

62
mpen

WindowsコマンドラインのPMはここにあります:

2019年5月に更新:Win10 1903以降に新しく統合されたP9サーバーを介してdistrosのLinuxファイルに直接アクセスする新しく追加された機能を反映するために以下の応答を更新しました。

Windowsファイルシステムを介してLinuxファイルにアクセスすることはサポートされていないため、強く推奨されています。その理由を理解するために、 この記事を読んでください

それでは、Windowsのツール(メモ帳、VS/VScodeなど)を使ってLinuxファイルにアクセスするにはどうすればよいのでしょうか。以前はできませんでしたが、Windows 10 1903以降、P9ファイルサーバーを介してディストリビューションのファイルシステムをWindowsに公開しています。 これがどのように機能するかを議論する詳細なビデオも公開しましたこのブログ記事 でこの新機能の概要を読むこともできます。

enter image description here

この機能がどのように利用されるのかをお楽しみに。問題がある場合は、WSL GitHubレポジトリに問題を報告してください: https://github.com/Microsoft/wsl

14
Richard Turner

場所は最新のリリースでは実際に次の場所に移動されました。

C:\Users\%USERNAME%\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState\rootfs\

Microsoft/WSL#2578からこのGitHubの問題を参照してください。

上記の問題と下記のコメントで述べたように、ウィンドウズOSからこれらのファイルを台無しにしないでください。

https://blogs.msdn.Microsoft.com/commandline/2016/11/17/do-not-change-linux-files-using-windows-apps-and-tools/

51
drew7721

はい、しかしWindowsエクスプローラからそのフォルダを操作することはお勧めできません。 lxssフォルダからファイルをコピー、移動、編集、または消去したい場合は、コマンドラインツールを使用してbash内でファイルを移動する必要があります。/mnt/*にあるファイルだけが、Windowsエクスプローラから本当に操作できます。

9
onoma

私のCドライブ全体を検索して見つけました。ファイルはここにあります:

C:\Users\<username>\AppData\Local\lxss

たとえば、私のSSHキーはこちらです。

C:\Users\Mark\AppData\Local\lxss\home\mark\.ssh\id_rsa
8
mpen

WSLディレクトリ内の[onoma]ファイルが上で述べたように、Windowsシステムで実行されているエクスプローラまたはテキストエディタを使用してそれを操作すると消えてしまう属性があります。解決策は、WSLでssh-serverを起動し(再インストールが必要かもしれません)、localhostをリッスンしてから、例えばwin-sshfsを使用してWSLファイルシステムをドライブとしてマウントすることです。そしてsftpウィンドウでファイルを操作します。このトピックは、ここで部分的に説明されています。 「Windows 10上のUbuntu上のBash」にSSH接続するにはどうすればよいですか?

4
Shamar

subst L: $env:LOCALAPPDATA\lxss(PowerShell用)

またはsubst L: %LocalAppData%\lxsscmdから)

これであなたのLinuxサブシステムfilesystem-root /があなたのL:ドライブに置かれます。

ホームディレクトリだけをマッピングすることも、エクスプローラウィンドウで%LocalAppData%\lxssを打つこともできます。 L:\ mnt\cをブラウズしないでください。そうしないとあなたの脳が爆発するかもしれません。

3
Cheezmeister

私はついにWSLの中から実際の正しいフォルダーコンテキストでExplorer(そしてvscode)を開く方法を作りました: https://github.com/andymule/wslwin

たとえば、これをインストールした後、linux(WSL)では、cd /home/mark/.ssh/と入力してExplorerと入力するだけで、その場所でWindows Explorerが開きます。

編集:この機能は現在WSLで正式にサポートされています、そしてあなたはもう私のスクリプトを使うべきではありません

3
andymule

powershellでは、

cd ${env:appdata}\..\local\packages\canonical*\localstate\rootfs

それから

ls

と同じフォルダのリストを返す

ls / 

wSLのbash内.

2
masterxilo

Windows 10 Creators Updateにイム。私はSFTP NetDriveを使ってWSLファイルシステムをネットワークドライブとしてWindowsにマウントします。

同じことを実現するWindow sshFSポートがいくつかあります。

「Sudo service ssh start」でsshデーモンを起動する必要があります。

2
mliang2