arquivo ainda é somente leitura após uma montagem --bind de uma partição rw

3

Eu uso mount --bind para "sobrepor" um arquivo de um sistema de arquivos ext4,rw em outro arquivo em ext4,ro filesystem. Por exemplo, /etc/hosts está em uma partição / somente leitura, mas eu tenho outra partição em que /rw/etc/hosts é gravável. Então, quando eu faço

# mount --bind /rw/etc/hosts /etc/hosts

qualquer gravação em /etc/hosts irá para /rw/etc/hosts

Isso funcionou bem em CentOS 6.3 .
# mount -o ro /dev/sdc1 /ro
# mount -o rw /dev/sdc2 /rw
# mount --bind rw/test ro/test
# echo 1 > rw/test
# cat ro/test
1
# echo 2 > ro/test                    # [1]
# cat rw/test
2

Mas não consigo fazer isso funcionar em CentOS 6.4 , repito os passos acima, mas recebo um erro ao tentar gravar em ro/test :

# echo 2 > ro/test                    # [1]
-bash: ro/test: Read-only file system

SELinux está desativado. Alguma idéia do que poderia fazer com que isso parasse de funcionar?

Kernel do CentOS 6.3: 2.6.32-279.22.1.el6.x86_64
Kernel do CentOS 6.4: 2.6.32-358.el6.x86_64 e 2.6.32-358.2.1.el6.x86_64

    
por Ivan 12.04.2013 / 02:49

2 respostas

1

Any ideas what could cause this to stop working?

Provavelmente um bug que foi introduzido no kernel juntamente com suporte para fsfreeze. Eu abri BZ # 951311 para acompanhar isso.

    
por 12.04.2013 / 14:57
-2
# mount --bind rw/test ro/test
# echo 1 > rw/test

Você só pode montar diretórios.

Você não pode usar o eco para gravar em um diretório.

Você provavelmente quer

# mount --bind rw ro
    
por 12.04.2013 / 03:02