CentOS 6 サーバー上で redis をサービスとして実行しようとしましたが、起動スクリプトが正しく動作しません。
redisに同梱されている起動スクリプトはchkconfigをサポートしていないので、githubで別のスクリプトを見つけました。https://gist.github.com/tahajahangir/155176867afed0ff80adただし、36行目と37行目:
chown ${REDIS_USER-redis}:${REDIS_USER-redis} /var/run/redis
daemon --user ${REDIS_USER-redis} "$redis $REDIS_CONF_FILE $REDIS_OPTIONS"
を実行するとエラーが発生しますservice redis-server start
。ユーザー名が間違っているという最初のエラーは、redis
36行目を次のように変更することで解決しました。
chown root:root /var/run/redis
しかし、まだエラーが残っています:
/usr/bin/dirname: extra operand `.pid'
Try `/usr/bin/dirname --help' for more information.
いくつか試してみましたが、この「余分なもの」がどこから来ているのかよく分かりません.pid
。どうすれば解決できますか?
答え1
投稿したページの最後のコメントに問題の解決策が記載されているはずです。37 行目を次のように変更する必要があります。
デーモン --user ${REDIS_USER-redis} --pidfile ${pidfile} "$redis $REDIS_CONF_FILE $REDIS_OPTIONS"
答え2
インストールするとすぐに使えるパッケージ版のredisの使用を検討してください。CentOS 6の場合、EPELにはredis 2.4.10があります。また、最新の2.8および3.0バージョンのredisを以下から入手することもできます。IUSプロジェクト。