尝试将Redis转储到Vagrant共享文件夹的权限错误

试图将Redis .rdb文件转储到我的stream浪者共享文件夹时,我不断收到权限错误。 进入默认的/ var / lib / redis位置时,保存工作正常。

我已经尝试了几件事(build议在各种论坛/主题):

1)将以下内容添加到/etc/init.d/redis-server:

USER=vagrant GROUP=vagrant 

2)在/etc/init.d/redis-server中将umask标志更改为022

3)打开vagrant共享文件夹本身的权限。

很确定,这只是我的头,我做错了什么。 虽然花了2或3个小时,但是开始掉头发了)

在Ubuntu 13.04(Raring-Ringtail)服务器上,您需要修改/etc/init.d/redis-server。 查找以下两个需要更改的部分:

 ... start) echo -n "Starting $DESC: " mkdir -p $RUNDIR touch $PIDFILE chown redis:redis $RUNDIR $PIDFILE # <---- Old Line chown vagrant:vagrant $RUNDIR $PIDFILE # <---- New Line ... # <-- Old Line if start-stop-daemon --start --quiet --umask 007 --pidfile $PIDFILE --chuid redis:redis --exec $DAEMON -- $DAEMON_ARGS # <-- New Line if start-stop-daemon --start --quiet --umask 007 --pidfile $PIDFILE --chuid vagrant:vagrant --exec $DAEMON -- $DAEMON_ARGS ... 

基本上,你正在寻找redis的实例:redis(owner / group)文本string,并用等同的stream浪汉replace它们:stream浪者。

如果你已经在默认的redid用户下至less运行一次redis服务器,那么你还必须将日志目录的所有权改变为stream浪用户,否则redis服务器将不会重新启动。

 chown -R vagrant:vagrant /var/log/redis 

重新启动redid服务器后,您应该能够通过发出以下命令来生成转储到/ vagrant文​​件夹:

 redis-cli save 

在这里使用virtualbox作为提供者,或者其他的东西。 如果virtualbox,主机环境是什么?

这可能有助于告诉我们你得到的错误信息,或者(更好)发生故障的strace输出点。 我想知道什么是失败的操作。 打开文件? 获取locking?