विंडोज 10 में लिनक्स सबसिस्टम का फाइल सिस्टम कहां स्थित है?


24

यह बहुत स्पष्ट है कि विंडोज '10 "होस्ट" फाइलसिस्टम /mnt/c/"लिनक्स" देखने के दृष्टिकोण से माउंट किया गया है। लेकिन क्या विंडोज से "लिनक्स" फाइल सिस्टम तक पहुंच प्राप्त करना संभव है? यदि हां, तो यह कहां है?


शेल mountमें आउटपुट क्या है bash?
DavidPostill

यह कोई सुराग नहीं लौटाता:rootfs on / type rootfs
चार लाइट्स

हम्म। ठीक है। किस बारे में cat /etc/fstab?
DavidPostill

नहींं, दुर्भाग्य से "लिनक्स" के परिप्रेक्ष्य से यह हार्डवेयर पर बैठा दिख रहा है:LABEL=cloudimg-rootfs / ext4 defaults 0 0
वहाँ चार लाइट्स

ठीक। अन्य कोई विचार नहीं।
DavidPostill

जवाबों:


25

विंडोज 10 फॉल क्रिएटर्स अपडेट (अक्टूबर 2017 में जारी) तक सिंगल रूट फाइल सिस्टम यहां स्थित था:

%LOCALAPPDATA%\Lxss\rootfs

उदाहरण के लिए, C:\Users\Vigo\AppData\Local\Lxss\rootfs\

अन्य माउंट बिंदु lxssनिर्देशिका में एक स्तर ऊपर स्थित हैं । उदाहरण के लिए, homeलिनक्स के भीतर आपकी अपनी निर्देशिका होगी %LOCALAPPDATA%\Lxss\home

फॉल क्रिएटर्स अपडेट से शुरू होकर, लिनक्स के एक से अधिक इंस्टॉल्स को स्थापित करना और उन्हें समानांतर में चलाना संभव है। मौजूदा उदाहरण (उर्फ विरासत) अपनी निर्देशिका में रहेगा लेकिन बनाए गए नए उदाहरण नीचे दिए गए हैं:

% LOCALAPPDATA% \ संकुल \ <distribution_specific_name> _ <random_string> \ LocalState \ rootfs

उदाहरण के लिए, मेरा Ubuntu 18.04 इंस्टॉलेशन के तहत स्थित है

CanonicalGroupLimited.Ubuntu18.04onWindows_ 79rhkp1fndgsc
निर्देशिका।

चेतावनी : Windows से Lxss या वितरण विशिष्ट वृक्ष के नीचे स्थित फ़ाइलों को बनाने , संशोधित करने या हटाने के लिए नहीं सावधान रहें ।

फाइलों को तलाशना और पढ़ना एकमात्र हानिरहित संचालन है। विवरण के लिए इस Microsoft ब्लॉग पृष्ठ को देखें।

ध्यान दें कि बिल्ड 1903 से शुरू होकर, चल रहे वितरण की फ़ाइलों तक पहुंचने का एक वैकल्पिक तरीका है जो पहले उल्लेखित मुद्दों को प्रदर्शित नहीं करता है।

बस पथ का उपयोग करें \\wsl$\<distribution_specific_name>\और आप फ़ाइलों को बनाने और संशोधित करने में सक्षम होंगे। AppData अभी भी 1903 के निर्माण के साथ फ़ाइलों का उपयोग करने के लिए एक समर्थित तरीका नहीं है।


यह छिपा हुआ था :)
Y2K

मैं इसे आसानी से खोजने के लिए बुकमार्क के रूप में विंडोज एक्सप्लोरर के क्विक एक्सेस में शामिल नहीं कर सकता।
जॉन

4
एक उपयोगकर्ता-तटस्थ कॉपी-पेस्ट-सक्षम संस्करण:%USERPROFILE%\AppData\Local\Lxss\rootfs
सिल्वर 9

3
चेतावनी: Microsoft के अनुसार, आपको विंडोज अनुप्रयोगों का उपयोग करके अपने लिनक्स फाइल सिस्टम को संशोधित नहीं करना चाहिए। blogs.msdn.microsoft.com/commandline/2016/11/17/…
Korey

1
आप उस रास्ते के पहले भाग को सरल कर सकते हैं%LOCALAPPDATA%%USERPROFILE%\AppData\Local
हेरोहार्ट

8

