Библиотека сайта rus-linux.net
Монтирование тома NFS
#
|
Параметр nfs_volume
имеет вид
remote_host:remote_dir
. Он указаывает
определенную файловую систему NFS, причем можно опустить параметр
-t nfs
.
Имеется ряд дополнительных опций, которые Вы можете определить
в команде mount. Они могут быть заданы переключателем
-o
в командной строке или в области опций файла
/etc/fstab
. В обоих случаях составные опции
отделяются друг от друга запятыми. Опции, определенные в командной строке,
всегда отменяют те, что были заданы в файле fstab
.
/etc/fstab
могла бы быть такой:
# volume mount point type options news:/var/spool/news /var/spool/news nfs timeo=14,intr |
#
|
fstab
, NFS устанавливает
большинство параметров mount по умолчанию. Например,
предположим, что Вы монтируете home-каталоги Ваших пользователей с машины
moonshot, которая использует заданный по
умолчанию размер блока, равный 4k, для операции чтения-записи. Вы могли бы
уменьшить размер блока до 2k, чтобы подойти под размер Linux-пакетов, введя
следующую команду:
# |
Список всех допустимых опций есть на man-странице по
nfs(5)
. Ниже приведен список наиболее популярных опций:
- rsize=n и wsize=n
Точно определяют размер пакетов, используемый NFS-клиентами при чтении и записи запросов, соответственно. В настоящее время они определены по умолчанию в зависимости от версии ядра, но обычно это 1024 байта, из-за предела на размер UDP-пакета.
- timeo=n
Устанавливает время (в десятых долях секунды), которое NFS-клиент будет ждать запрос, чтобы завершить работу. Значение по умолчанию 7 (0.7 секунды). Что произойдет после окончания времени ожидания зависит от того, используете Вы опцию hard или soft.
- hard
Отмечает этот том как hard-смонтированный. Задано по умолчанию. Эта опция предписывает серверу выдать сообщение на консоль при окончании времени ожидания и продолжать попытки смонтировать том.
- soft
Противоположность hard. В случае окончания времени ожидания процесс, который пытается выполнить действие с файловой системой, получит ошибку ввода-вывода.
- intr
Разрешает прервать обращение к NFS. Удобно в случае недоступности сервера.
Кроме rsize и wsize, все эти опции обращаются к клиенту, если сервер стал временно недостижим. Они работают вместе следующим способом: всякий раз, когда клиент посылает запрос к NFS-серверу, он ожидает, что операция закончится после заданного интервала времени (точно установленного в опции блокировки по времени, timeout). Если никакого подтверждения не получено в этот промежуток времени, то появится так называемая незначительная остановка по времени (minor timeout), и операция повторится, но уже с интервалом блокировки по времени вдвое большим. После достижения максимальной блокировки по времени (60 секунд), происходит глобальная блокировка по времени (major timeout). Вот тут-то и срабатывают опции hard или soft .
По умолчанию, глобальная блокировка по времени заставит клиента напечатать
сообщение на консоль и начать все снова. В принципе это может продолжаться
вечно. Значения, которые упрямо повторяют операцию до тех пор, пока сервер не
становится доступным, называются hard-mounted. В
противоположность им значения soft-mounted генерируют
ошибку ввода-вывода для процесса всякий раз, когда происходит глобальная
блокировка по времени. Из-за того, что write-behind вводится буферным кэшем,
это условие ошибки не распространяется непосредственно на процесс прежде, чем
он вызовет функцию write
в следующий раз. Дело в
том, что иначе программа никогда не сможет убедиться в том, что операция
записи в ресурс, помеченный как soft-mounted, имела место вообще.
Поставили ли Вы hard или soft-mount значение, это не только вопрос вкуса, но также и то, что Вы должны сделать с той информацией, которую хотите получить от этого значения. Например, если Вы монтируете Ваши Х-программы NFS, Вы конечно не хотели бы, чтобы ваш X-сеанс рухнул только потому, что кто-то свалил сеть, запустив семь копий xv в одно и тоже время, или скажем, вытащив Ethernet-разъем. Используя hard-mounting, Вы удостоверитесь в том, что компьютер будет ждать, пока не появится возможность заново восстановить контакт с nfs-сервером. С другой стороны, некритические данные типа новостей или FTP-архив могут быть soft-mounted, так что это не повесит сеанс в случае, если удаленная машина должна стать временно недосягаемой или просто выключенной. Если сетевая связь с сервером медленная или проходит через программу маршрутизации, то Вы можете также увеличить начальную блокировку по времени, используя опцию timeo или значение hard-mount, но разрешите прерывание вызова NFS, так чтобы Вы могли прервать любое действие с файлами.
Hard-mount представляют проблему, потому что, по умолчанию, операции с файлами не прерываются. Таким образом, если процесс пытается, например, записать файл на удаленной машине, а она недоступна, программа пользователя висит, а пользователь бегает вокруг нее, не в состоянии прервать процесс записи. Если Вы используете опцию intr при hard mount, сигналы процессу прервут NFS-вызов, так что пользователь все же сможет продолжать работу.
# |
Назад | Глобальное оглавление | Вперед |
Сетевая файловая система (NFS) | Локальное оглавление | NFS Daemons |