web-dev-qa-db-ja.com

AmazonLinuxサーバーの起動時にHHVMを自動的に起動する

Amazon Linux(Centosと非常によく似ている)EC2インスタンスの起動時にhhvmを起動するのに問題があります。サーバーを再起動すると、hhvmが起動せず、エラーログに何も表示されません。使うとき

Sudo service hhvm start

それはうまくいきます。停止/再起動も正常に機能します。 ec2-userとして以下を実行しようとすると

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を削除し、サーバーを再起動しました。エラーログには何もありませんでした。

背景として、Amazonリポジトリの「yuminstallnginx」を使用してhhvmをインストールしました。 yumによってインストールされた/etc/init.d/hhvmを使用しています。

ルートによって開始された後にhhvmが実行されている場合、これは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 のスタートアップファイルです

3
Tim

答えは

/sbin/chkconfig --add hhvm
2
Tim

CentOS 7の場合、サービスがSysV互換である場合は(発見したとおり)chkconfigを使用し、ネイティブのsystemdサービスである場合はsystemctl enableを使用します。

1
user9517