Leer en inglés

Compartir a través de


Comandos básicos para WSL

Los comandos de WSL siguientes se enumeran en un formato compatible con PowerShell o el símbolo del sistema de Windows. Para ejecutar estos comandos desde una línea de comandos de distribución de Bash o Linux, debe reemplazar wsl por wsl.exe. Para obtener una lista completa de comandos, ejecute wsl --help. Si aún no lo ha hecho, le recomendamos actualizar a la versión de WSL instalada desde Microsoft Store para recibir actualizaciones de WSL tan pronto como estén disponibles. Obtenga más información sobre cómo instalar WSL a través de Microsoft Store.

Instalación

wsl --install

Instale WSL y la distribución de Ubuntu de Linux predeterminada. Más información. También puede usar este comando para instalar distribuciones adicionales de Linux mediante la ejecución de wsl --install <Distribution Name>. Para obtener una lista válida de nombres de distribución, ejecute wsl --list --online.

Entre las opciones se incluyen:

  • --distribution: especifique la distribución de Linux que se va a instalar. Para encontrar distribuciones disponibles, ejecute wsl --list --online.
  • --no-launch: instale la distribución de Linux, pero no la inicie automáticamente.
  • --web-download: instale desde un origen en línea en lugar de usar la tienda Microsoft.

Cuando WSL no está instalada, las opciones incluyen:

  • --inbox: instala WSL mediante el componente de Windows en lugar de usar el almacén de Microsoft. (Las actualizaciones de WSL se recibirán a través de las actualizaciones de Windows, en lugar de insertarse como disponibles a través de la tienda).
  • --enable-wsl1: habilita WSL 1 durante la instalación de la versión de Microsoft Store de WSL habilitando también el componente opcional "Subsistema de Windows para Linux".
  • --no-distribution: no instale una distribución al instalar WSL.

Nota

Si ejecuta WSL en Windows 10 o una versión anterior, es posible que tenga que incluir la marca -d con el comando --install para especificar una distribución: wsl --install -d <distribution name>.

Enumeración de las distribuciones de Linux disponibles

wsl --list --online

Consulte una lista de las distribuciones de Linux disponibles a través de la tienda en línea. Este comando también se puede especificar como wsl -l -o.

Enumeración de las distribuciones de Linux instaladas

wsl --list --verbose

Consulte una lista de las distribuciones de Linux instaladas en la máquina Windows, incluido el estado (si la distribución se está ejecutando o detenida) y la versión de WSL que ejecuta la distribución (WSL 1 o WSL 2). Comparación de WSL 1 con WSL 2. Este comando también se puede especificar como wsl -l -v. Entre las opciones adicionales que se pueden usar con el comando list se incluyen: --all para enumerar todas las distribuciones, --running para enumerar solo las distribuciones que se están ejecutando actualmente o --quiet para mostrar solo los nombres de la distribución.

Establecimiento de la versión de WSL en 1 o 2

wsl --set-version <distribution name> <versionNumber>

Para designar la versión de WSL (1 o 2) en la que se ejecuta una distribución de Linux, reemplace <distribution name> por el nombre de la distribución y <versionNumber>, por 1 o 2. Comparación de WSL 1 con WSL 2. WSL 2 solo está disponible en Windows 11 o Windows 10, versión 1903, compilación 18362 o posterior.

Advertencia

El cambio entre WSL 1 y WSL 2 puede llevar mucho tiempo y provocar errores debido a las diferencias entre las dos arquitecturas. En el caso de las distribuciones con proyectos grandes, se recomienda realizar copias de seguridad de archivos antes de intentar una conversión.

Establecimiento de la versión de WSL predeterminada

wsl --set-default-version <Version>

Para establecer una versión predeterminada de WSL 1 o WSL 2, reemplace <Version> por el número 1 o 2. Por ejemplo, wsl --set-default-version 2. El número representa la versión de WSL que se utilizará de manera predeterminada en las instalaciones de nuevas distribuciones de Linux. Comparación de WSL 1 con WSL 2. WSL 2 solo está disponible en Windows 11 o Windows 10, versión 1903, compilación 18362 o posterior.

