Вот мой текущий скрипт Upstart , который я поместил в /etc/init/redis.conf
:
description "redis server"
start on runlevel [2345]
stop on shutdown
exec sudo /opt/redis/redis-server /opt/redis/redis.conf
post-start exec sudo chmod 777 /tmp/redis.sock
respawn
Я пытаюсь запустить сервер Redis, а затем сразу запустить его. измените права доступа к файлу сокета, который он создает, чтобы он был более разрешающим.
К сожалению, в настоящее время нет способа настроить redis для установки разрешений сокетов на что-либо кроме 755, что слишком ограничительно для моего варианта использования.
Этот скрипт не работает . Он эффективно запускает сервер redis, но права доступа к файлу unix остаются прежними.
Есть идеи, как я могу достичь цели изменения разрешений сокета сразу после запуска redis, сохраняя при этом возможность управлять redis через upstart?
Возможно, что redis не создал сокет в тот момент, когда исполняется ex-post-start. Вы можете попробовать изменить строку после старта на:
post-start script
sleep 5
chmod 777 /tmp/redis.sock
end script