Redis сообщает о доступной только для чтения файловой системе, но это не так
Я получаю это в моих журналах Redis:
1182:M 30 Nov 14:27:00.028 * 1 changes in 900 seconds. Saving...
1182:M 30 Nov 14:27:00.029 * Background saving started by pid 1920
1920:C 30 Nov 14:27:00.029 # Failed opening .rdb for saving: Read-only file system
1182:M 30 Nov 14:27:00.130 # Background saving error
Redis настроен для использования этого каталога:
ubuntu@XXXXX:~$ redis-cli
127.0.0.1:6379> config get dir
1) "dir"
2) "/mnt/persistent/redis-data"
Если я стану пользователем redis, я могу написать в этот каталог нормально:
ubuntu@XXXXX:~$ sudo su - redis
redis@XXXXX:~$ touch /mnt/persistent/redis-data/caniwrite
redis@XXXXX:~$ ls /mnt/persistent/redis-data/caniwrite
/mnt/persistent/redis-data/caniwrite
Кажется, он монтируется как чтение-запись:
root@XXXXX:~# mount -l | grep /mnt/persistent
/dev/xvdh on /mnt/persistent type ext4 (rw,relatime,data=ordered)
Это смонтированный AWS Elastic Block Store. Я использую Ubuntu.
Любые идеи, почему сервер Redis сообщает, что он не может написать, но пользователь Redis может?
1 ответ
Решение
Я нашел ответ, и он подтверждает, что этот вопрос достаточно отличается от других подобных вопросов!
Пока не знаю почему, но мой сервисный файл был откатан до значения по умолчанию. /etc/systemd/system/redis.service
должен был содержать (и ранее сделал):
[Service]
ReadWriteDirectories=-/mnt/persistent/redis-data