привязать монтаж только для чтения, используя fstab на Ubuntu?

Наличие устройства, указанное несколько раз, совершенно нормально, это означает, что вы дважды вошли в систему. Если вы хотите, вы можете удалить «дополнительное» устройство с веб-сайта Ubuntu One.

8
задан 11 May 2012 в 18:49

2 ответа

В старых ядрах mount --bind не может создать просмотр только для чтения файловой системы чтения-записи. Ядро хранит состояние чтения и записи файловой системы в одном месте, которое не дублируется привязкой привязки. Более новые ядра допускают это, но требуют отдельного шага mount: сначала привязать, а затем сделать доступным только для чтения. Для этого есть патч ядра, и некоторые дистрибутивы (такие как Debian) применили его, но Ubuntu не имеет (по крайней мере, не 12.04).

Одно из решений - только вид из сценария загрузки вместо /etc/fstab, как объясняет Оли.

В противном случае вы можете использовать . Оли объясняет . Это файловая система FUSE. Переход через FUSE немного медленнее, поскольку он вводит дополнительный слой косвенности. Вы также теряете поддержку расширенных метаданных файлов, таких как ACL. С другой стороны, просмотр только для чтения будет иметь узнаваемый тип файловой системы, что упростит исключение из обходов файловой системы (например, locate и резервных копий).

Запись fstab выглядит так: :

bindfs#/src  /dst  fuse perms=a=rX
6
ответ дан 25 May 2018 в 11:34

Согласно этой статье LWN, это поведение прорывается в ядро ​​вокруг версии 2.6.25. Короче, если целевая файловая система rw, привязка чего-то сверху не может преобразовать ее в ro.

В 2.6.26 они частично фиксировали вещи, чтобы вы могли запускать перезагрузку (поскольку вы, (d2)

Вот что я пытался в fstab:

/home/oli/Desktop/testmount  /mnt none bind,ro

После запуска mount -a, /mnt смонтирован, но я все еще могу создавать файлы. После того, как он был выключен sudo mount -o remount /mnt, он стал доступен только для чтения.

Итак, я думаю, что самый чистый метод - либо иметь строку в /etc/rc.local, либо написать суперпростой сценарий Upstart, который начинается с mountall (так это происходит сразу).

6
ответ дан 25 May 2018 в 11:34
  • 1
    Я также читал, что mount --bind не может изменить опции mount (это также говорит об этом на странице man для mount). Странно то, что перечисленные мной решения (по другим источникам) работают, например, Fedora (1-е решение). Спасибо, за идею, используя upstart. (Кстати, я думаю, что 2-й «rw» в вашей первой строке должен был быть «ro».) – mgd 11 May 2012 в 19:40

Другие вопросы по тегам:

Похожие вопросы: