
Eu tenho um servidor headless doméstico que inicializa (e tem o sistema de arquivos raiz) em um pendrive removível. Eu instalo do meu laptop (seguindo istoboa lista de verificação) e edite os arquivos de configuração conforme necessário. Idealmente, eu gostaria de poder configurar totalmente o sistema enquanto o pendrive USB estiver conectado ao meu laptop, para que, depois de conectá-lo ao servidor, ele inicialize diretamente no nível multiusuário com a rede ativa e o daemon SSH em execução .Minha configuração de rede desejada é muito simples: possui uma única NIC MOBO integrada que desejo configurar estaticamente.
O principal problema que descobri é que não sei (de forma confiável) qual nome de interface minha NIC receberá. Até agora, usar cegamente o eth0
in /etc/network/interfaces
funcionou, mas da última vez que o reinstalei, ele mudou para oNomes de interface de rede previsíveisesquema, e tive que arrastar o monitor e o teclado para fazer login localmente e solucionar problemas do sistema.
Então, como posso evitar essa dor no futuro?
Responder1
Acho que a solução prática e mais fácil é voltar ao comportamento clássico.
- Na configuração do bootloader do pendrive (assim, na configuração do grub2, por exemplo), adicione o parâmetro
net.ifnames=0
à linha de comando do kernel. - Continue usando
eth0
em/etc/network/interfaces
.
Dada a situação que você descreveu e a ênfase que você colocou em manter as coisas simples, isso parece apropriado. Observe que ifupdown
pode ficar obsoleto e você descobrirá /etc/network/interfaces
que deixará de funcionar no futuro se for muito apressado com uma atualização/atualização.
Responder2
Se você for modernista, poderá usar systemd-networkd
o método de configuração estática usual em vez do método usual. Ver man systemd.network
; a ideia básica é remover /etc/network/interfaces
e criar algo /etc/systemd/network/static.network
como
[Network]
Address=1.2.3.4/26
Gateway=1.2.3.3
Não se esqueça de fazer isso systemctl enable systemd-networkd
também.
Responder3
O esquema previsível de nomenclatura de interface de rede é feito para resolver exatamente esse problema de obter nomes diferentes para uma interface em momentos diferentes. Isso significa que com esta mudança seu problema deve desaparecer (até a próxima mudança de nomenclatura de interface no systemd