Uno de los puntos débiles de Windows respecto a Linux o Mac es que no cuenta con una buena línea de comandos (aunque han hecho muy buenos esfuerzos con PoweShell).
.
Sin embargo, existe una forma de poder utilizar la terminal de Linux dentro de Windows. Esto podemos lograrlo a través del Windows Subsystem for Linux (WSL), que básicamente nos permite instalar una distribución de Linux dentro de Windows.
.
En esta guía voy a listar los pasos para instalar Ubuntu dentro de Windows 10 a través del WSL; explicaré como instalar ZSH y Oh-My-Zsh además de mostrar como instalar y configurar la nueva Windows Terminal para utilizarla como nuestra nueva línea de comandos.
.
.
Abre el menú de configuración de Windows 10, bien sea haciendo click en inicio y seleccionando la opción que dice “configuración” o también puedes presionar la combinación de teclas Win + i
.
.
Una vez dentro selecciona la opción que dice “Actualización y seguridad”
.
.
Luego tienes que seleccionar la opción para desarrolladores y entre las opciones que se muestran debes seleccionar la que dice “activar modo desarrollador”. Te saldrá una advertencia a la cual tendrás que darle si para continuar y luego deberás reiniciar para que se apliquen los cambios.
.
.
Finalizado este paso deberás reiniciar la computadora.
.
.
Para hacer esto debes seguir los siguientes pasos:
.
Seguido estos pasos te saldrá la siguiente ventana, donde tendrás que buscar la opción que dice “Subsistema de Windows para Linux” y activarla.
.
.
.
Puedes elegir entre varias distribuciones, pero en esta guía instalaré Ubuntu. Para ello debes ingresar a la Windows Store y buscarlo. Hay varias versiones, en este caso elegí la que se llama “Ubuntu” sin más. Te recomiendo escoger la misma.
.
.
Finalizada la instalación, búsca “Ubuntu” dentro de tus programas instalados e inícialo. Esto abrirá una consola donde se completará la instalación y te pedirá que ingreses un usuario y contraseña para usar dentro de Linux.
.
.
.
Para instalar ZSH debes ejecutar el siguiente comando en la terminal:
.
sudo apt-get install zsh
.
Al usar el comando sudo
te pedirá la contraseña que elegiste cuando configuraste tu usurio, debes introducirla para continuar con la instalación.
.
Para instalar Oh-My-Zsh deberás ingresar el siguiente comando:
.
sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
.
Terminada la instalación te saldrá un mensaje en la terminal pidiendo que confirmes si quieres usar “zsh” como tu terminal por defecto. Deberás confirmarlo escribiendo Y y presionando la tecla enter. Seguido de esto te pedirá nuevamente la constraseña de superusuario.
.
.
.
Para poder tener una mejor experiencia trabajando con la terminal y poder personlaizarla aún más es recomendable instalar algún emulador de terminal para Windows. En este tutorial instalaremos la nueva Windows Terminal.
.
Para ello debes ingresar a la Windows Store, buscarla e instalarla.
.
.
Una vez instalada búscala entre tus programas instalados e iniciala. La terminal por defecto con la que trabaja Windows Terminal es PowerShell. Pero puedes iniciar una nueva terminal seleccionando Ubuntu entre las opciones listadas.
.
.
Sin embargo lo ideal sería utilizar la terminal de Linux como nuestra terminal por defecto. Para esto deberás presionar Control + ,
y asumiendo que tengas VSCode instalado (o algún otro editor), se abrirá el archivo .json de configuración de la terminal.
.
Al principio de este archivo conseguirás una opcion que dice “defaultProfile”
.
.
Ese código deberás remplazarlo por el que aparece listado dentro de la propiedad “guid” de la terminal que quieras utilizar por defecto dentro de las terminales que aparecen listadas más abajo.
.
.
Al guardar los cambios la configuarción ya estará aplicada. La próxima vez que inicies Widnows Terminal se iniciará la terminal de Ubuntu por defecto.
.
.
Ya con esto tendrás instalada y configurada la terminal de Linux dentro de Windows 10.
.
.
Aclaratoria importante: Para aprovechar al máximo las mejoras de la versión 2 de WSL, deberás utilizar el sistema de archivos de linux instalado en tu sistema. Si estás desarrollando algún proyecto en alguna carpeta de Widows, como por ejemplo Documents
, te vas a conseguir con problemas como que los watchers no funcionarán y no notarás tampoco mejoras en la velocidad.
.
Tomado esto en cuenta, si aún deseas actualizar a la versión 2, debes seguir los siguientes pasos:
.
Lo primero es que debes tener Windows 10 actualizado hasta la versión 2004 (como mínimo con la build 19041). Para poder verificar esto puedes presionar las teclas Win + r
y ejecutar el comando winver
.
.
.
De tener instalada una versión inferior deberás actualizar antes de continuar. Para hacer esto puedes descargar el asistente que ofrece Microsoft en su página para actualizar Windows 10: Windows Update Assistant.
.
Si ya tienes la última verisón instalada el siguiente paso será habilitar la Plataforma de máquina virtual dentro de las características de Windows. Para hacerlo los pasos son los mismos que cuando activaste el Windows Subsystem for Linx:
.
.
Seguido estos pasos te saldrá la siguiente ventana, donde tendrás que buscar la opción que dice “Plataforma de máquina virtual” y activarla.
.
.
Deberás reiniciar windows para continuar.
.
Posterior a esto deberás ejecutar PowerShell como administrador. Para hacerlo puedes presionar Win + x
, se desplegará un menú con opciones y ahí podrás seleccinar “PowerShell(Administrador)” ya sea haciendo click sobre la opción o presionando la tecla a
.
.
.
Dentro de PowerShell deberás ejecutar el siguiente comando:
.
wsl --set-default-version 2
.
Puede ser que al momento de ejecutar el comando salga un mensaje que diga WSL 2 requires an update to its kernel component. For information please visit https://aka.ms/wsl2kernel.
, en ese caso deberás ir al enlace (https://aka.ms/wsl2kernel) y seguir las instrucciones para actualizar el Kernel.
.
Este cambio puede tardar varios minutos en aplicarse. Puedes verificar que ya estás utilizando la versión 2 de WSL ejecutando el siguiente comando en PowerShell:
.
wsl wsl -l -v
.
Te aparecerá un output parecido a la siguiente tabla:
.
NAME | STATE | VERSION |
---|---|---|
Ubuntu | Stopped | 2 |
.
Si en la tabla te sigue apareciendo un 1 debajo de la columna VERSION
, entonces debes fijarte en el nombre de la distribución que aparece justo debajo de la columna NAME
, en mi caso aparece Ubuntu. Tomado en cuenta ese nombre, deberás ejecutar el siguiente comando:
.
wsl --set-version Ubuntu 2
.
Ya con esto, trancucrridos unos cuantos minutos, deberás tener configurada la versión de 2 de WSL para la distribución que estés usando.
.
La versión 2 de WSL tiene algunas ventajas como ser notablemente más veloz, pero utilizarla es opcional. Todas las configuraciones que hayas hecho para la versión 1 estarán aplicadas, así que no tendrás que volver a instalar ni configurar desde cero.
Muchas gracias, Me sirvio mucho para organizar mi maquina 😃
Que bueno saber que mi tutorial te ayudó Danny. Gracias por tu comentario.
Excelente post, lo aplique y me dio ciertos errores, creo que por las nuevas versiones pero lo que requería era correr linux y una terminal funcional
¡Muchas gracias Nardo!
Hola!
Pues la verdad que habia olvidado que ya tenia ciertas cosas de linux instaladas y cuando iba por el paso de Instalar ZSH y Oh-My-Zsh en ubuntu veo que ya tenia una contraseña configurada y no la recuerdo.
Trabajo desde windows 10, alguien cree que pueda darme una mano para poder resolver esta incomoda y penosa situacion?
Gracias!
Si estas usando WSL, este articulo te puede servir:
https://practicaldev-herokuapp-com.freetls.fastly.net/franqsanz/como-cambiar-la-contrasena-de-linux-ubuntu-20-04-lts-en-wsl-17he
Hola Luis!
Agradezco la ayuda y el tiempo, pero me encuentro con el siguiente out tras ejecutar el config
alanrafael@Alan:/mnt/c/Users/alanr$ config --alanrafael root Command 'config'not found, did you mean: command'mconfig'fromdebmono-devel (6.8.0.105+dfsg-2) command'fconfig'fromdebredboot-tools (0.7build3) command'iconfig'fromdebipmiutil (3.1.5-1) command'kconfig'fromdebkconfig-frontends (4.11.0.1+dfsg-2build1) command'vconfig'fromdebvlan (2.0.4ubuntu1.20.04.1) Try: sudo apt install <deb name>
De igual forma para instalar cualquiera de esas librerias o paquetes, necesito tener la contraseña!
Alguna otra idea?
Hola de nuevo Alan, me gustaría ayudarte con este inconveniente:
He encontrado un blog en inglés que describe paso a paso el procedimiento para restablecer la contraseña.
https://itsfoss.com/reset-linux-password-wsl/
Avísame si necesitas ayuda en el paso a paso.
Feliz tarde!
T.T