首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >redis服务失败,追加文件上的权限被拒绝。

redis服务失败,追加文件上的权限被拒绝。
EN

Stack Overflow用户
提问于 2019-03-16 20:25:02
回答 3查看 9.9K关注 0票数 4

/var/log/redis.log中,此消息导致我的redis服务(从源代码安装)失败

代码语言:javascript
运行
复制
2309:C 16 Mar 2019 20:16:10.633 # Redis version=5.0.3, bits=64, commit=00000000, modified=0, pid=2309, just started
2309:C 16 Mar 2019 20:16:10.633 # Configuration loaded
2311:M 16 Mar 2019 20:16:10.634 # Can't open the append-only file: Permission denied

然而,

代码语言:javascript
运行
复制
root@redis:~# sudo su - redis
redis@redis:~$ touch /var/lib/redis/foobar.txt
redis@redis:~$ echo $?
0

这是我的/etc/redis.conf

代码语言:javascript
运行
复制
root@redis:~# cat /etc/redis.conf 
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
appendonly yes
dir /var/lib/redis
daemonize yes
logfile "/var/log/redis.log"

这是我为redis定制的单元文件

代码语言:javascript
运行
复制
root@redis:~# cat /etc/systemd/system/redis.service 
Description=Redis In-Memory Data Store                       
After=network.target                                         

[Service]                                                    
Type=forking                                                 
User=redis                                                   
Group=redis                                                                                
PermissionsStartOnly=true                                                              
ExecStop=/bin/kill -s TERM $MAINPID
PIDFile=/var/run/redis/redis-server.pid
ExecStart=/opt/redis-stable/src/redis-server /etc/redis.conf
Restart=always                                               
RestartSec=3                                                 
LimitNOFILE=65535
ReadWriteDirectories=-/var/lib/redis
ReadOnlyDirectories=/
ReadWriteDirectories=-/var/lib/redis
ReadWriteDirectories=-/var/log/redis
ReadWriteDirectories=-/var/run/redis



[Install]                                                    
WantedBy=multi-user.target  
EN

回答 3

Stack Overflow用户

发布于 2020-01-06 06:56:32

redis作为非根服务启动,因此您需要在启动服务之前调整数据目录的权限。

只需执行以下命令:

代码语言:javascript
运行
复制
sudo chown -R 1001:1001 redis-data/

重新启动redis

票数 7
EN

Stack Overflow用户

发布于 2019-03-16 21:11:50

错误是redis不能只编写附加文件。默认情况下,只追加文件放在启动redis的目录中。

我的猜测是,redis用户在被启动的位置没有写访问权。只需确保您从redis用户可以访问的目录中启动redis。

要阅读关于AOF文件的更多信息,请查看文档:http://redis.io/topics/persistence

票数 0
EN

Stack Overflow用户

发布于 2021-02-08 06:27:30

-known https://github.com/redis/redis/issues/8172 -I仍未能找到解决库伯奈特问题的方法。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55201167

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档