O Linux substitui / etc / hosts no subsistema windows-linux

3

Eu tive problemas com nomes de host resolvidos no windows Linux-subsystem, então eu removi o / etc / hosts e escrevi nova versão dele. Essa solução resolveu meu problema, mas após cada sistema de reinicialização ter começado a substituir o / etc / hosts por alguma versão padrão, então preciso de hosts de configuração várias vezes. É possível configurar o subsistema linux para que copie o arquivo original do windows hosts ou pelo menos não apague o arquivo já escrito?

    
por Envy 28.11.2016 / 14:41

3 respostas

1

Seu problema é abordado aqui: link

Para evitar que o WSL gere automaticamente o arquivo / etc / hosts em cada inicialização do bash, você precisa remover a seguinte linha de comentário em / etc / hosts:

# This file was automatically generated by WSL. To prevent automatic generation of this file, remove this line.
    
por 09.09.2017 / 11:46
1

Eu não tenho a linha dizendo: To prevent automatic generation of this file, remove this line. no meu / etc / hosts.

O que acabei fazendo foi criar um script addHosts.sh com o seguinte conteúdo:

MYHOSTS="ip1\thostname1\nip2\thostname2"
grep hostname1 /etc/hosts >> /dev/null || echo $MYHOSTS | sudo tee -a /etc/hosts >> /dev/null

O grep evita adicionar as entradas várias vezes se você abrir instâncias separadas da sua distribuição linux.

Depois você tem que adicionar sudo addHosts.sh ao seu bashrc e (opcionalmente) criar uma exceção para o prompt de senha do sudo para este script em / etc / sudoers:

user ALL = (root) NOPASSWD: /path/to/addHosts.sh

    
por 29.06.2018 / 12:32
0

Estou usando o Ubuntu 16.04.5 LTS como um subsistema Linux no Windows. Meu arquivo / etc / hosts no Ubuntu diz

#This file is automatically generated by WSL based on the Windows hosts file:
#%WINDIR%\System32\drivers\etc\hosts. Modifications to this file will be overwritten.

Então eu simplesmente mudei o #%WINDIR%\System32\drivers\etc\hosts .

    
por 23.10.2018 / 13:27