Eu tenho um sistema de arquivos rw /myraid0
.
# cat /proc/mounts | grep myraid0
/dev/mapper/isw_cfdbejjgdi_myraid0p1 /myraid0 ext4 rw,relatime,stripe=8,data=ordered 0 0
Não tenho problema em escrever para /myraid0
como qualquer usuário.
redis@host:~$ echo hi > /myraid0/tmp/redis/test
redis@host:~$ cat /myraid0/tmp/redis/test
hi
No entanto, meu processo não pode gravar um arquivo em /myraid0
, devido a EROFS
(sistema de arquivos somente leitura).
open("temp-4036.rdb", O_WRONLY|O_CREAT|O_TRUNC, 0666) = -1 EROFS (Read-only file system)
Isso mostra o processo de visualização da montagem como ro.
# cat /proc/15920/mounts | grep myraid0
/dev/mapper/isw_cfdbejjgdi_myraid0p1 /myraid0 ext4 ro,relatime,stripe=8,data=ordered 0 0
Por que o processo tem apenas a visualização somente leitura da montagem?
Obrigado!
Detalhes adicionais
- Ubuntu 16.04
-
Linux jeff-apartment-2015 4.4.0-36-generic #55-Ubuntu SMP Thu Aug 11 18:01:55 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
- O aplicativo é
redis-server
. Não está conseguindo salvar os instantâneos em um dispositivo não raiz
- O erro do Redis é
Failed opening .rdb for saving: Read-only file system
- Versão instalada 3.0.6 via
apt-get
- Lançado por
systemd
- Listagem de
/proc/15920/ns
(solicitada por @VenkatC):
lrwxrwxrwx 1 redis redis 0 Sep 16 05:39 cgroup -> cgroup:[4026531835]
lrwxrwxrwx 1 redis redis 0 Sep 15 18:03 ipc -> ipc:[4026531839]
lrwxrwxrwx 1 redis redis 0 Sep 15 18:03 mnt -> mnt:[4026532343]
lrwxrwxrwx 1 redis redis 0 Sep 15 18:03 net -> net:[4026531957]
lrwxrwxrwx 1 redis redis 0 Sep 15 18:03 pid -> pid:[4026531836]
lrwxrwxrwx 1 redis redis 0 Sep 15 18:03 user -> user:[4026531837]
lrwxrwxrwx 1 redis redis 0 Sep 15 18:03 uts -> uts:[4026531838]
-
apparmor_status | grep redis
não retorna nada (solicitado por @Gilles)
- Nada mais nos logs é mais informativo do que a saída strace.
Espaços de nomes de processo
Trabalhando o shell bash para o usuário redis
ls -l /proc/7359/ns/mnt
lrwxrwxrwx 1 redis redis 0 Sep 15 18:03 /proc/7359/ns/mnt -> mnt:[4026531840]
Não está funcionando processo de atualização
ls -l /proc/15920/ns/mnt
lrwxrwxrwx 1 redis redis 0 Sep 15 18:03 /proc/15920/ns/mnt -> mnt:[4026532343]
Trabalhando o shell bash para meu usuário
ls -atlrh /proc/7138/ns/mnt
lrwxrwxrwx 1 jeff jeff 0 Sep 15 18:03 /proc/7138/ns/mnt -> mnt:[4026531840]