Establecimiento de la distribución de Linux predeterminada

wsl --set-default <Distribution Name>

Para establecer la distribución de Linux predeterminada que usarán los comandos de WSL para ejecutarse, reemplace <Distribution Name> por el nombre de la distribución de Linux que prefiera.

Cambio al directorio principal

wsl ~

~ se puede usar con wsl para iniciar en el directorio principal del usuario. Para volver de cualquier directorio al principal desde un símbolo del sistema de WSL, puede usar el comando cd ~.

Ejecución de una distribución de Linux específica desde PowerShell o CMD

wsl --distribution <Distribution Name> --user <User Name>

Para ejecutar una distribución de Linux específica con un usuario específico, reemplace <Distribution Name> por el nombre de la distribución de Linux que prefiera (por ejemplo, Debian) y <User Name>, por el nombre de un usuario existente (por ejemplo, raíz). Si el usuario no existe en la distribución de WSL, recibirá un error. Para imprimir el nombre de usuario actual, use el comando whoami.

Actualización de WSL

wsl --update

Actualice la versión de WSL a la versión más reciente. Entre las opciones se incluyen:

  • --web-download: descargue la actualización más reciente de GitHub en lugar de la tienda Microsoft.

Comprobación del estado de WSL

wsl --status

Consulte la información general sobre la configuración de WSL, como el tipo de distribución predeterminado, la distribución predeterminada y la versión del kernel.

Comprobación de la versión de WSL

wsl --version

Compruebe la información de versión sobre WSL y sus componentes.

Comando help

wsl --help

Consulte una lista de las opciones y los comandos disponibles con WSL.

Ejecutar como usuario específico

wsl --user <Username>

Para ejecutar WSL como usuario especificado, reemplace <Username> por el nombre de un usuario que exista en la distribución de WSL.

Cambio del usuario predeterminado para una distribución

<DistributionName> config --default-user <Username>

Cambie el usuario predeterminado para el inicio de sesión de su distribución. El usuario ya debe existir dentro de la distribución para convertirse en el usuario predeterminado.

Por ejemplo: ubuntu config --default-user johndoe cambiaría el usuario predeterminado de la distribución de Ubuntu al usuario "johndoe".

Nota

Si tiene problemas para averiguar el nombre de la distribución, use el comando wsl -l.

Advertencia

Este comando no funcionará para las distribuciones importadas, ya que estas distribuciones no tienen un iniciador ejecutable. En su lugar, puede cambiar el usuario predeterminado para las distribuciones importadas mediante el archivo /etc/wsl.conf. Consulte las opciones de montaje automático en el documento Opciones de configuración avanzada.

Apagar

wsl --shutdown

Finaliza inmediatamente todas las distribuciones en ejecución y la máquina virtual de utilidad ligera de WSL 2. Este comando puede ser necesario en instancias que requieren que reinicie el entorno de máquina virtual de WSL 2, como cambiar los límites de uso de memoria o realizar un cambio en el archivo .wslconfig.

Terminate

wsl --terminate <Distribution Name>

Para finalizar la distribución especificada o detener su ejecución, reemplace <Distribution Name> por el nombre de la distribución de destino.

Identificar la dirección IP

  • wsl hostname -I: devuelve la dirección IP de la distribución de Linux instalada a través de WSL 2 (la dirección de máquina virtual de WSL 2).
  • ip route show | grep -i default | awk '{ print $3}': devuelve la dirección IP de la máquina Windows como se ve en WSL 2 (la máquina virtual WSL 2)

Para una explicación más detallada, consulte Acceso a aplicaciones de red con WSL: Identificación de la dirección IP.

Exportar una distribución

wsl --export <Distribution Name> <FileName>

Exporta una instantánea de la distribución especificada como un nuevo archivo de distribución. El valor predeterminado es formato tar. El nombre de archivo puede ser - para la entrada estándar. Las opciones incluyen:

  • --vhd: especifica que la distribución de exportación debe ser un archivo .vhdx en lugar de un archivo tar (esto solo se admite con WSL 2)

