gentoo /var/log/redis # ls -al
total 8
drwxrwxr-x 2 root redis 4096 12月 3 16:05 .
drw-rw-r-- 5 root root 4096 12月 3 15:57 ..
-rwxrwxrwx 1 redis redis 0 12月 3 16:05 redis.log
gentoo /var/log/redis # sudo -u redis redis-server /etc/redis.conf
*** FATAL CONFIG FILE ERROR ***
Reading the configuration file, at line 175
>>> 'logfile /var/log/redis/redis.log'
Can't open the log file: Permission denied
我可以redis-server
使用 root 用户运行,但我需要使用 redis 用户运行它。然后它打印这个错误日志。
操作系统和redis版本:
Linux gentoo 4.12.12-gentoo #1 SMP Wed Oct 4 09:05:50 CST 2017 x86_64 Virtual CPU a7769a6388d5 GenuineIntel GNU/Linux
Redis server v=4.0.2 sha=00000000:0 malloc=jemalloc-3.6.0 bits=64 build=4504b17bcfd3837e
我将
x
权限添加到/var/log
,问题已解决。似乎应该在父目录redis
中具有权限。x
现在我
/var/log
的是701
。在 centos 7 上,由于 SELinux 处于强制模式,我也面临同样的问题。我通过将 redis 服务设置为 permissive 模式来解决它
semanage permissive -a redis_t
。