Diretório de artigos
visão geral
Todos sabemos que o desempenho do WSL2 atingiu o nível de produtividade atual, exceto que alguns suportes de hardware não são muito bons no momento, como USB sem suporte nativo. Tenho um projeto com apenas um computador e preciso de ligação Windows e Linux (rede principal), existem duas opções:
1. Instalação Linux+Wine
2. Instalação Windows+WSL2
Considerando esta última, o motivo é simples. O Wine enfrenta muitos problemas, e é open source e gratuito Ao contrário do WSL2, foi feito por especialistas técnicos convidados pela Microsoft e é conhecido como WSL2 最好的Linux发行版
.
processo geral de arquitetura
Normalmente, ao usar WSL2, você precisa especificar uma determinada versão de distribuição para fazer login. Atualmente, Ubuntu
, CentOS
, Debian
, OpenSUSE
etc.
Quando precisarmos executar o shell, devemos primeiro abrir o painel do quadro de distribuição para entrar no ambiente shell, assim como você abre uma linha de comando no Linux, todas as suas operações estão no ambiente atual.
E se eu não precisar ver a interface de linha de comando do WSL2? Afinal, espero conseguir a inicialização automática na inicialização, e temos que contar com wsl.exe
este programa neste momento.
Explicação dos termos técnicos
* 后台执行
O que está aqui 后台执行
não é mudar a tarefa para segundo plano, mas completar o comando WSL2 SHELL por meio de uma série de comandos sem a necessidade de estar de plantão ou operar manualmente a UI.
detalhes técnicos
1. Operação concreta
wsl.exe é um programa rodando no Windows, para ser exato , Windows10
e . É um programa utilizado para interagir com o WSL ou um programa de gerenciamento do WSL. Tem muitos parâmetros para escolher, mas usaremos apenas alguns hoje.Windows11
Windows7不支持
Por Ubuntu-22.04
exemplo, você precisa especificar em qual distribuição executar o comando. Quanto a como verificar sua distribuição, já mencionei em meus artigos anteriores, então falarei sobre isso aqui novamente.
wsl.exe --list -v
NAME STATE VERSION
* Ubuntu-20.04 Stopped 2
Ubuntu-22.04 Running 2
Ubuntu-18.04 Stopped 2
CentOS8 Stopped 2
CentOS7 Stopped 2
O NOME acima é o nome da distribuição, ESTADO é o estado de execução e VERSÃO é a versão.
A execução do comando também é muito simples. A seguir está o comando para imprimir as informações da placa de rede. A saída padrão imprimirá as informações da placa de rede, que é exatamente igual àquela que você efetuou login para imprimir.
A diferença é que o comando a seguir não exige que você abra manualmente uma página de linha de comando do Ubuntu, tudo parece ser executado em segundo plano.
wsl -d Ubuntu-22.04 -u anold --exec /bin/bash -c ‘ifconfig’
1. Precauções
1. Variáveis ambientais
Aqui está um lugar para prestar atenção, se você não estiver logado na versão de lançamento, alguns comandos não terão efeito, como: ll
. Este comando é definido .bashrc
dentro de alias
. Por .bashrc
não ter sido executado, as configurações nele contidas ll
não terão efeito. Claro, existem muitos comandos que não terão efeito, por isso não vou listá-los aqui.
2. Ciclo de vida
Se sua política de configuração WSL for sob demanda, você precisa prestar atenção: se você não usar WSL por muito tempo, ela será reciclada automaticamente.
NAME STATE VERSION
* Ubuntu-20.04 Stopped 2
Ubuntu-22.04 Stopped 2
Ubuntu-18.04 Stopped 2
CentOS8 Stopped 2
CentOS7 Stopped 2
Certifique-se de que seu serviço esteja sempre ativo.
resumo
Muito simples, não há operação redundante. Claro, wsl.exe ainda tem muitas funções esperando para serem descobertas.