Предположим, что вы занимаетесь администрированием сети, состоящей из двух компьютеров. На каждом узле этой сети существуют учетные записи для пользователей, перечисленных в табл. 8.1. В данном примере компьютер gingko
выполняет функции сервера, а компьютер larch
выступает в роли клиента. Только у одного из пользователей (james
) идентификаторы на обоих компьютерах совпадают. Чтобы пользователь james
мог обращаться к своим собственным файлам, никакие специальные меры не требуются. Работая на компьютере larch
, alyson
обнаружит, что его файлы, хранящиеся на gingko
, принадлежат пользователю, идентифицировать которого невозможно (UID, равный 500, на компьютере larch
отсутствует). Что касается остальных двух пользователей, Jennie
и samuel
, система сообщит, что каждый из них является владельцем файлов, принадлежащих на самом деле другому.
Один из способов решения проблемы синхронизации пользовательских идентификаторов состоит в следующем. На сервере NFS создается файл соответствия идентификаторов, содержащий информацию, подобную приведенной в табл 8.1. О наличии этого файла сервер оповещается посредством опции map_static
; в качестве значения опции задается имя файла соответствия идентификаторов. В файл /etc/exports
включается запись, которая может выглядеть следующим образом:
/home larch(rw,map_static=/etc/nfs/larch-map)
Таблица 8.1. Идентификаторы пользователей на двух компьютерах
Пользователь | UID на gingko | UID на larch |
---|---|---|
alyson | 500 | 504 |
james | 501 | 501 |
Jennie | 502 | 503 |
samuel | 503 | 502 |
Эта запись сообщает системе о том, что, предоставляя каталог /home
пользователю larch
, надо использовать файл соответствия идентификаторов с именем /etc/nfs/larch-map
. Поскольку опция map_static
входит в состав списка опций для конкретного клиента, вы можете назначать разным клиентам различные файлы соответствия. Пример содержимого файла larch-map
показан в листинге 8.2. Строки, в начале которых находится символ #
, содержат комментарии. Строки, начинающиеся с uid
, представляют информацию о соответствии пользовательских идентификаторов, а строки, в начале которых расположено ключевое слово gid
, содержат сведения о соответствии идентификаторов групп. Первое из числовых значений (или диапазон значений) в строке представляет идентификатор на клиентской машине. Второе числовое значение соответствует идентификатору, в который должен отображаться UID или GID, полученный на удаленном компьютере. Например, из листинга 8.2 видно, что UID 504 на клиентском компьютере отображается в UID 500 на сервере. Если вместо идентификатора на сервере указан символ -
, обращение данного пользователя или члена группы к серверу NFS запрещен. Такое обращение интерпретируется как попытка доступа анонимного пользователя.
Листинг 8.2. Пример содержимого файла соответствия идентификаторов
# Отображение идентификаторов для клиента larch
# удаленный локальный
uid 0-99 - # доступ запрещен
uid 504 500
uid 501 501
uid 503 502
uid 502 503
gid 0-99 - # доступ запрещен
gid 100-102 100
В файле соответствия необходимо задать идентификаторы всех пользователей. Например, в листинге 8.2 указан UID 501, который отображается в тот же идентификатор на сервере. Отсутствующий UID приведет к некорректному отображению, что, в свою очередь, станет источником проблем. В листинге 8.2 явным образом указано, что попытки обращения с системных UID (с номерами меньше 100) должны отвергаться. Аналогичное правило задано для идентификаторов групп 0-99. GID 100-102 отображаются в GUID 100. Несмотря на то что вы можете отобразить диапазон клиентских идентификаторов в единственный идентификатор на сервере, обратное действие не имеет смысла. При попытке пользователя с определенным UID на стороне клиента создать файл сервер не сможет выбрать локальный идентификатор.
Как и в случае, когда синхронизация идентификаторов на клиентской машине и сервере производится вручную, имена пользователей на клиентском компьютере и на сервере могут различаться. В файле соответствия содержится исключительно информация об идентификаторах пользователей и групп; сведения об именах отсутствуют. Несмотря на то что подобная ситуация не мешает нормальной работе, желательно согласовать пользовательские имена на клиентских компьютерах и на сервере.
Средства синхронизации идентификаторов пользователей, выполняемые на стороне клиента
Вильям Л Саймон , Вильям Саймон , Наталья Владимировна Макеева , Нора Робертс , Юрий Викторович Щербатых
Зарубежная компьютерная, околокомпьютерная литература / ОС и Сети, интернет / Короткие любовные романы / Психология / Прочая справочная литература / Образование и наука / Книги по IT / Словари и Энциклопедии