내 아치 리눅스 시스템 (Linux Kernel 3.14.2)에서 바인드 마운트는 읽기 전용 옵션을 존중하지 않습니다
# mkdir test
# mount --bind -o ro test/ /mnt
# touch /mnt/foo
파일을 만듭니다 /mnt/foo
. 관련 항목 /proc/mounts
은
/dev/sda2 /mnt ext4 rw,noatime,data=ordered 0 0
마운트 옵션이 요청한 옵션과 일치하지 않지만 바인드 마운트의 읽기 / 쓰기 동작과 원래 마운트 /dev/sda2
하는 데 사용 된 옵션은 모두 일치합니다/
/dev/sda2 / ext4 rw,noatime,data=ordered 0 0
그러나 마운트를 다시 마운트하면 읽기 전용 옵션을 따릅니다.
# mount --bind -o remount,ro test/ /mnt
# touch /mnt/bar
touch: cannot touch ‘/mnt/bar’: Read-only file system
및 관련 항목 /proc/mounts/
/dev/sda2 /mnt ext4 ro,relatime,data=ordered 0 0
내가 기대할 수있는 것처럼 보입니다 (실제로 test
디렉토리 의 전체 경로를 볼 것으로 기대하지만 ). on /proc/mounts/
의 orignal 마운트 에 대한 입력 도 변경되지 않으며 읽기 / 쓰기로 유지됩니다./dev/sda2/
/
/dev/sda2 / ext4 rw,noatime,data=ordered 0 0
이 동작과 해결 방법은 2008 년 이후로 알려져 있으며 설명서 페이지에 설명되어 있습니다.mount
파일 시스템 마운트 옵션은 원래 마운트 포인트의 옵션과 동일하게 유지되며, -bind /-rbind와 함께 -o 옵션을 전달하여 변경할 수 없습니다. 별도의 재 장착 명령으로 마운트 옵션을 변경할 수 있습니다
모든 배포판이 동일하게 작동하는 것은 아닙니다. 바인드 마운트가 읽기 전용 마운트를 얻지 못할 때 데비안이 경고를 생성하는 동안 아치는 옵션을 무시하지 않는 것 같습니다
mount: warning: /mnt seems to be mounted read-write.
이 문제는 데비안 레니와 스퀴즈 에서 "고정"되었다는보고가 있지만, 일반적인 수정은 아니지만 데비안 위지에서는 여전히 작동하지 않습니다. 초기 마운트에서 바인드 마운트가 읽기 전용 옵션을 존중하도록하는 것과 어려운 점은 무엇입니까?
mount -t bind
과에서 도우미 스크립트 bugs.launchpad.net/ubuntu/+source/mountall/+bug/519380을
/etc/mtab
. 초기 마운트 후 항목은 마운트가 rw라고 표시하고 다시 마운트 한 후에는 ro를 표시하므로 마운트 상태를 올바르게보고합니다. 실패한 마운트 명령 일뿐입니다.
mount --bind -o ro
메시지 출력, 둘 다 침 mount: warning: «mountpoint» seems to be mounted read-write.
이 데비안 떨어 뜨리거나 어떤 점에서 패치를 잃은 것 같다 그래서 ... 다시 마운트를 그래도 작동합니다.