Parar o programa rodando na inicialização no Linux

26

Como faço para parar um programa em execução na inicialização no Linux. Desejo remover alguns aplicativos da inicialização para permitir que eles sejam gerenciados por supervisord , por exemplo, apache2

    
por Frozenskys 10.08.2010 / 21:41

6 respostas

26

Dependendo da distro, use a ferramenta chkconfig ou update-rc.d para ativar / desativar os serviços do sistema.

Em um sistema de estilo redhat / suse / mandrake:

sudo chkconfig apache2 off 

No Debian:

sudo update-rc.d -f apache2 remove

Faça o check-out das man pages para mais informações.

    
por 10.08.2010 / 21:46
6

Se você está lidando com um sistema Ubuntu moderno e algumas outras distros, você pode ter que lidar com uma combinação de scripts init tradicionais e scripts iniciantes. O gerenciamento de scripts de inicialização é coberto por outras respostas. O seguinte é uma maneira de impedir que um serviço iniciante inicie na inicialização:

# mv /etc/init/servicename.conf /etc/init/servicename.conf.disabled

O problema com este método é que ele não permite que você inicie o serviço usando:

# service start servicename

Uma alternativa para isso é abrir o arquivo servicename.conf em seu editor favorito e comentar as linhas que começam com:

start on

Ou seja, mude isso para

#start on ...

onde o "..." é o que quer que tenha sido depois de "iniciar" anteriormente. Dessa forma, quando você quiser reativá-lo, não precisará lembrar quais foram os parâmetros de "início".

Finalmente, se você tiver uma nova versão do upstart, basta adicionar a palavra "manual" ao final do arquivo de configuração. Você pode fazer isso diretamente do shell:

# echo "manual" >> /etc/init/servicename.conf

Isso fará com que o upstart ignore qualquer frase de "início" anteriormente no arquivo.

    
por 08.03.2011 / 00:24
1

Nos recentes sistemas Fedora e Future RHEL

systemctl disable httpd.service

desativará o serviço httpd

    
por 29.04.2013 / 04:12
0

O Slackware e o Arch linux têm métodos similares de parar / iniciar processos na inicialização, diferentes dos exemplos no estilo do Ubuntu e do Redhat fornecidos acima.

Nos linuxes do Slackware e do Arch, os scripts sh existem no diretório /etc/rc.d , normalmente um script por daemon ou um script por subsistema.

Por exemplo, o Slackware inicia o servidor da web Apache com um script /etc/rc.d/rc.httpd , chamado no momento apropriado durante a inicialização do sistema com um argumento "start". Arch linux tem scripts de nomes diferentes, mas o mesmo tipo de coisa acontece.

Para evitar que algum processo seja iniciado durante a inicialização do sistema, no Slackware, basta tornar o script apropriado em /etc/rc.d não executável. Para evitar que o Apache inicie na próxima inicialização:

chmod -x /etc/rc.d/rc.httpd

Para interromper um Apache iniciado na inicialização: /etc/rc.d/rc.httpd stop Você precisará ser root.

Arch é um pouco mais complexo. O arquivo /etc/rc.conf, um script de shell, possui uma matriz DAEMONS. Para evitar que o Apache inicie na inicialização, você alteraria essa linha em /etc/rc.conf:

DAEMONS=(hal syslog-ng network netfs crond alsa sshd httpd ntpd postgresql)

Para esta linha:

DAEMONS=(hal syslog-ng network netfs crond alsa sshd ntpd postgresql)

Para parar um apache já em execução, você executaria /etc/rc.d/httpd stop como root.

    
por 07.03.2011 / 22:37
0

No Ubuntu 10.04 você pode controlar alguns programas de inicialização da GUI.

Sistema Preferências Aplicações de inicialização

    
por 12.08.2010 / 18:36
-1

1) toque em superkey no seu teclado 2) procure por 'Startup Applications' 3) escolha qual programa você deseja desabilitar 4) bateu como para esta resposta se worx.

    
por 24.09.2016 / 11:00