आजकल, आप कई लिनक्स वितरण स्थापित कर सकते हैं। इसलिए, प्रत्येक वितरण का अपना एक अलग फ़ोल्डर में स्थित फ़ाइल सिस्टम होगा।

  • यदि आप विंडोज स्टोर से कुछ लिनक्स वितरण स्थापित करते हैं, तो फाइलसिस्टम नीचे स्थित हैं %USERPROFILE%\AppData\Local\Packages\...\LocalState\rootfs
  • आप स्थापित किया है, ले जाया गया या का उपयोग कर एक Linux वितरण दोहराया LxRunOffline या के किसी भी संस्करण WSLDistroLauncher , फाइल सिस्टम आपके कंप्यूटर के किसी भी फ़ोल्डर में स्थित किया जा सकता है।

रजिस्ट्री से जानकारी प्राप्त करना

प्रत्येक फाइलसिस्टम का स्थान विंडोज रजिस्ट्री से प्राप्त किया जा सकता है। डेटा के अंतर्गत स्थित है

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Lxss

आप फ़ाइल सिस्टम के स्थानों को प्राप्त करने के लिए एक PowerShell विंडो शुरू कर सकते हैं और निम्नलिखित कमांड को निष्पादित कर सकते हैं

PS> (Get-ChildItem HKCU:\Software\Microsoft\Windows\CurrentVersion\Lxss | ForEach-Object {Get-ItemProperty $_.PSPath}) | select DistributionName, @{n="Path";e={$_.BasePath + "\rootfs"}}

आपको निम्न जैसी जानकारी वाली एक तालिका मिलेगी

DistributionName Path
---------------- ----
Ubuntu           C:\Users\Jaime\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState\rootfs
Ubuntu-18.04     C:\Users\Jaime\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu18.04onWindows_79rhkp1fndgsc\LocalState\rootfs
mydistro         C:\wsl\mydistro\rootfs

LxRunOffline का उपयोग करना

LxRunOffline WSL पर स्थापित लिनक्स वितरण के प्रबंधन के लिए एक उपकरण है। आप LxRunOffline का उपयोग डायरेक्ट्री को एक डिस्ट्रिब्यूटेड डिस्ट्रीब्यूशन के लिए कर सकते हैं

# lxrunoffline get-dir -n <name of the distro>

C:\> lxrunoffline get-dir -n backup
c:\wsl\installed\backup

C:\> lxrunoffline get-dir -n Ubuntu
C:\Users\Jaime\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState

2

WSL2 के लिए आप इस तरह से विंडोज एक्सप्लोरर से होम डायरेक्टरी तक पहुंच सकते हैं:

\\wsl$

पार्टी में देर से आने के लिए क्षमा करें!


यह सही उत्तर होने के लिए अद्यतन किया जाना चाहिए
getglad

1

लिनक्स सबसिस्टम का बाद का संस्करण फ़ाइल सिस्टम को स्थापित करता है packagesताकि पूर्ण पथ कुछ इस तरह से हो:

C:\Users\myUserName\AppData\Local\Packages\UbuntuLinux.someUID\LocalState\rootfs\root

या:

C:\Users\myUserName\AppData\Local\Packages\UbuntuLinux.someUID\LocalState\rootfs\home\myLinuxUserName

... माउंट बिंदु पर पाठ्यक्रम के आधार पर। निर्देशिका खोज .bashrcकरने से इन रास्तों का पता चलता है ...

वैकल्पिक readlink .रूप से विंडोज क्लिपबोर्ड के लिए एक 'डॉस' पथ के रूप में वर्तमान लिनक्स पथ को पोस्ट करने के लिए लिनक्स शेल के भीतर उपयोग करें । वास्तविक भौतिक पथ को पढ़ने के लिए समझदार कहीं पेस्ट करें।


1

ऐसा लगता है कि Microsoft ने इसे कुछ और बदल दिया है / छिपा दिया है, वर्तमान में यह यहाँ है:

% USERPROFILE% \ AppData \ Local \ संकुल \ CanonicalGroupLimited.UbuntuonWindows _ ????????????? \ LocalState \ rootfs

जैसा कि यह भविष्य में और बदल सकता है, बस पीजीपी की फाइल को .profile या .bashrc फ़ाइलों की खोज करने का सुझाव दें।


1

मैंने इस स्क्रिप्ट को बनाया जो एक्सप्लोरर में WLS फ़ोल्डर खोलती है

cd C:\Users\%USERNAME%\AppData\Local\Packages\Canonical*\LocalState\rootfs\etc
explorer %cd%

बस इसे yourScript.cmd के रूप में सहेजें और चलाएं

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.