gpt4 book ai didi

Redis 转储.rdb |不是默认目录

转载 作者:可可西里 更新时间:2023-11-01 11:15:04 26 4
gpt4 key购买 nike

很抱歉,如果这是一个重复的问题,但我已经在 stackoverflow 上搜索了几个小时,但找不到答案。

场景:

我更改了 Redis 的 dump.rdb 的默认目录,因为我的雇主希望它在特定目录中。我编辑了 redis.conf 文件目录中的行,使其指向/www/redis/sessions。我没有改文件名,所以还是dump.rdb。我还在/lib/systemd/system 中将其作为服务运行。如果有帮助,我正在使用 redis v4.0.11。

问题:

当我使用 systemctl stop redis 停止守护进程时。我从 SELinux 得到一个错误,说 redis-server 没有权限写入/www/redis/sessions。它还会尝试创建一个名为 temp-####.rdb 的临时文件,而不是尝试打开 dump.rdb。我检查了目录和文件权限,并确保任何用户都可以写入。我仍然遇到同样的错误。

试过: 1. 在 systemd 的服务文件中添加行 ReadWriteDirectories =/www/redis/sessions。 2. 更改/www/redis/sessions 目录,以便任何人都可以写入。 3.将redis.conf文件中的目录更改为/www/redis/sessions 4. 使用 ./redis-cli CONFIG GET * 检查 redis 实例是否加载了正确的 redis.conf 文件 5. 增加SELinux推荐的建议本地策略 6. 使用 chcon -R --type=httpd_sys_content/www/redis/sessions & chcon -R --type=httpd_sys_rw_content_t/www/redis/sessions 更改 redis-server 的内容

非常感谢任何帮助或建议。

最佳答案

SELinux 使用的策略不同于使用 chmod 等编辑的访问权限。如果不发布您的策略,您将无法获得太多帮助。作为一个疯狂的猜测,我会说 redis 的创建掩码是错误的。

temp-####.rdb 文件不是问题。 Redis 首先写入临时文件,然后将它们移动到最终目的地。写入失败时保留现有文件的典型方法。

您是否考虑过将 .rdb 留在原处,并简单地将其链接到您的微观管理老板想要的位置?

关于Redis 转储.rdb |不是默认目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51833819/

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