Perl для системного администрирования


Информация о пользователях в Unix - часть 3


open(PW,$passwd) or die "Невозможно открыть $passwd:$!\n";

while (<PW>){

@fields = splitC/:/);

Shighestuid = (Shighestuid < $fields[2]) ? $fields[2] : $highestuid:

}

close(PW);

print "Следующий доступный идентификатор: " . ++$highestuid . "\n";

Ниже перечислены другие полезные функции и переменные, имеющие отношение к именам и идентификаторам пользователей (табл. 3.1).

Таблица 3.1. Переменные и функции, имеющие отношение к именам и идентификаторам пользователей

Функция/ Переменная

Использование

getpwnam($name)

В скалярном контексте возвращает идентификатор, соответствующий этому регистрационному имени; в списочном контексте возвращает все поля данной записи из файла паролей

getpwuid(Suid)

В скалярном контексте возвращает регистрационное имя, соответствующее данному идентификатору; в списочном контексте возвращает все поля данной записи из файла паролей

$>

Соответствует эффективному идентификатору пользователя текущей выполняющейся программы на Perl

$<

Соответствует реальному идентификатору пользователя текущей выполняющейся программы на Perl

Идентификатор первичной группы (GID)

В многопользовательских системах пользователи их группы часто работают с файлами и другими ресурсами совместно. В Unix существует механизм, позволяющий работать с группами пользователей. Учетная запись в системе может входить в несколько групп, но при этом принадлежать она должна только одной главной группе

(primary group). Поле GID в файле паролей соответствует как раз первичной группе для данной учетной записи.

Имена групп, их идентификаторы и члены группы обычно перечислены в файле /etc/group. Чтобы включить учетную запись в несколько групп, необходимо просто указать ее в нескольких местах данного файла. В некоторых операционных системах существует жесткое ограничение на число групп, которым может принадлежать учетная запись (а значит, и пользователь). Чаще всего ограничение равно 8. Вот пример пары строк из файла /etc/group:




- Начало -  - Назад -  - Вперед -



Книжный магазин