Linux -сборник рецептов


Решение


Воспользуйтесь командами usermod и chfn.

Изменять можно любые атрибуты, включая имя пользователя и код UID. Чтобы сменить имя, сначала укажите новое имя, а затем старое:

# usermod -l aborg anitab

Следующая команда изменяет UID (в следующем примере исходное значение 1050 меняется на 1200) без изменения имени пользователя. Сначала указывается новый код UID, затем имя:

# usermod -u 1200 anitab

Принадлежность пользователя к группам не изменяется. Все файлы в домашнем каталоге пользователя автоматически обновляются новым кодом UID. Тем не менее вам придется вручную найти и изменить все файлы за пределами домашнего каталога (crontab, почтовые каталоги, временные файлы /tmp и файлы в общих каталогах). Для поиска файлов можно воспользоваться командой find с указанием исходного кода UID, если вы хотите просмотреть список файлов перед внесением изменений:

# find / -uid 1050 /usr/src/include/lber.h /usr/src/include/ldap.h /usr/src/include/ldbm.h

Смена владельца файлов осуществляется командой chown:

# chown 1200 /usr/scr/include/lber.h

Последовательная смена владельца для каждого файла — занятие довольно утомительное. Команды chown и find могут выполнить эту работу за вас:

# find / -uid 1050 -exec chown -v 1200 {} \; changed owner of '/usr/src/include/lber.h' to 1200 changed owner of '/usr/src/include/ldap.h' to 1200 changed owner of '/usr/src/include/ldbm.h' to 1200

Следующая команда перемещает домашний каталог пользователя со всем содержимым. Если новый каталог не существует, он автоматически создается. Сначала указывается новый каталог, а затем имя пользователя. Обязательно используйте флаги -d и -m:

# usermod -d /server1/home/aborg/ -m aborg

Изменение данных GECOS:

# chfn aborg

Пользователь может передать при вызове chfn данные GECOS по своему усмотрению. Исключение составляют два поля: полное имя и «прочее». Содержимое этих полей может редактироваться только суперпользователем.









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