Como faço para parar o Apache2 de iniciar automaticamente na inicialização?
173
Como faço para parar o Apache2 de iniciar automaticamente na inicialização? Não consigo encontrar uma opção que desative a inicialização automática quando ligo a máquina.
Talvez alguém possa ser mais específico, mas posso apontá-lo na direção certa ... em / etc, existem diretórios para rc * .d, que contêm todos os scripts de início / parada, chamados, acho, de scripts de inicialização. Você verá links para scripts que estão em /etc/init.d e começando com "k" ou "s", para "kill" ou "start", e um número que está ordenando.
Marty Fried
Sim, eu sabia sobre os diretórios /etc/rcX.d, mas procurei descobrir alguma ferramenta melhor do que apenas renomear arquivos manualmente (a vida é muito curta). update-rc.dpreencheu este vazio.
Tomasz Gandor
Respostas:
160
Sob a pasta, /etc/init.d/você encontrará todos os scripts init para diferentes serviços de inicialização, como apache2, rede, etc.
Dependendo do nível de execução em que o computador inicia, diferentes serviços são iniciados. Portanto, a partir da /etc/init.d/pasta, cada "serviço" está vinculado a uma / muitas / sem pastas de nível de execução nomeadas de rc0.dpara rc6.d.
Para simplificar, existe uma ferramenta para remover / adicionar esses links, removendo ou adicionando scripts para e da inicialização.
Para desativar o apache2, basta digitar:
sudo update-rc.d apache2 disable
Isso desativa o apache2 na inicialização, mas não é removido para poder ser ativado novamente. Para remover os scripts de inicialização do apache2, faça o seguinte:
Para remover o apache2, basta digitar:
sudo update-rc.d -f apache2 remove
Isso fará com que todas as pastas de nível de execução vinculadas ao apache2 sejam removidas.
chkconfig também pode ajudar - "chkconfig {service_name} off"
MCR
Não funciona mais:The script you are attempting to invoke has been converted to an Upstart job, but lsb-header is not supported for Upstart jobs. (...)
TomDogg 29/04
2
@ TomDogg, você pode especificar as versões com as quais estava trabalhando? Esta resposta funciona para Apache 2 no Ubuntu 14.04.3
Dale Anderson
1
Como restaurar o serviço?
Eugen Konkov
9
Aviso! Isso REMOVERá o serviço! Use sudo update-rc.d apache2 disable.
Eduardo Cuomo
194
você pode simplesmente desativá-lo por:
sudo update-rc.d apache2 disable
e se você quiser habilitá-lo novamente:
sudo update-rc.d apache2 enable
dependendo do projeto em que estou trabalhando, é útil ter o serviço convenientemente disponível, se desejar reativá-lo.
enableme deu um erro como runlevel arguments (none) do not match LSB Default-Start values, mas sudo update-rc.d apache2 defaultsparece ter reativado com sucesso.
aqui
2
@here sudo update-rc.d apache2 enablejogou como esperado para mim
Georgios Pligoropoulos
1
No Ubuntu Trusty, ele diz "A API de desativar | ativar não é estável e pode mudar no futuro."
Tanner #
1
Não funciona - error: no runlevel symlinks to modify, aborting!. No entanto, o apache2 está em execução e é iniciado automaticamente.
Daniel Kmak
Não funciona mais:update-rc.d: error: no runlevel symlinks to modify, aborting!
TomDogg 29/04
55
Com systemdagora podemos usar systemctlcomandos para impedir que um serviço seja iniciado automaticamente na inicialização.
aqui está um exemplo:
sudo systemctl disable apache2
Você ainda poderá iniciar e parar o serviço, mas ele não será iniciado na inicialização.
O Linux Mint ainda é baseado no Ubuntu 14.04. O Ubuntu começa a usar o systemd a partir de 15.04.
twan163
1
@dragonmnl como twan163 disse, systemd é para as versões mais recentes (jessie debian ou equivalente +)
mchid
1
isso funcionou muito bem no Debian
Anupam
1
a resposta certa para debian 9+
John
1
Se encontrar update-rc.d: error: no runlevel symlinks to modify, aborting!, recrie qualquer um dos links abaixo ausentes; tente novamente: /etc/rc0.d/K01 <serviço> /etc/rc1.d/K01 <serviço> /etc/rc2.d/S99 <serviço> /etc/rc3.d/S99 <serviço> / etc / O que é rc4.d / S99 <service> /etc/rc5.d/S99 <service> /etc/rc6.d/K01 <service> #
Amil Waduwawara
5
Pensei em adicionar as respostas de @gsullins e @tomodachi para futuros leitores que usaram a resposta aceita.
Se você já usou:
sudo update-rc.d apache2 remove
Você pode usar o argumento defaultspara adicionar o apache2 novamente ao início automático
update-rc.d
preencheu este vazio.Respostas:
Sob a pasta,
/etc/init.d/
você encontrará todos os scripts init para diferentes serviços de inicialização, como apache2, rede, etc.Dependendo do nível de execução em que o computador inicia, diferentes serviços são iniciados. Portanto, a partir da
/etc/init.d/
pasta, cada "serviço" está vinculado a uma / muitas / sem pastas de nível de execução nomeadas derc0.d
pararc6.d
.Para simplificar, existe uma ferramenta para remover / adicionar esses links, removendo ou adicionando scripts para e da inicialização.
Para desativar o apache2, basta digitar:
Isso desativa o apache2 na inicialização, mas não é removido para poder ser ativado novamente. Para remover os scripts de inicialização do apache2, faça o seguinte:
Para remover o apache2, basta digitar:
Isso fará com que todas as pastas de nível de execução vinculadas ao apache2 sejam removidas.
fonte
The script you are attempting to invoke has been converted to an Upstart job, but lsb-header is not supported for Upstart jobs. (...)
sudo update-rc.d apache2 disable
.você pode simplesmente desativá-lo por:
e se você quiser habilitá-lo novamente:
dependendo do projeto em que estou trabalhando, é útil ter o serviço convenientemente disponível, se desejar reativá-lo.
fonte
enable
me deu um erro comorunlevel arguments (none) do not match LSB Default-Start values
, massudo update-rc.d apache2 defaults
parece ter reativado com sucesso.sudo update-rc.d apache2 enable
jogou como esperado para mimerror: no runlevel symlinks to modify, aborting!
. No entanto, o apache2 está em execução e é iniciado automaticamente.update-rc.d: error: no runlevel symlinks to modify, aborting!
Com
systemd
agora podemos usarsystemctl
comandos para impedir que um serviço seja iniciado automaticamente na inicialização.aqui está um exemplo:
Você ainda poderá iniciar e parar o serviço, mas ele não será iniciado na inicialização.
fonte
update-rc.d: error: no runlevel symlinks to modify, aborting!
, recrie qualquer um dos links abaixo ausentes; tente novamente: /etc/rc0.d/K01 <serviço> /etc/rc1.d/K01 <serviço> /etc/rc2.d/S99 <serviço> /etc/rc3.d/S99 <serviço> / etc / O que é rc4.d / S99 <service> /etc/rc5.d/S99 <service> /etc/rc6.d/K01 <service> #Pensei em adicionar as respostas de @gsullins e @tomodachi para futuros leitores que usaram a resposta aceita.
Se você já usou:
Você pode usar o argumento
defaults
para adicionar o apache2 novamente ao início automáticoEntão você pode ativar / desativar
fonte