• задание исходного пароля для нового пользователя;
• создание для него домашнего каталога;
• копирование в этот каталог стандартных вариантов файлов запуска;
• установка адреса электронной почты и почтовых псевдонимов;
• включение пользователя в необходимые группы;
• установка квот и ограничений.
Конечно, можно все эти этапы выполнять и вручную, но все же проще и удобнее воспользоваться имеющимися в системе специальными программными средствами. Как уже было описано в гл. 3, заводить в системе нового пользователя удобнее всего командой useradd. Однако перед тем, как заводить пользователя, надо подготовить типовые файлы конфигурации, которые используются при вводе новых пользователей, и располагаются в каталоге /etc/skel. Один полезный совет: не заводите много новых пользователей, пока вы не настроили конфигурационные файлы и не поместили образцы в /etc/skel/*. И сразу после того, как вы отредактировали какой-то конфигурационный файл, скопируйте его в /etc/skel/.
Команда useradd заводит бюджет нового пользователя, создает для него домашний каталог, копирует в него файлы конфигурации из каталога /etc/skel. В качестве аргумента команде должно быть указано имя пользователя, которое потом будет использоваться им для входа в систему. Кроме того, с помощью дополнительных опций можно задать:
• данные о пользователе (имя и т.д.), записываемые в поле комментария в файле /etc/passwd (опция -c);
• имя или номер группы, к которой будет отнесен пользователь (опция -g);
• список групп, в которые будет включен данный пользователь (опция -G);
• UID пользователя, назначаемый вместо UID, задаваемого системой (опция -u);
• какая оболочка назначается пользователю (опция -s) и еще некоторые параметры.
С помощью опции -D можно изменять значения параметров, которые назначаются вновь создаваемому пользователю. Однако рассматривать эти возможности мы здесь не будем.
После ввода нового пользователя надо задать ему первоначальный пароль, что делается командой passwd login_name. После первого входа в систему пользователь должен будет поменять свой пароль с помощью той же команды (только login_name указывать ему не требуется).
Команда usermod имеет те же опции, что и useradd, только используется для изменения параметров существующего пользователя, причем на момент применения этой команды суперпользователем данный пользователь не должен быть логирован в системе.
Каждый пользователь может быть включен в произвольное число групп. Включение пользователя в различные группы может быть осуществлено путем ‘ручного’ редактирования файла /etc/group суперпользователем, а может быть выполнено с помощью команд groupadd и groupmod.
В процессе работы пользователь может сменить имя, с которым он вошел в систему (поработать в системе от имени другого пользователя). Как уже говорилось, для этого используется команда su. В качестве аргумента команде в простейшем случае передается имя или идентификатор пользователя, под которым мы хотим работать в системе. При этом, если перед именем пользователя стоит дефис, то для пользователя открывается новая сессия (происходит как бы ‘перелогирование’), а если дефиса нет, то изменяется только имя пользователя, а окружение (например, текущий каталог) не изменяется [18]. В любом случае выводится запрос на ввод пароля того пользователя, под чьим именем мы хотим дальше работать.
Команда su чаще всего используется для того, чтобы временно получить доступ к системе с правами суперпользователя. Параметр в этом случае указывать не требуется[19] .
После того, как вы поработали под чужим именем, достаточно выполнить команду exit, чтобы вернуть себе свое обычное имя.
Команда sg аналогична команде su, но используется для смены группы. Доступ предоставляется в том случае, если пользователь является членом указанной группы. В результате выполнения этой команды все вновь созданные файлы и запускаемые процессы получат новый идентификатор группы.
На этом мы ограничим рассуждения о процедурах управления пользователями, поскольку, как уже говорилось, вопросы эти не очень актуальны для персонального компьютера. Единственное, что можно еще добавить, – это то, что существуют два файла, с помощью которых можно передавать ‘приветы’ пользователям в процессе их логирования. Это файлы:
• /etc/issue – сообщение, выдаваемое системой до приглашения ‘login:’;
• /etc/motd – сообщение, выдаваемое системой после входа пользователя в систему.