我正在使用rails,并希望运行sidekiq,而运行sidekiq需要安装Redis服务器。我按照数字海洋中的说明为我的KDE Neon安装了Redis。以下是我尝试运行sudo systemctl status redis时显示的错误:
redis.service - Redis In-Memory Data Store
Loaded: loaded (/etc/systemd/system/redis.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Wed 2021-03-24 17:24:12 IST; 6s ago
Process: 47334 ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf (code=exited, status=203/EXEC)
Main PID: 47334 (code=exited, status=203/EXEC)
Mar 24 17:24:12 maxagno3 systemd[1]: redis.service: Scheduled restart job, restart counter is at 5.
Mar 24 17:24:12 maxagno3 systemd[1]: Stopped Redis In-Memory Data Store.
Mar 24 17:24:12 maxagno3 systemd[1]: redis.service: Start request repeated too quickly.
Mar 24 17:24:12 maxagno3 systemd[1]: redis.service: Failed with result 'exit-code'.
Mar 24 17:24:12 maxagno3 systemd[1]: Failed to start Redis In-Memory Data Store.使用redis-cli可以很好地工作。我假设当我第一次运行命令sudo systemctl disable redis时,它删除了redis.service文件。从那时起,我卸载并安装了Redis,但错误仍然存在。
快速帮助将不胜感激。
发布于 2021-03-24 20:21:17
您是否已尝试添加到服务Type=forking部分的/etc/systemd/system/redis.service中?
发布于 2021-03-24 21:13:13
您所显示的错误隐藏了您最初的错误。Redis基本上处于重启循环中,您的错误可以避免。您需要做的是禁用此重新启动功能,以获得下划线问题。
这可以通过执行以下操作来完成:
将/etc/systemd/system/redis.service
Restart=no。可能的选项包括no、on-success、on-failure、on-abnormal、on-watchdog、on-abort或将起始限制间隔设置为StartLimitInterval=0。这通常被设置得非常高,以防止服务不断地restartingsystemctl daemon-reload来完成的
一旦您的服务停止循环,您可以尝试手动启动该服务以获取实际错误。如果错误太大,你可以查看你的操作系统的通用日志,特别是Redis,或者通过运行journalctl:journalctl -u redis.service
希望这能有所帮助!
发布于 2021-03-25 00:55:09
如果你想要干净和可重复的方法,我建议你总是使用docker,特别是在开发环境中。所以启动docker redis就像这样简单:
docker run -d -p 6379:6379 --name my-redis redishttps://stackoverflow.com/questions/66780690
复制相似问题