В течение долгого времени после введения bind mounts ядро связывало опции монтирования с устройствами, а не с точками монтирования, конец истории. Когда вы запустили mount --bind
, ядро молча проигнорировало все параметры, поскольку их нельзя было применить только к bind mount.
Начиная с ядра 2.6.26 (или более ранних версий для дистрибутивов, которые исправили вышестоящее ядро), bind mounts имеют статус только для чтения, который отделен от исходного монтирования. Так что только для чтения привязные крепления работают. Однако поддержка не идеальна, например, ядро все еще игнорирует параметры, переданные для mount --bind
. Вы можете сделать привязку только для чтения, сделав привязку и установив ее только для чтения. Это создает проблему безопасности в некоторых сценариях (есть небольшое окно времени, в течение которого монтируется связывание).
Debian lenny имеет исправленное ядро 2.6.26, которое заставляет mount --bind -r
создавать монтируемое монтирование только для чтения. Ubuntu 10.04 не включает этот патч.
Файловая система fuse bindfs
обобщает эффект mount --bind
. Он поддерживает монтирование привязки только для чтения и множество других изменений прав и владельцев. Однако он не полностью эквивалентен mount --bind
. Например, чтение из монтируемого только для чтения монтирования никогда не обновляет время доступа к файлу, но может для bindfs -p a-w
fuse.