Importar una distribución

wsl --import <Distribution Name> <InstallLocation> <FileName>

Importa el archivo tar especificado como una nueva distribución. El nombre de archivo puede ser - para la entrada estándar. Las opciones incluyen:

  • --vhd: especifica que la distribución de importación debe ser un archivo .vhdx en lugar de un archivo tar (esto solo se admite con WSL 2)
  • --version <1/2>: especifica si se va a importar la distribución como una distribución de WSL 1 o WSL 2

Importación de una distribución en contexto

wsl --import-in-place <Distribution Name> <FileName>

Importa el archivo .vhdx especificado como una nueva distribución. El disco duro virtual debe tener formato en el tipo de sistema de archivos ext4.

Anular el registro de una distribución de Linux o desinstalarla

Aunque las distribuciones de Linux se pueden instalar a través de Microsoft Store, no se pueden desinstalar a través de Store.

Para anular el registro y desinstalar una distribución de WSL:

wsl --unregister <DistributionName>

Al reemplazar <DistributionName> por el nombre de la distribución de Linux de destino, se anulará el registro de esa distribución de WSL para que se pueda reinstalar o limpiar. Precaución: Una vez que se ha anulado el registro, todos los datos, la configuración y el software asociados a esa distribución se perderán de manera permanente. Si se vuelve a instalar desde Store, se instalará una copia limpia de la distribución. Por ejemplo, wsl --unregister Ubuntu quitaría Ubuntu de las distribuciones disponibles en WSL. Al ejecutar wsl --list, se verá que ya no aparece en la lista.

También puede desinstalar la aplicación de distribución de Linux en la máquina Windows igual que cualquier otra aplicación de Store. Para reinstalar, busque la distribución en Microsoft Store y seleccione "Iniciar".

Montar un disco o dispositivo

wsl --mount <DiskPath>

Conecte y monte un disco físico en todas las distribuciones de WSL 2. Para ello, reemplace <DiskPath> por la ruta de acceso del directorio o el archivo donde se encuentra el disco. Consulte Montaje de un disco Linux en WSL 2. Las opciones son:

  • --vhd: especifica que <Disk> hace referencia a un disco duro virtual.
  • --name: monte el disco con un nombre personalizado para el punto de montaje.
  • --bare: conecte el disco a WSL 2, pero no lo monte.
  • --type <Filesystem>: tipo de sistema de archivos que se va a usar al montar un disco. Si no se especifica, se establece de manera predeterminada en ext4. Este comando también se puede especificar como wsl --mount -t <Filesystem>. Puede detectar el tipo de sistema de archivos mediante el comando blkid <BlockDevice> como, por ejemplo: blkid <dev/sdb1>.
  • --partition <Partition Number>: número de índice de la partición que se va a montar. Si no se especifica, se establece de forma predeterminada en todo el disco.
  • --options <MountOptions>: hay algunas opciones específicas del sistema de archivos que se pueden incluir al montar un disco. Por ejemplo, opciones de montaje ext4, como wsl --mount -o "data-ordered" o wsl --mount -o "data=writeback. Sin embargo, en este momento solo se admiten las opciones específicas del sistema de archivos. No se admiten opciones genéricas, como ro, rw o noatime.

Nota

Si ejecuta un proceso de 32 bits para acceder a wsl.exe (una herramienta de 64 bits), puede que tenga que ejecutar el comando de la siguiente manera: C:\Windows\Sysnative\wsl.exe --command.

Desmontar discos

wsl --unmount <DiskPath>

Desmontar un disco dado en la ruta de acceso del disco, si no se da ninguna ruta de acceso de disco, este comando desmontará y desasociará todos los discos montados.

Comandos de WSL en desuso

wslconfig.exe [Argument] [Options]
bash [Options]
lxrun /[Argument]

Estos comandos eran la sintaxis wsl original para configurar las distribuciones de Linux instaladas con WSL, pero se han reemplazado por la sintaxis del comando wsl o wsl.exe.