Гид по технологиям

Изменение информации пользователя в Linux

5 min read Linux Обновлено 19 Dec 2025
Как изменить информацию пользователя в Linux
Как изменить информацию пользователя в Linux

TL;DR

usermod и chfn — стандартные утилиты для изменения имени пользователя, UID и отображаемого имени в Linux. Для переименования домашней папки используйте usermod с ключами -d и -m. Все команды требуют прав суперпользователя; после изменений проверьте владельцев файлов и службы, зависящие от учётных записей.

Изменение информации пользователя в Linux — иллюстрация для статьи

Linux — многопользовательская операционная система. С этой особенностью приходит обязанность управлять каждой учётной записью на системе: назначать права, следить за уникальностью UID и имён пользователя, поддерживать актуальность домашней папки и контактной информации.

Если нужно изменить данные конкретного пользователя, прямое редактирование /etc/passwd не рекомендуется — это рискованно и может привести к несовместимостям. Вместо этого используйте стандартную утилиту usermod и дополнительные инструменты (chfn, vipw, chown). В этой статье показано, как поменять имя пользователя, UID, домашнюю папку и отображаемое имя, плюс приведён чек‑лист, возможные ошибки, критерии приёмки и рекомендации по безопасности.

Изменение имени пользователя в Linux

Информация о пользователях хранится в /etc/passwd. Для изменения имени используйте usermod с флагом -l. Для выполнения команд вам нужны права root (через sudo или прямой вход под root).

Пример поменять имя makeuseof на muo:

sudo usermod -l muo makeuseof

Важно: ключ -l меняет только логическое (входное) имя пользователя в базе учётных записей; домашний каталог и файлы остаются с прежними путями и владельцами, если вы явно не попросите изменить их.

Важно:

  • Не выполняйте эти операции, если пользователь активно залогинен и выполняет процессы, связанные с его SID/UID: лучше работать из режима single-user или убедиться, что пользователь не в системе.

Переименование домашней папки

По умолчанию usermod не меняет путь домашней папки. Чтобы одновременно поменять имя пользователя и переместить домашнюю папку, используйте -d и -m:

sudo usermod -d /home/muo -m muo

Опции:

  • -d /home/newdir — установить новый путь домашней директории;
  • -m — переместить содержимое старой директории в новую.

После выполнения проверьте наличие новой папки и владельца:

ls -ld /home/muo
stat -c "%U %G" /home/muo

Если в системе есть ссылки, службы или crontab, указывающие на старый путь, обновите их.

Назначение нового UID пользователю

UID — это ненегативное целое число, идентифицирующее учётную запись. В большинстве дистрибутивов системные UID занимают диапазон 0–99 (или 0–999), а обычные пользователи получают UID, начиная примерно с 1000. (Проверяйте политику вашего дистрибутива.)

Чтобы сменить UID:

sudo usermod -u 1500 username

После изменения usermod обновит владельцев файлов в домашней директории для нового UID. Файлы вне /home не меняются автоматически; их можно поправить вручную:

sudo find / -user OLDUID -exec chown -h NEWUID {} +

Или по более безопасной схеме, сначала сопоставьте файлы с помощью -user OLDUID и затем изменяйте владельцев селективно.

Изменение отображаемого имени

В /etc/passwd хранится не только логин, но и так называемая «finger information» — отображаемое имя, телефон и т.д. Изменить отображаемое имя можно двумя способами.

С помощью usermod:

sudo usermod -c "Имя Фамилия" username

С помощью chfn (изменяет поля finger):

sudo chfn -f "Имя Фамилия" username

chfn позволяет редактировать отдельные поля: полное имя, рабочий телефон, домашний телефон и т.д.

Практические рекомендации по управлению учётными записями

  • Всегда создавайте резервную копию /etc/passwd, /etc/shadow и /etc/group перед массовыми изменениями.
  • Проверяйте, что пользователь не запущен (ps -u username) перед переименованием.
  • Для автоматизированных изменений используйте скрипты с подтверждением и логированием.
  • Обновляйте сопутствующие службы (LDAP, NFS, Samba, PAM), если они зависят от имён или UID.

Когда изменения могут не сработать

  • Если пользователь активно залогинен и имеет процессы, изменения имени могут привести к рассинхронизации процессов и записи логов.
  • Если система использует централизованную аутентификацию (LDAP, NIS), локальная команда usermod не изменит удалённую запись.
  • Если папки или файлы на NFS принадлежат по UID, а не по имени, нужно синхронизировать UID между серверами.

