В Linux. 2 Приобретение и инсталляция Linux. 3 Учебник по Linux 4 Администрирование системы. 5 The X window System. 6 Работа в сети

Вид материалаУчебник

Содержание


4.6.2 Добавление пользователей.
4.6.3 Удаление пользователей.
4.6.4 Настройка атрибутов пользователя.
Подобный материал:
1   ...   50   51   52   53   54   55   56   57   ...   73

4.6.2 Добавление пользователей.


При добавлении пользователя следует совершить несколько шагов. Пользователь должен быть занесен в файл паролей /etc/passwd под уникальным именем и идентификатором. Должны быть описаны идентификатор группы (GID), полное имя и другая информация. Должен быть создан домашний каталог пользователя и установлены необходимые права доступа. Домашний каталог должен быть снабжен необходимыми файлами инициализации shell. Должны быть выполнены и другие работы по конфигурации ( например, создан spool для входной почты).

Хотя очень несложно добавлять пользователей вручную (я так делаю), когда вы сопровождаете систему со многими пользователями, легко что-то упустить. Самый простой способ регистрации пользователей, это использование диалоговой программы, которая задаст вам все необходимые вопросы и автоматически скорректирует все необходимые системные файлы. Эта программа называется useradd или adduser, в зависимости от вашего дистрибутива. Страницы руководства для этих программ должны быть достаточно понятными. adduser использует в своей работе файл настроек /etc/adduser.conf, который задает настройки по умолчанию для нового пользователя системы.

Вот пример обычного файла /etc/adduser.conf:


# /etc/adduser.conf 'adduser' configuration

# See adduser (8) and adduser.conf(5) for full documentation

# The DSHELL variable specifies the default login shell on your

# system

DSHELL=/bin/bash


# The DHOME variable specifies the directory containing users' home

DHOME= home


# If GROUPHOMES is "yes". then the home directories will be created as

# /home/groupname/user

GROUP HOMES=no


# If LETTERHOMES is "yes", then the created home directories will have

# an extra directory - the first letter of the user name. For example'

# home u user

LETTERHOMES=no


# The SKEL variable specifies the directory containing "skeletal" user

# files; in other words, files such as a sample profile that will be

# copied to the new user's home directory when it is created

SKEL=/etc/shel


# FIRST_SYSTEM_UID to LAST_SYSTEM_UID inclusive is the range for UIDs

# for dynamically allocated administration and system accounts

FIRST_SYSTEM_UID=100

LAST_SYSTEM_UID=999


# FIRST_UID to LAST_UID inclusive is the range of UIDs of dynamically

# allocated user accounts

FIRST_UID=1000

LAST_UID=29999


# The USERGROUPS variable can be either "yes" or "no" If "yes" each

# created user will be given their own group to use as a default, and

# their home directories will be g+s If "no", each created user will

# be placed in the group whose gid is USERS_GID (see below).

USERGROUPS=yes


# If USERGROUPS is "no", then USERS_GID should be the GID of the group

# 'users' (or the equivalent group) on your system

USERS_GID=100


В дополнение к предустановленным переменным, которые нужны команде adduser, /etc/adduser.conf определяет где по умолчанию лежат системные файлы настроек для каждого пользователя. В данном примере они лежат в каталоге /etc/skel, как определено в переменной SKEL=. Файлы в данном в каталоге, являются настройками системы по умолчанию для каждого пользователя. Это, например, .profile, .tcshrc или .bashrc, которые автоматически копируются в домашний каталог нового пользователя командой adduser. Если Вы считаете нужным разместить в домашнем каталоге каждого нового пользователя еще какие-то файлы настроек (например, для иксов), положите их в каталог /etc/skel.

4.6.3 Удаление пользователей.


Удаление пользователей может быть выполнено с помощью команд userdel или deluser в зависимости от каждого конкретного дистрибутива.

Если вы пожелаете временно "отключить" пользователя от системы, (без удаления его аккаунта), вы можете просто приписать звездочку (``*'') в поле пароля в файле пароля /etc/passwd. Например, изменение пароля у kiwi в файле /etc/passwd:


kiwi:*Xv80981g71oKK:102:100:Laura Poole:/home/kiwi:/bin/bash


закроет для kiwi вход в систему.

4.6.4 Настройка атрибутов пользователя.


После создания пользователя вам может потребоваться изменить его атрибуты, такие как домашний каталог и пароль. Простейший способ, это прямо изменить значения в /etc/passwd. Чтобы установить пароль пользователя используйте команду passwd:


# passwd larry


сменит пароль для larry. Только root может менять пароли других пользователей. Обычный пользователь может сменить только свой пароль.

В некоторых системах имеются команды chfn и chsh, позволяющие пользователю самому устанавливать свое полное имя и исходные атрибуты shell. Если таких команд нет, то пользователи должны просить системного администратора изменить эти атрибуты для них.

4.6.5 Группы.


 

Как мы говорили, каждый пользователь принадлежит к одной или более группам. Единственное значение группы замыкается на права доступа к файлу, как вы помните из раздела 3.10. Каждый файл имеет "групповое владение" (``group ownership''), то есть хранит права доступа, которые определяют, как члены группы могут обращаться с файлом.

Существует несколько групп, определяемых системой, вроде bin, mail и sys. Пользователи не могут принадлежать к какой-либо из этих групп. Эти группы используются для системных файлов. А пользователи, наоборот, принадлежат к специальной группе, например users. Если вам хочется больше проблем, вы можете поддерживать несколько групп пользователей, например student, staff и faculty.

Файл /etc/group содержит информацию о группах. Формат каждой строки следующий:


group name:password:GID:other members


Примерами групп могут быть:


root:*:0

users:*:100:mdw,larry

guest:*:200

other:*:250:kiwi


Первая группа, root, специальная системная группа зарезервированная для root. Следующая группа, users, для обычных пользователей. Она имеет идентификатор группы (GID) 100. К этой группе имеют доступ пользователи mdw и larry. Помните, что в /etc/passwd каждый пользователь получил выдаваемый по умолчанию GID. Но пользователь может принадлежать более, чем к одной группе, путем добавления имен пользователей в другие группы (в строки файла /etc/group). Команда groups перечисляет, в какие группы вы входите.

Третья группа, guest, для гостей, а other для "других" пользователей. Пользователь kiwi имеет доступ и в эту группу.

Как вы можете видеть, поле "пароль" в /etc/group редко используется. Иногда оно используется для установления пароля на доступ к группе. Это редко бывает нужно. Для защиты привилегированных групп от обычных пользователей (с помощью команды newgroup) установите в поле пароля звездочку ("*").

Команды addgroup или groupadd могут быть использованы для добавления групп в вашу систему. Обычно легче просто самому добавить запись в /etc/group, поскольку не требуется других настроек при добавлении группы. Для удаления группы просто удалите соответствующую запись в /etc/group.