(Strangley) Meu Apache2 instalado não inicia ao efetuar login no Linux Mint.
A execução deste comando faz o seguinte:
sudo service apache2 start
Como devo tentar iniciar este serviço em cada login?
linux-mint
startup
eoinoc
fonte
fonte
~/.xinitrc
, que será executado na inicialização.~/.xinitrc
é executado no momento do login, o que não está certo. O Apache precisa ser iniciado pela raiz no momento da inicialização.Respostas:
Debian (Ubuntu / Linux Mint)
rcconf (CLI-GUI)
update-rc.d
ou
RedHat / Fedora / CentOS
chkconfig
ou
fonte
update-rc.d
chumbo comando para um erro:update-rc.d: warning: apache2 start runlevel arguments (none) do not match LSB Default-Start values (2 3 4 5)
.warning: apache2 start runlevel arguments (none) do not batch LSB default-Start values (2 3 4 5)
.Como o Mint é baseado no Ubuntu e o Ubuntu mudou para o Upstart, o Upstart Cookbook tem todas as informações para iniciar um serviço na inicialização ou em qualquer nível de execução especificado.
Este site fornece um livro de receitas detalhado para iniciar o Apache na inicialização.
fonte
/etc/init.d/apache2
. Mas esse arquivo já está cheio de um script bash muito mais complicado, que deve ter sido colocado lá pelo próprio Apache.Outra causa do mesmo problema é a prioridade dos links do apache em rc [0-6] .d. Os meus eram S90 e K09, e o Apache não iniciava na inicialização. Definir as prioridades em seus padrões, 20, funcionou para mim. Os links existentes precisam ser removidos primeiro.
fonte
No desligamento, vi um erro:
O problema era que
mysite
havia um link simbólico para um arquivo na minha pasta pessoal.Isso normalmente não deveria ser um problema, pensei.
Mas até onde eu sei, minha partição pessoal é criptografada . Portanto, acho que o Apache não pôde ler o arquivo do site virtual durante o carregamento. O arquivo não estava acessível até eu digitar minha senha.
Uma situação complexa e demorou meses para resolver :)
fonte
Uma nova resposta atualizada em 2019:
O comando systemctl é uma nova ferramenta para controlar o sistema e o serviço systemd. Esta é a substituição do gerenciamento antigo do sistema SysV init. A maioria dos sistemas operacionais Linux modernos está usando essa nova ferramenta. Se você estiver trabalhando com o CentOS 7, Ubuntu 16.04 ou posterior ou sistema Debian 9. Eles optaram pelo systemd agora.
O serviço ativado é iniciado automaticamente na inicialização do sistema. Esta é a opção semelhante para systemd que chkconfig para o init do SysV.
fonte