gpt4 book ai didi

ubuntu - 无法使用修改后的配置启动 Redis (/var =>/home/redis)

转载 作者:行者123 更新时间:2023-12-01 08:33:28 31 4
gpt4 key购买 nike

尝试使用修改后的配置在 Ubuntu 16.04 上启动 Redis 3.2 时遇到问题。 /etc/redis/redis.conf 的变化如下:

#logfile /var/log/redis/redis-server.log
logfile /home/redis/logs/redis-server.log
...
#dir /var/lib/redis
dir /home/redis/data

这是 journalctl -xe 的输出:
run-parts[5853]: run-parts: executing /etc/redis/redis-server.pre-up.d/00_exampl
redis-server[5857]: *** FATAL CONFIG FILE ERROR ***
redis-server[5857]: Reading the configuration file, at line 163
redis-server[5857]: >>> 'logfile /home/redis/logs/redis-server.log'
redis-server[5857]: Can't open the log file: Permission denied
systemd[1]: redis-server.service: Control process exited, code=exited status=1
systemd[1]: Failed to start Advanced key-value store.

如您所见,start-up 似乎无法在 /home/redis 下执行任何操作目录,而它由 redis 所有用户和组( chown -R redis:redis /home/redis 应用)。

脚注
  • 此配置曾经在 Debian Wheezy/Jessie 和 Ubuntu 14.04
  • 上运行良好
  • Redis 使用默认配置正确启动
  • touchchmod日志文件未修复
  • 还使用 Redis 4 进行了测试(通过 Chris Lea ppa)
  • 最佳答案

    正如@h0x91B 在评论中解释的那样,您可以启用 selinux看看它是否有效。

    也就是说,如果您不想使用 selinux ,这里有一个解决方法:

  • 编辑 Redis systemd服务文件/etc/systemd/system/redis.service , 设置 ProtectHome=no并添加 ReadWriteDirectories=-/home/redis
  • 使用 sudo systemctl daemon-reload 重新加载 systemd
  • 启动 Redis sudo service redis-server start

  • 引用文献
  • http://damiengustave.fr/de-la-securite-de-systemd
  • https://serverfault.com/a/801913/338505
  • 关于ubuntu - 无法使用修改后的配置启动 Redis (/var =>/home/redis),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46351375/

    31 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com