Альтернативы в случаях отказа:

  • Редактирование через vipw/vigr (безопасный редактор для /etc/passwd и /etc/group).
  • Удаление и повторное создание пользователя (userdel + useradd) с сохранением файлов — рискованно и требует миграции прав и файлов.

Чек‑лист администратора перед изменением

  1. Сделать бэкап: /etc/passwd, /etc/shadow, /etc/group.
  2. Убедиться, что пользователь не в системе: ps -u username или pkill -u username –dry-run.
  3. Заблокировать вход пользователя на время работ: sudo usermod -L username.
  4. Выполнить команду изменений (usermod / chfn).
  5. Переместить домашнюю папку и проверить права: ls -la /home/newdir.
  6. Исправить владельцев вне /home с помощью find + chown.
  7. Разблокировать учётную запись: sudo usermod -U username.
  8. Проверить службы, cron, sudoers, NFS, Samba.

Критерии приёмки

  • Новое имя пользователя отображается в /etc/passwd.
  • Домашняя папка существует в новом месте и принадлежит пользователю.
  • UID совпадает с ожидаемым: uid=$(id -u username).
  • Пользователь может войти и запускать свои задачи.
  • Нет сломанных записей в crontab, sudoers или сервисах, привязанных к старому имени.

Тесты и команды для проверки (acceptance)

getent passwd username
id username
ls -ld /home/username
sudo -u username whoami
sudo find / -uid NEWUID -print | head -n 20

Модель принятия решений (Mermaid)

flowchart TD
  A[Нужно изменить информацию пользователя?] --> B{Аутентификация централизована?}
  B -- Нет --> C[Использовать usermod/chfn локально]
  B -- Да --> D[Обновить запись в LDAP/NIS]
  C --> E{Нужно ли переименовать домашнюю папку?}
  E -- Да --> F[usermod -d /home/new -m]
  E -- Нет --> G[Просто usermod -l]
  D --> H[Синхронизация UID между серверами]

Риски и смягчающие меры

  • Риск: потеря доступа из-за ошибки в /etc/passwd. Смягчение: сохраняйте резервную копию и проверяйте изменения командой getent passwd.
  • Риск: расхождение UID на NFS/SMB. Смягчение: согласовать UID с администраторами других хостов или использовать совпадающую базу идентификаторов.
  • Риск: сервисы, привязанные к старому имени. Смягчение: сканировать конфиги и логи на упоминания имени и обновлять их.

Короткое руководство для типовой операции (SOP)

  1. Войти как root или через sudo.
  2. Сделать бэкап важных файлов конфигурации.
  3. Блокировать пользователя: sudo usermod -L username.
  4. Выполнить: sudo usermod -l newname -d /home/newname -m newname
  5. При необходимости изменить UID: sudo usermod -u NEWUID newname
  6. Проверить и исправить права для файлов вне /home.
  7. Разблокировать пользователя и попросить выполнить тестовый вход.

Однострочные определения (глоссарий)

  • usermod — утилита изменения учётной записи пользователя.
  • chfn — утилита для редактирования «finger» информации (полное имя, телефоны).
  • UID — числовой идентификатор пользователя.
  • /etc/passwd — файл с основной информацией о пользователях.

Замечания по безопасности и конфиденциальности

  • Храните журналы изменений и доступ к командами управления учётными записями под контролем (auditd, sudo log).
  • Не публикуйте реальную личную контактную информацию без согласия владельца учётной записи.
  • При централизованной аутентификации в корпоративной среде изменения должны проходить через утверждённые процессы и аудит.

Краткое резюме

  • Используйте usermod для изменения имени и UID; добавьте -d -m для переезда домашней папки.
  • chfn удобен для редактирования отображаемого имени и контактных полей.
  • Всегда выполняйте резервное копирование и проверяйте владельцев файлов после изменений.

Важно: перед массовыми изменениями тестируйте процедуру на отдельной тестовой системе.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Как настроить фон Backdrop на Chromecast и Android TV
How-to

Как настроить фон Backdrop на Chromecast и Android TV

Write or Die — обзор и режимы
Продуктивность

Write or Die — обзор и режимы

Отключение уведомления Cast на Android
Android.

Отключение уведомления Cast на Android

Kodi на Steam Link — установка и советы
Руководство

Kodi на Steam Link — установка и советы

Как выбрать VPN для торрентов
Безопасность

Как выбрать VPN для торрентов

Как бесплатно посмотреть Супербоул 2023
Спорт

Как бесплатно посмотреть Супербоул 2023