
He estado usando el Subsistema de Windows para Linux (WSL) y cuando creo un archivo en el directorio de inicio de WSL, ¿dónde existe realmente en el explorador de archivos? Además, dado que mi unidad C: está en /mnt/c/, ¿eso significa? ¿Linux está en una partición o montaje separado?
Cuando ejecuto el directorio de lista en la raíz para WSL:
bin boot dev etc home init lib lib64 media mnt opt proc root run sbin srv sys tmp usr var
¿ Dónde existe la carpeta var
o en el explorador de archivos normal?bin
home
Respuesta1
¡Ack-No! Respecto al comentario y su correspondiente autorespuesta, por favornuncaacceder a archivos directamente a través de %LOCALAPPDATA%\Packages\TheDebianProject.DebianGNULinux_76v4gfsz19hv4\LocalState\rootfs
. Si bien es cierto que, para WSL1, los archivos sonalmacenadoallí por WSL, acceder a ellos directamente puede causar corrupción en WSL. También tenga en cuenta que para WSL2, los archivos están dentro de un disco duro virtual ( ext4.vhdx
), por lo que le impide utilizar esta técnica en absoluto.
CitarDevBlog de Microsoft sobre el tema:
Hay una regla estricta cuando se trata de WSL en Windows:
NO, bajo NINGUNA circunstancia, acceda, cree y/o modifique archivos de Linux dentro de su
%LOCALAPPDATA%
carpeta usando aplicaciones, herramientas, scripts, consolas, etc. de Windows. Abrir archivos usando algunas herramientas de Windows puede bloquear la lectura de los archivos y/o carpetas abiertos , impidiendo actualizaciones de contenidos de archivos y/o metadatos, > esencialmente resultando en archivos/carpetas corruptas.
Crear/cambiar archivos de Linux en su carpeta Appdata desde Windows probablemente resultará en corrupción de datos y/o dañará su entorno Linux, lo que requerirá que desinstale y reinstale su distribución.
La respuesta correcta también se encuentra en esa página. WSL proporciona una \\wsl$\<distroname>
pseudo-red compartida que le permitirásin peligroacceder al sistema de archivos WSL desde Windows. Tenga en cuenta que la instancia WSL debe estar ejecutándose para poder aparecer en \\wsl$\
.
Respuesta2
Según el comentario de @Narzard, la respuesta correcta en mi caso fue ir a esta carpeta:
%LOCALAPPDATA%\Packages\TheDebianProject.DebianGNULinux_76v4gfsz19hv4\LocalState\rootfs
Como tengo una distribución Debian, el nombre de la carpeta de su paquete puede diferir del mío, pero la idea general es la misma. Y de hecho, cuando voy a esa ruta, aparecen todas las carpetas raíz de Linux.
Como señaló @NotTheDr01ds, no debes realizar ninguna operación en esta carpeta ya que podría dañar tu WSL. Esta es sólo la "carpeta real" si por alguna razón quisiera saberla.