Sobre el sistema de archivos montado en /mnt/c
- ¿Qué es exactamente / mnt / c / Users / en comparación con C: \ Users \? Parece que son uno en el mismo --- entonces, ¿qué es / mnt / c /?
A diferencia de Windows, Linux (y los otros sistemas basados en Unix) usan una única estructura de carpetas independiente de la cantidad de discos que tenga. Si tiene varios discos, todos estos discos deben estar montados en la estructura de carpetas en algún momento.
- Por lo general, todos los discos (diferentes a los utilizados para iniciar el sistema) se montan en una carpeta llamada
/mnt
o/media
WSL tiene un tipo especial de sistema de archivos llamado DrvFS que le da acceso a los discos utilizados en Windows. Puede usar DrvFS para montar, no solo su sistema de archivos de Windows, sino también discos de red y otros tipos de medios.
- En WSL, por defecto, el
C:
disco en Windows está montado bajo/mnt/c
- Si tiene otro disco, por ejemplo, un
D:
disco en Windows, se montará debajo de/mnt/d
Los archivos que puede ver /mnt/c
son los mismos que tiene C:
. Si modifica algún archivo, también obtendrá los cambios en las ventanas.
Puede usar el mount
comando para acceder a otros tipos de medios (por ejemplo, unidades extraíbles o recursos compartidos de red).
Sobre la ubicación de /home/<username>
- ¿Cómo puedo ver los archivos en / home / usando el Explorador de archivos de Windows? No es que realmente quisiera --- Solo estoy tratando de tener una idea de cómo Windows está organizando este Subsistema para Linux.
En WSL, todo el sistema de archivos de Linux se encuentra en una carpeta de Windows. La ubicación de la carpeta depende de la versión de Windows y de la distribución WSL que esté utilizando.
- Las versiones iniciales de WSL almacenan el sistema de archivos de Linux en
%LOCALAPPDATA%\Lxss\rootfs
- Las distribuciones WSL instaladas desde la Tienda Windows , comenzando en Windows Build 16215 (mediados de 2017), usan una carpeta como
%LOCALAPPDATA%\Packages\...\LocalState\rootfs
. El nombre del paquete varía según la distribución (por ejemplo, es diferente para Ubuntu que para Debian)
- Las distribuciones de Linux instaladas usando otras herramientas , como lxRunOffline o WSL-DistroLauncher pueden almacenar el sistema de archivos de Linux en cualquier ubicación.
Puede marcar muchas opciones para conocer la ubicación de la carpeta WSL . Por ejemplo, creo que la opción más fácil es usar lxRunOffline para conocer la carpeta de instalación.
## You can use lxrunoffline to check which WSL distributions have installed
## using: lxrunoffline list
C:\> lxrunoffline list
backup
Ubuntu-18.04
## And you can use it to get the location of any of these WSL installations
## using: lxrunoffline get-dir -n <name of distribution>
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
Una vez que conoce la ubicación de la carpeta de instalación, se /home/<username>
encuentra debajo <installation folder>\rootfs\home\username
.
- Por ejemplo, si su carpeta de instalación es
c:\wsl\ubuntu
- el
/home/<username>
esta enc:\wsl\ubuntu\rootfs\home\username
NOTA: Tanto Linux como Windows almacenan permisos de archivos de diferentes maneras. Hoy en día, el WSL DrvFS almacena los permisos de Linux como Streams (metadatos) adjuntos a los archivos que puede ver en Windows. Microsoft no recomienda modificar archivos linux usando programas de Windows. Es posible que algunas aplicaciones de Windows dañen los permisos de Linux sin previo aviso.