I ' m возникают проблемы с запуском hhvm при запуске инстанса EC2 Amazon Linux (который, по-видимому, очень похож на Centos). Когда я перезагружаю сервер, hhvm не появляется, и в журналах ошибок ничего нет. Когда я использую
sudo service hhvm start
, он работает нормально. Стоп / перезапуск тоже работает нормально. Когда я пытаюсь запустить следующее от имени пользователя ec2
service hhvm start
, я получаю эти ошибки
[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
. Я удалил свой /var/log/hhvm/error.log и перезапустил сервер. В журнале ошибок ничего не было.
В качестве фона я установил hhvm с помощью 'yum install nginx' из репозитория amazon. Я использую /etc/init.d/hhvm, установленный yum.
Когда hhvm запускается после запуска от root, я получаю это из 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
nginx отлично подходит, со своим собственным файлом конфигурации. Пакет hhvm - это hhvm-3.6.6-1.amzn1.x86_64.
Есть идеи? Кто-нибудь может мне дать какую-нибудь информацию? Я понимаю, что сценарий запуска запускается от имени пользователя root, но запускается от имени пользователя, указанного пользователем - в моем случае "tim". «tim» является членом корневой группы, которую я недавно сделал, чтобы попытаться исправить проблему.
Я ссылаюсь на этот вопрос , который касается Ubuntu. Я пробовал, но это не сработало.
Вот файл запуска в /etc/init.d/hhvm
Для CentOS 7, если ваша служба совместима с SysV, тогда (как вы обнаружили) используйте chkconfig
, если это собственная служба systemd, используйте systemctl enable
.