UbuntuサブシステムをWindows 10にインストールしました(設定で機能を有効にした後)が、Ubuntuファイルシステムのルートディレクトリはドライブのどこにありますか?
WindowsストアからインストールされたUbuntuの場合:
ストアを介してインストールする各ディストリビューションは、そのアプリケーションのappdataディレクトリにインストールされます。例:
C:\Users\<username>\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState
-benhillis
Linux用Windowsサブシステムの以前の反復では、Ubuntuファイルシステムは%localappdata%\Lxss
にありました(たとえば、C:\Users\Username\AppData\Local\Lxss
-Usernameを置き換えます) Windowsのユーザー名で)。 ファイルシステムサポートに関するWSLブログ投稿 を参照してください。
WSLが使用する主なファイルシステムはVolFです。 Linuxホームファイルのコンテンツと同様に、Linuxシステムファイルを保存するために使用されます。そのため、VolFは、Linux許可、シンボリックリンク、FIFO、ソケット、デバイスファイルなど、Linux VFSが提供するほとんどの機能をサポートしています。
VolFsは、
%LocalAppData%\lxss\rootfs
をバッキングストレージとして使用して、VFSルートディレクトリをマウントするために使用されます。さらに、追加のVolFマウントポイントがいくつかあります。最も顕著なのは、/root
および/home
を使用してそれぞれマウントされる%LocalAppData%\lxss\root
および%LocalAppData%\lxss\home
です。これらの個別のマウントの理由は、WSLをアンインストールしても、ホームディレクトリはデフォルトでは削除されないため、そこに保存されている個人ファイルはすべて保持されるためです。
Windowsアプリとツールを使用してLinuxサブシステム内のファイルを作成/変更すると、Ubuntuサブシステムでデータの破損とデータ損失が発生する可能性があります! ( Rich Turner これらの注意事項を提案してくれてありがとう!)これは絶対にnotサポートされています。同じブログ投稿から:
Windowsとの相互運用性
VolFsファイルは、上記のディレクトリのWindowsの通常のファイルに保存されますが、Windowsとの相互運用性はサポートされていません。これらのディレクトリの1つにWindowsから新しいファイルが追加された場合、VolFが必要とするEAが不足しているため、VolFはファイルの処理方法を認識せず、単に無視します。多くのエディターは、既存のファイルを保存するときにEAを削除し、再びファイルをWSLで使用できないようにします。
Windowsファイルシステムは、Bash Shell環境の/mnt/c
にあります。
出典: ダスティンカークランドのブログ 、 howtogeek
これは、Bashが最初に導入されてから変更されたようであり、Windowsストアからの配布には適用されません。
%localappdata%\lxss\home\{username}
または:
C:\Users\{user}\AppData\Local\lxss\{username}
ここで、{user}
はWindowsユーザー名であり、{username}
はインストール中に設定されたUNIXユーザー名です。
したがって、ルートディレクトリは次のようになります。
%localappdata%\lxss
ルートディレクトリは、%localappdata%
ディレクトリからWindowsエクスプローラーに表示されない場合があることに注意してください。エクスプローラーの「アドレスバー」に入力することで、とにかくアクセスできるはずです。
MS MarketからLinuxをインストールする場合:
彼らはディストリビューションを以下に配置しました:
$ cat /proc/registry/HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Lxss/\{861c29b4-ebe2-49a5-8a22-7e53a27934a0\}/BasePath
C:\Users\user\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState
以下によって定義されるデフォルトのディストリビューション:
bash# cat /proc/registry/HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Lxss/DefaultDistribution
{861c29b4-ebe2-49a5-8a22-7e53a27934a0}
Linuxのルートはより深いです:
c:/Users/user/AppData/Local/Packages/46932SUSE.openSUSELeap42.2_022rs5jcyhyac/LocalState/rootfs
PS。私はCygwinを使用してレジストリキーを調べました。
PowerShellを同じ目標に使用する場合、コマンドは次のようになります。
# obtain the value of the ID of the default Linux distribution (and store it in a variable to avoid escaping characters issues):
$DEFAULT_LXSS_ID = (Get-ItemPropertyValue -Path REGISTRY::HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Lxss\ -name DefaultDistribution)
# which will have a value like:
echo $DEFAULT_LXSS_ID
{bde539d6-0c87-4e12-9599-1dcd623fbf07}
# display the directory containing the rootfs Windows directory (mapped to the / Linux directory)
Get-ItemPropertyValue -Path REGISTRY::HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Lxss\$DEFAULT_LXSS_ID -name BasePath | Format-List -property "BasePath"
%LocalAppData%\Packages\CanonicalGroupLimited.Ubuntu18.04onWindows_79rhkp1fndgsc\LocalState
私のために働いた唯一のものは%localappdata%\lxss\home\{username}
で、{username}
はインストール中に与えたBASHユーザー名です。何らかの理由で、隠しフォルダーのlxssがC:\Users\WINDOWS-USER\AppData\Local\
に表示されないことを示した後、WindowsとBASHユーザー名でC:\
の完全なパスを指定することもできません。
そして、機能するもののデスクトップショートカットを作成してください。
ロケーションバーに「bash
」と入力すると、開いているフォルダーの[エクスプローラー]ウィンドウからBashをすばやく開くことができます。
それは十分だ。
また、コンテキストメニュー項目を追加できます。コンテキストメニューにショートカットを追加するとより多くのRAMが使用されるため、必要でない場合は個人的にはお勧めしません。
https://www.howtogeek.com/270810/how-to-quickly-launch-a-bash-Shell-from-windows-10s-file-Explorer/