You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu 20.04上Redis 5.0.7无法启动,疑与systemd相关

解决Redis 5.0.7在Ubuntu 20.04无法启动的排查思路

1. 直接手动启动Redis,获取详细错误信息

systemd的报错仅显示退出状态1,缺乏具体原因,先跳过systemd直接启动Redis,查看实时报错:

/usr/bin/redis-server /etc/redis/redis.conf

这一步会直接输出启动失败的核心原因,比如端口被占用、权限异常、持久化文件损坏等。

2. 查看Redis本地日志

默认Redis日志路径为/var/log/redis/redis-server.log,提取最新日志片段:

tail -n 50 /var/log/redis/redis-server.log

日志会记录启动失败的细节,比如RDB/AOF文件损坏、内存不足、配置项冲突等关键信息。

3. 检查端口占用情况

Redis默认使用6379端口,确认是否被其他进程占用:

ss -tulpn | grep 6379

若端口被占用,可杀掉占用进程,或修改Redis配置文件中的port项更换端口。

4. 验证Redis相关目录/文件权限

Redis运行用户通常为redis,检查数据目录(默认/var/lib/redis)、日志目录、配置文件的权限:

ls -ld /var/lib/redis /var/log/redis /etc/redis/redis.conf

确保这些文件/目录的所有者为redis:redis,权限设置合理(目录750、文件640)。若权限异常,执行以下命令修复:

chown -R redis:redis /var/lib/redis /var/log/redis
chmod 750 /var/lib/redis /var/log/redis
chmod 640 /etc/redis/redis.conf

5. 检查持久化文件完整性

若开启RDB或AOF持久化,文件损坏会导致启动失败:

  • 检查RDB文件(默认/var/lib/redis/dump.rdb):
redis-check-rdb /var/lib/redis/dump.rdb
  • 修复AOF文件(默认/var/lib/redis/appendonly.aof):
redis-check-aof --fix /var/lib/redis/appendonly.aof

若修复无效,备份后删除损坏的持久化文件再尝试启动(注意会丢失未备份的数据)。

6. 核对systemd服务文件配置

即使配置与正常机器一致,仍可检查/lib/systemd/system/redis-server.service内容,对比正常机器的文件,确保ExecStart路径、用户设置等正确。若修改了服务文件,需重新加载systemd配置:

systemctl daemon-reload

7. 检查系统资源限制

  • 内存:用free -h确认是否内存不足,Redis启动需足够内存,尤其是持久化文件较大时。
  • 文件描述符:检查系统文件描述符限制是否足够,临时调整后再尝试启动:
ulimit -n 1000000

若有效,需修改/etc/security/limits.conf永久设置。


内容的提问来源于stack exchange,提问作者B-zaro

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.24 16:18:35