Red Hat Training
A Red Hat training course is available for Red Hat Enterprise Linux
4.12. mount --bind и контекстные ссылки
GFS2 не поддерживает контекстные ссылки, использующие переменные для доступа к файлам и каталогам. Для реализации этой функциональности в GFS2 используется опция
bind
команды mount
.
Опция
bind
позволяет смонтировать часть файловой структуры в другой каталог, не удаляя при этом исходную точку монтирования. Формат команды:
mount --bind каталог1 каталог2
После этого содержимое первого каталога будет доступно в обоих каталогах. Аналогичным образом можно настроить отдельные файлы.
Пример монтирования
/var/log
в новый каталог /root/tmp
:
[root@menscryfa ~]#cd ~root
[root@menscryfa ~]#mkdir ./tmp
[root@menscryfa ~]#mount --bind /var/log /root/tmp
Аналогичного результата можно достичь, добавив запись в файл
/etc/fstab
:
/var/log /root/tmp none bind 0 0
Чтобы проверить наличие установленной связи, выполните:
[root@menscryfa ~]# mount | grep /tmp
/var/log on /root/tmp type none (rw,bind)
Рассмотрим еще один пример. Так, в файловых системах, поддерживающих использование контекстных ссылок,
/bin
можно связать с одним из следующих каталогов в зависимости от архитектуры:
/usr/i386-bin /usr/x86_64-bin /usr/ppc64-bin
Аналогичного результата можно достичь с помощью
mount -bind
. Создайте пустой каталог /bin
и подключите в него вышеперечисленные каталоги. Строка монтирования для первого каталога будет выглядеть так:
mount --bind /usr/i386-bin /bin
Соответствующая запись в
/etc/fstab
:
/usr/1386-bin /bin none bind 0 0
mount --bind
обеспечивает бóльшую гибкость по сравнению с контекстными ссылками, так как позволяет подключать каталоги в соответствии с пользовательскими критериями (например, используя значение %fill
для файловой системы). Однако для этого придется написать собственный сценарий.
Предупреждение
Если изначально файловая система была подключена в режиме
rw
, то при создании связи bind
она тоже будет подключена в режиме rw
(даже если вы явно укажете ro
). При этом в каталоге /proc/mounts
может быть неверно указан режим ro
.