Isso funcionará perfeitamente - a rede entre o Win32 (programas Windows "normais") e o WSL (Windows Subsystem para Linux) funciona exatamente como você espera, e um cliente Win32 (como um navegador da Web) pode se conectar a um servidor WSL / ouvinte sem nenhum problema. Obviamente, o Win32 e o WSL precisam compartilhar o mesmo conjunto de portas; portanto, se você tem (por exemplo) um aplicativo Win32 escutando na porta 8080, também não poderá ter um processo WSL escutando no 8080 ao mesmo tempo. Tempo.
No entanto, você faz essa suposição (perfeitamente razoável), que infelizmente está incorreta:
Eu assumiria que ter o sistema de sistema linux rodando significaria que ele está sempre rodando em segundo plano.
Por motivos que me escapam ( a alegação é "conservar recursos", mas, caramba, é o meu computador, ele pode e deve usar quantos recursos for necessário para fazer as coisas que eu quero! ), A Microsoft decidiu que a WSL somente opere enquanto você tiver pelo menos uma bash.exe
janela aberta ( C:\Windows\System32\bash.exe
sendo o programa Win32 que inicia e conecta você à cópia da WSL /bin/bash
). Se você fechar todas as bash.exe
janelas, a WSL e todos os processos em execução nela, incluindo daemons (processos em segundo plano), serão encerrados. Para obter mais detalhes, consulte Visão geral do subsistema Windows para Linux e Ctrl+ Fpara "daemon".
Portanto, você só precisa deixar uma bash.exe
janela aberta enquanto se conecta ao servidor Linux (e terá que ter iniciado o servidor, pois ele será morto sempre que você fechar todas as bash.exe
janelas, inclusive nas reinicializações, etc.) e tudo deve funcionar .
Se desejar, você pode até instalar um servidor X11 (existem servidores Win32 gratuitos), executá-lo e configurar o WSL para usá-lo como DISPLAY
variável de ambiente e, em seguida, instalar e executar aplicativos gráficos do Linux (o Firefox funciona razoavelmente bem, se você não não precisa de som).