Tabla de contenido
1. Requisitos previos para la instalación de WSL2 (subsistema) en Windows
Seleccione el modo de instalación del paquete (elija instalar en otro disco)
3. WSL2 (subsistema) en Windows establece el inicio de sesión de usuario raíz predeterminado
4. La solución a la incapacidad de WSL2 (subsistema) para acceder a la red en Windows
5. Configuración de arranque WSL2 (subsistema) en Windows
Presione [WIN+R] para abrir la ventana en ejecución e ingrese [shell:startup]
6. Instale ssh en WSL2 (subsistema) en Windows
Descargue e instale el servicio de servidor openssh
7. Cómo transferir archivos entre la ventana y WSL2 (subsistema)
8. Cerrar sesión y configurar el subsistema predeterminado
1. Requisitos previos para la instalación de WSL2 (subsistema) en Windows
-
Versión: Win10 edición profesional
-
Para sistemas x64: Versión 1903 o posterior, con compilación 18362 o posterior.
-
Las versiones anteriores a la 18362 no son compatibles con WSL 2. Use el Asistente de actualización de Windows para actualizar su versión de Windows.
2. Pasos de instalación de WSL2 (subsistema) en Windows ( la unidad C está instalada de forma predeterminada )
-
Ejecute powershell con privilegios de administrador
-
Habilite la función del subsistema de Windows 10 e ingrese el siguiente comando en la ventana abierta de PowerShell:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
-
Habilite la función de la plataforma de la máquina virtual e ingrese el siguiente comando en la ventana abierta de PowerShell:
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
-
Reinicia la computadora
-
- Descargue la actualización del kernel de Linux (actualización del kernel de Linux WSL2 para computadoras x64)
- Configure WSL 2 como la versión predeterminada e ingrese el siguiente comando en la ventana abierta de PowerShell:
wsl --set-default-version 2
-
Abra la tienda de aplicaciones para instalar el subsistema (busque ubuntu en la tienda de aplicaciones)
-- No se puede descargar, abra el proxy para volver a descargar
O busque y descargue usted mismo
Seleccione el modo de instalación del paquete (elija instalar en otro disco)
Dirección de descarga: pasos de instalación manual para versiones anteriores de WSL | Microsoft Learn
Encuentra Ubuntu_2004.2021.825.0_x64.appx después de descomprimir el directorio
Instalar
Inicie el subsistema y espere la instalación.
Configurar usuario y contraseña
Recuerde configurar el nombre de usuario y recuerde usar el nombre de usuario de Aliyun git, de lo contrario, el problema de permisos es difícil de resolver. Los usuarios configurados manualmente no pueden recibir permisos. Puede ser un pozo de wsl. Reinstalar
3. WSL2 (subsistema) en Windows establece el inicio de sesión de usuario raíz predeterminado
Ingresar
C:\Users\xxxx\AppData\Local\Microsoft\WindowsApps\CanonicalGroupLimited.Ubuntu20.04LTS_79rhkp1fndgsc, busque el programa ubuntu2204.exe,
ubuntu2204.exe config --default-user root
Reinicie el subsistema WSL para ver el efecto, el inicio de sesión predeterminado es la cuenta raíz
inicio de línea de comando
# 命令行重启。(超级管理员打开cmd)
sc stop LxssManager sc start LxssManager
Comienza la ventana de servicios
win+r e ingrese services.msc. Busque LxssManger y reinícielo.
4. La solución a la incapacidad de WSL2 (subsistema) para acceder a la red en Windows
Abra la ventana de PowerShell, edite el archivo /etc/wsl.conf y agregue el siguiente contenido
[network] generateResolvConf = false
PowerShell reinicia WSL
wsl.exe --shutdown
Abra la ventana de PowerShell, edite el archivo /etc/resolv.conf y agregue el siguiente contenido
si todavía hay un problema
Para editar el archivo de configuración de DNS de la red
sudo vim /etc/resolv.conf
Si se informa el error "/etc/resolv.conf" E166: No se puede abrir el archivo vinculado para escribir, elimine el archivo y vuelva a escribir
sudo rm /etc/resolv.conf sudo echo "" > /etc/resolv.conf sudo vim /etc/resolv.conf
Luego reinicie la red
sudo /etc/init.d/networking restart sudo apt-get update sudo apt-get upgrade
5. Configuración de arranque WSL2 (subsistema) en Windows
Crear scripts en subsistemas
Abra una ventana de PowerShell y edite /etc/init.wsl
sudo vim /etc/init.wsl
Agrega el siguiente contenido
#! /bin/sh /etc/init.d/ssh start /etc/init.d/mysql start /etc/init.d/php-fpm start /etc/init.d/nginx start
autorizado
sudo chmod +x /etc/init.wsl
Crear guiones en Windows
Presione [WIN+R] para abrir la ventana en ejecución e ingrese [shell:startup]
Abra el directorio del script de inicio de Windows, cree un nuevo linux-start.vbs en este directorio y agregue el siguiente contenido (el parámetro después de wsl -d es la versión del subsistema que instaló, puede verlo a través de wsl -l)
Set ws = WScript.CreateObject("WScript.Shell") ws.run "wsl -d Ubuntu-20.04 -u root /etc/init.wsl"
Simplemente reinicie Windows
6. Instale ssh en WSL2 (subsistema) en Windows
Desinstale y borre el paquete de software de openssh-server y los archivos de configuración del software al mismo tiempo (instale directamente sin desinstalar ni volver a instalar)
Descargue e instale el servicio de servidor openssh
sudo apt-get install openssh-server
Edite el archivo de configuración /etc/ssh/sshd_config y modifique el siguiente contenido
sudo vim /etc/ssh/sshd_config #需要修改的地方 Port 22 #默认即可,如果有端口占用可以自己修改 PubkeyAuthentication yes #默认是Public Key登录,我这里注释掉改为用户名密码登录 PasswordAuthentication yes #允许用户名密码方式登录
iniciar el servidor ssh
sudo service ssh start
Verifique el estado del servicio ssh, si se inició correctamente
sudo service ssh status
7. Cómo transferir archivos entre la ventana y WSL2 (subsistema)
将window系统下的D:software/mongodb-linux-x86_64-rhel70-4.4.13.tgz上传到WSL2(子系统)的/usr/local目录下
在WSL2(子系统)中执行如下命令,即可
cp /mnt/d/software/nmongodb-linux-x86_64-rhel70-4.4.13.tgz /usr/local
8. Cerrar sesión y configurar el subsistema predeterminado
PS C:\Users\rd02\Desktop> wslconfig /u Ubuntu-22.04
正在注销。
操作成功完成。
PS C:\Users\rd02\Desktop> wslconfig /l
适用于 Linux 的 Windows 子系统分发:
Distrod (默认)
Ubuntu
#设置默认账户
PS C:\Users\rd02\Desktop> wslconfig /setdefault Ubuntu
操作成功完成。
PS C:\Users\rd02\Desktop> wslconfig /l
适用于 Linux 的 Windows 子系统分发:
Ubuntu (默认)
Distrod
9. Configurar proxy
agente terminal
Puede usar el siguiente comando para ver si el terminal ha sido proxy:
curl cip.cc
Mostrará dónde está vinculada su IP actual;
-
Método 1 (recomendado) Cambiar ~/.zshrc o ~/.bashrc
# 打开~/.zshrc
sudo vim ~/.zshrc
Añadir en la parte inferior:
alias sethttpsproxy="export https_proxy=http://192.168.2.198:7890"
alias unsethttpsproxy="unset https_proxy"
alias sethttproxy="export http_proxy=http://192.168.2.198:7890"
alias unsethttproxy="unset http_proxy"
Después de guardar y cerrar
source ~/.zshrc
Cuando se requiere proxy http,
sethttproxy
Cuando es necesario apagar el proxy http,
unsethttproxy
参考文档:
Instalación del subsistema Linux en Windows Server | Microsoft Learn