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

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

Eu uso mount --bindpara "sobrepor" um arquivo de um ext4,rwsistema de arquivos em outro arquivo no ext4,rosistema de arquivos. Por exemplo, /etc/hostsestá em uma partição somente leitura /, mas tenho outra partição onde /rw/etc/hostsé gravável. Então, quando eu faço

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

qualquer gravação /etc/hostsirá 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 funcionar, CentOS 6.4repito as etapas acima, mas recebo um erro ao tentar escrever para ro/test:

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

SELinuxestá desabilitado. Alguma idéia do que poderia fazer com que isso parasse de funcionar?

Kernel CentOS 6.3: 2.6.32-279.22.1.el6.x86_64
Kernel CentOS 6.4: 2.6.32-358.el6.x86_64e2.6.32-358.2.1.el6.x86_64

Responder1

Alguma idéia do que poderia fazer com que isso parasse de funcionar?

Provavelmente um bug que foi introduzido no kernel junto com o suporte ao fsfreeze. eu abriBZ #951311para rastrear isso.

Responder2

# mount --bind rw/test ro/test
# echo 1 > rw/test

Você só pode montar diretórios.

Você não pode usar echo para escrever em um diretório.

Você provavelmente quer

# mount --bind rw ro

informação relacionada