Средства синхронизации идентификаторов пользователей, выполняемые на стороне сервера
Средства синхронизации идентификаторов пользователей, выполняемые на стороне сервера
Предположим, что вы занимаетесь администрированием сети, состоящей из двух компьютеров. На каждом узле этой сети существуют учетные записи для пользователей, перечисленных в табл. 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 на стороне клиента создать файл сервер не сможет выбрать локальный идентификатор.
Как и в случае, когда синхронизация идентификаторов на клиентской машине и сервере производится вручную, имена пользователей на клиентском компьютере и на сервере могут различаться. В файле соответствия содержится исключительно информация об идентификаторах пользователей и групп; сведения об именах отсутствуют. Несмотря на то что подобная ситуация не мешает нормальной работе, желательно согласовать пользовательские имена на клиентских компьютерах и на сервере.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Глава 9 Средства синхронизации в ядре
Глава 9 Средства синхронизации в ядре В предыдущей главе обсуждались источники и решения проблем, связанных с конкуренцией за ресурсы. К счастью, в ядре Linux реализовано большое семейство средств синхронизации. В этой главе обсуждаются эти средства, интерфейсы к ним, а
Согласование идентификаторов пользователей на клиентском компьютере и на сервере
Согласование идентификаторов пользователей на клиентском компьютере и на сервере Самым простым решением описанной выше проблемы отображения пользовательских имен является синхронизация UID и GID на клиентской машине и на сервере. Например, если некоторому пользователю
Средства синхронизации идентификаторов пользователей, выполняемые на стороне клиента
Средства синхронизации идентификаторов пользователей, выполняемые на стороне клиента Решить проблему синхронизации пользовательских идентификаторов можно, задавая на стороне сервера опцию map_daemon. Эта опция позволяет использовать на стороне клиента специальный демон,
Указание LPRng-сервера на стороне клиента
Указание LPRng-сервера на стороне клиента Файл /etc/printcap в системе LPRng используется аналогично одноименному файлу в системе BSD LPD. В частности, опции lp, rm и rp, которые обсуждались выше в данной главе, применимы как в BSD LPD, так и в LPRng. Большинство других опций также может
Определение сервера CUPS на стороне клиента
Определение сервера CUPS на стороне клиента Для добавления принтеров к системе CUPS используется утилита lpadmin, вызываемая из командной строки или доступная посредством специального графического интерфейса. Кроме того, эта задача может решаться с помощью Web-броузера; для
Хранение писем на стороне клиента и на стороне сервера
Хранение писем на стороне клиента и на стороне сервера Как было сказано ранее, одна из функций сервера, реализующего протокол получения почты, состоит в том, чтобы хранить сообщения до тех пор, пока пользователь не обратится за ними. Когда клиент-программа обращается к
20.6 Имена идентификаторов объектов
20.6 Имена идентификаторов объектов На рис. 20.5 показаны наиболее важные части дерева SMI, которые применяются для присвоения управляющим переменным имен, называемых идентификаторами объектов (object identifiers). Рис. 20.5. Дерево именования объектов MIBИдентификаторы объектов
Настраиваем входящее соединение на стороне сервера
Настраиваем входящее соединение на стороне сервера Входящее соединение будем настраивать в операционной системе Windows XP, поскольку в Windows 2000 это сделать невозможно. Буквально по шагам это выглядит так:1. На рабочем столе компьютера щелкаем правой кнопкой мыши на ярлыке
3.6. Повторное использование идентификаторов
3.6. Повторное использование идентификаторов Структура ipc_perm (раздел 3.3) содержит переменную seq, в которой хранится порядковый номер канала. Эта переменная представляет собой счетчик, заводимый ядром для каждого объекта IPC в системе. При удалении объекта IPC номер канала
Настройка параметров лизинга на стороне сервера
Настройка параметров лизинга на стороне сервера Вы только видели, что переопределение метода InitializeLifetimeServices() MBR-типом позволяет изменить текущие параметры лизинга во время активизации типа. Но что делать, если удаленному типу нужно изменить параметры лизинга после
10.3.1. Набор символов и объединение на стороне сервера
10.3.1. Набор символов и объединение на стороне сервера Сервер MySQL имеет набор символов и объединение сервера. Они могут быть установлены при запуске и изменены во время выполнения.Первоначально, набор символов и объединение зависят от параметров, которые Вы используете,
Программирование на стороне сервера
Программирование на стороне сервера Среди мощных средств Firebird по динамическому программированию приложений клиент-сервер существует возможность компилировать на сервере исходные коды в двоичную форму для использования во время выполнения. Такие процедуры и функции
XSLT на стороне сервера
XSLT на стороне сервера Применение XSLT на стороне сервера (рис. 2.5) совершенно незаметно для клиента — он, как и раньше, в ответ на свой запрос получает HTML или документ в другом требуемом формате. В данном случае связка XML+XSLT является дополнительным звеном, дополнительным
1.6. Биты смены идентификаторов (SUID и SGID)
1.6. Биты смены идентификаторов (SUID и SGID) Биты SUID (Set User ID — установить идентификатор пользователя) и SGID (Set Group ID — установить идентификатор группы) были предметом жарких споров на протяжении многих лет. В некоторых системах установка этих битов не допускается либо они