Por que o gerenciador de rede não inicia na inicialização?

8

Acho que isso começou a acontecer há alguns meses, quando fiz o upgrade de 10.04 para 12.04.

Sempre que eu reinicializo, o gerenciador de rede não é iniciado. Eu tenho que executar manualmente sudo start network-manager e, em seguida, tudo funciona bem.

Coisas que eu já tentei (reinicialização após cada tentativa de correção):

  • Confirmado que todos os links do /etc/rc*.d/*network-manager estão como deveriam.
  • Como o arquivo de configuração upstart do gerenciador de rede menciona local-filesystems e meu fstab tinha uma referência a um HDD USB que não está conectado, comentei essa linha fora do fstab.
  • sudo dpkg-reconfigure network-manager e, em seguida, sudo apt-get install --reinstall network-manager
  • Olhou no syslog para sugestões, não viu nada que saltou para fora.

Eu não acho que eu tenha modificado /etc/init/network-manager.conf , mas aqui é para referência:

# network-manager - network connection manager
#
# The Network Manager daemon manages the system's network connections,
# automatically switching between the best available.

description "network connection manager"

start on (local-filesystems
      and started dbus
      and static-network-up)
stop on stopping dbus

expect fork
respawn

script
    # set $LANG so that messages appearing on the GUI will be translated. See LP: 875017
    if [ -r /etc/default/locale ]; then
        . /etc/default/locale
        export LANG LANGUAGE LC_MESSAGES LC_ALL
    fi

    exec NetworkManager
end script
    
por bstpierre 22.11.2012 / 01:03

8 respostas

15

A seção 'start on' permite que você saiba quais eventos precisam ser emitidos antes que o upstart inicie o gerenciador de rede.

Neste caso, é:

  • sistemas de arquivos locais
  • dbus
  • rede estática

As probabilidades são as duas primeiras já foram emitidas se você tiver iniciado a um desktop.

static-network-up é emitido pelo /etc/network/if-up.d/upstart script , crucialmente, o evento não será emitido a menos que todas as interfaces configuradas como 'auto' em /etc/network/interfaces estejam ativas.

No meu caso, eu tinha uma entrada à esquerda para eth0 em /etc/network/interfaces que foi configurada para usar o DHCP, mas como não havia Ethernet conectada a eth0, o DHCP nunca poderia ter êxito.

Você pode informar ao upstart para emitir eventos e pode usá-lo para verificar se é o evento de rede estática ausente.

  • Reinicie seu computador e não inicie o gerenciador de rede
  • man initctl (você precisa executar o comando emit com sudo, portanto, não há nenhum problema em executar man initctl para verificar os comandos postados na Internet primeiro)
  • sudo initctl emit static-network-up (talvez seja necessário Ctrl + C isso depois de um tempo)
  • initctl status network-manager (para verificar se começou)

Se isso resolver o seu problema, verifique /etc/network/interfaces , comente tudo o que não seja:

auto lo
iface lo inet loopback

Em seguida, reinicie e esperamos que o gerenciador de rede seja iniciado conforme o esperado.

    
por Gordon 06.01.2013 / 12:45
4

Tive o mesmo problema, mas nenhuma das soluções propostas (incluindo algumas de outros fóruns) ajudou.

De qualquer forma, depois de ler a resposta de Gordon , Eu simplesmente excluí a linha and static-network-up de /etc/init/network-manager.conf . Funcionou.

    
por Mike 08.04.2014 / 13:11
2

Eu tive o mesmo problema depois de mudar o meu thinkpad enquanto reutilizava o disco antigo. Ainda se lembrava dos antigos endereços MAC. Eu tive que removê-los manualmente em /etc/udev/rules.d/70-persistent-net.rules que resolveu o problema para mim.

    
por Roman Pletka 26.11.2012 / 12:18
2

No meu Arch Linux, eu precisava executar o seguinte comando e agora o NetworkManager é iniciado automaticamente:

systemctl enable NetworkManager

Isso permite que o NetworkManager seja executado na inicialização. Isso é o que eu entendo.

    
por Sufian 17.08.2015 / 02:51
0

O mesmo aqui em 12.04 - eu fiz:

sudo -s
mv /etc/udev/rules.d/70-persistent-net.rules ~/
touch /etc/udev/rules.d/70-persistent-net.rules
reboot

Fixo!

Você também pode editar manualmente esse arquivo e corrigir os endereços mac ...

    
por epek 06.03.2013 / 00:34
0

Do README on /etc/udev/rules.d :

  

Os arquivos neste diretório são lidos pelo udev (7) e usados quando eventos   são executados pelo kernel. O daemon do udev observa esse diretório   com inotify para que as alterações nesses arquivos sejam escolhidas automaticamente   up , por esse motivo eles devem ser arquivos e não links simbólicos para outro   localização como no caso do Debian.

ainda:

  

Escreva suas próprias regras nesse diretório que atribui o nome, links simbólicos, permissões etc. que você deseja. Escolha um número maior do que as regras que você deseja substituir e o seu será usado.

então, por favor, não , como descrito em @epek resposta , copie / cole arquivos, mas apenas adicione outro arquivo lá com um inteiro maior no começo do nome do arquivo. Por exemplo,

// Ubuntu core:
70-persistent-net.rules
// Custom overrides and/or additions:
80-persistent-net.rules
    
por kaiser 04.01.2016 / 19:46
0

para o ubuntu 14.04 chegou em casa "aplicativos de inicialização" acertar adicionar redes de nomes serviço de cmd-sudo network-manager restart commant- - [seu trabalho apenas configurações de rede válidas como ips, dns, gateway etc]

    
por Vijay Galagali 28.07.2016 / 09:57
0

Uma solução fácil é editar /etc/rc.local para inicializar o NetworkManager toda vez que você inicializar seu computador. Isso realmente não resolve o problema da raiz, mas tornou as coisas funcionais e simples para mim.

Primeiro, execute este comando:

sudo vim /etc/rc.local

Em seguida, o conteúdo deve ser semelhante a este:

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

#Sleeping a little might be necessary to let it catch up the boot. 
#However, for me, this sleep was a useless overhead.
#sleep 3 
service network-manager restart

exit 0
    
por user1283704 30.09.2017 / 14:57