Parece que a resposta é
/sbin/chkconfig --add hhvm
Estou tendo problemas para iniciar o hhvm quando minha instância do Amazon Linux (que é aparentemente muito semelhante ao Centos) EC2 é iniciada. Quando eu reinicio o servidor, o hhvm não aparece, e não há nada nos logs de erro. Quando eu uso
sudo service hhvm start
surge bem. Parar / reiniciar funciona bem também. Quando tento executar o seguinte como ec2-user
service hhvm start
Eu recebo esses erros
[ec2-user@ip-x ~]$ service hhvm start
Starting hhvm: [Fri Jan 8 22:35:13 2016] [hphp] [2451:7fe8751566c0:0:000001] [] Cannot open log file: /var/log/hhvm/error.log [ OK ]
touch: cannot touch ‘/var/lock/subsys/hhvm’: Permission denied
Eu deletei meu /var/log/hhvm/error.log e reiniciei o servidor. Não havia nada no log de erros.
Como pano de fundo, instalei o hhvm usando 'yum install nginx' do repositório amazon. Estou usando o /etc/init.d/hhvm que foi instalado pelo yum.
Quando o hhvm está rodando depois de ser iniciado pelo root eu recebo isso do ps -ef | grep hhvm
[root@ip-x init.d]# service hhvm restart
Stopping hhvm: [ OK ]
Starting hhvm: [ OK ]
[root@ip-x init.d]# ps -ef | grep hhvm
tim 2555 1 3 22:41 ? 00:00:00 hhvm --config /etc/hhvm/server.ini -d pid=/var/run/hhvm.pid --user tim --mode daemon
root 2560 2458 0 22:42 pts/0 00:00:00 grep --color=auto hhvm
O nginx vem bem, com seu próprio arquivo de configuração. O pacote hhvm é hhvm-3.6.6-1.amzn1.x86_64.
Alguma ideia? Alguma informação que alguém possa me dar? Eu entendo o script de inicialização é executado como root, mas começa como o usuário especificado - no meu caso "tim". "tim" é um membro do grupo raiz, o que fiz recentemente para tentar corrigir o problema.
Eu refiro esta pergunta , que é para o Ubuntu. Eu tentei, mas não funcionou.
Aqui está o arquivo de inicialização em /etc/init.d/hhvm
Parece que a resposta é
/sbin/chkconfig --add hhvm
Para o CentOS 7, se o seu serviço for compatível com SysV, então (como você descobriu) use chkconfig
, se for um serviço systemd nativo, use systemctl enable
.