Eu instalei o redis usando apt-get install redis-server
O problema para mim: os tutoriais que encontrei, por exemplo. a outra resposta a essa pergunta assume que os binários do redis estão localizados em /usr/local/bin
.
Na minha instalação, eles estão localizados em /usr/bin
, então uma correção para isso está mudando /etc/systemd/system/redis.service
para refletir isso.
Neste ponto, posso iniciar /usr/bin/redis-server /etc/redis/redis.conf
manualmente e executar com sucesso sudo systemctl start redis
.
Então, o que você precisa fazer para começar a trabalhar no 16.04 é:
- Certifique-se de que você instalou usando
apt-get install redis-server
, não baixe o tar e, em seguida, faça & amp; instalar. - Crie ou edite o serviço de atualização executando
sudo vi /etc/systemd/system/redis.service
- Edite-o para ficar assim e salve:
[Unit] Description=Redis Datastore Server After=network.target [Service] Type=forking PIDFile=/var/run/redis/redis_6379 User=redis Group=redis Environment=statedir=/var/run/redis PermissionsStartOnly=true ExecStartPre=/bin/mkdir -p ${statedir} ExecStartPre=/bin/chown -R redis:redis ${statedir} ExecStart=/usr/bin/redis-server /etc/redis/redis.conf ExecReload=/bin/kill -USR2 $MAINPID ExecStop=/usr/bin/redis-cli shutdown Restart=always [Install] WantedBy=multi-user.target
- Saia do vi de volta para o bash. Você deve ser capaz de iniciar o serviço agora com
sudo systemctl start redis
- Se o ponto 4 não funcionar, você provavelmente poderá, pelo menos, iniciá-lo manualmente executando
sudo /usr/bin/redis-server /etc/redis/redis.conf
.
A parte importante que eu tive que editar foi garantir que
As linhasExecStart = / usr / bin / redis-server /etc/redis/redis.conf
ExecStop = desligamento / usr / bin / redis-cli
não apontaram para usr/local/bin/foo
- é necessário remover o /local