Gostaria de saber qual é o método certo para reiniciar o serviço de rede no Debian Jessie. Eu sei que posso usar:
service networking restart
ou
/etc/init.d/networking restart
de qualquer maneira que me deu problemas na conexão ssh, ou
invoke-rc.d networking restart
e outros dois métodos com systemctl e com ifup / ifdown .
Mas qual é o caminho certo para fazer isso?
linux
networking
debian-jessie
cloud81
fonte
fonte
service
einvoke-rc.d
chamam apenas/etc/init.d/servicename
com as mesmas opções que foram dadas.Respostas:
Eu usaria o
service
comando porque é mais consistente em diferentes distribuições. Então, dos comandos que você mencionou, a variante que eu utilizaria é:Definitivamente, eu o rodaria dentro de uma
screen
sessão ou por outros meios, para que não falhe ao concluir, caso você perca a conexão com o shell em que o digitou. (Tentei perder a conectividade com uma máquina fazendo loginssh
e reiniciando a rede apenas para que a conexão ssh terminasse enquanto a rede estava inoperante e envie um HUP paraservice
que não traga a rede novamente.)No passado, havia sistemas em que
service
havia um invólucro simples em torno dos scripts/etc/init.d
e os dois primeiros de seus comandos faziam exatamente a mesma coisa. Hoje em dia, porém, existem sistemas em queservice
, às vezes, algo é diferente e, em geral, eleservice
sabe melhor o que fazer em sua distribuição específica. Einvoke-rc.d
também depende da distribuição.Embora
service
seja o mais semelhante entre distribuições, ainda é possível que os nomes dos serviços sejam diferentes. Por exemplo, existem distribuições onde o serviço é nomeadonetwork
e outras onde ele é nomeadonetworking
. E, em algumas configurações, pode ser mais apropriado reiniciarnetwork-manager
do quenetworking
.fonte
service
comando agora como poderia 10 anos atrás, e ele fará a coisa certa, mesmo que os scripts init subjacentes se comportem totalmente diferentes.