файл по-прежнему доступен только для чтения после монтирования --bind из раздела rw

файл по-прежнему доступен только для чтения после монтирования --bind из раздела rw

Я использую mount --bindдля "наложения" файла из одной ext4,rwфайловой системы на другой файл в ext4,roфайловой системе. Например, /etc/hostsнаходится на разделе только для чтения /, но у меня есть другой раздел, на котором /rw/etc/hostsможно записывать. Поэтому, когда я делаю

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

любые записи /etc/hostsбудут отправлены/rw/etc/hosts


Это отлично сработало в 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

Но я не могу заставить это работать. CentOS 6.4Я повторяю шаги, описанные выше, но получаю ошибку при попытке записи в ro/test:

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

SELinuxотключено. Есть идеи, что может заставить это перестать работать?

Ядро CentOS 6.3: 2.6.32-279.22.1.el6.x86_64
Ядро CentOS 6.4: 2.6.32-358.el6.x86_64и2.6.32-358.2.1.el6.x86_64

решение1

Есть идеи, что может привести к тому, что это перестанет работать?

Вероятно, ошибка, которая была введена в ядро ​​вместе с поддержкой fsfreeze. Я открылБЗ № 951311чтобы отслеживать это.

решение2

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

Вы можете монтировать только каталоги.

Вы не можете использовать echo для записи в каталог.

Вы, вероятно, хотите

# mount --bind rw ro

Связанный контент