Как переименовать пользователя безопасно?

Я неправильно указал имя пользователя при установке Ubuntu и хотел бы переименовать, если это возможно. Как мне безопасно сменить имя пользователя?

7
задан 1 August 2014 в 17:22

3 ответа

Используйте usermod примерно так:

usermod -l newname currentname
0
ответ дан 1 August 2014 в 17:22

безопасно? Не переименовывать вообще. Вместо этого (сначала убедитесь, что пользователь вышел из системы) создайте нового пользователя с правильным именем пользователя, переименуйте старый домашний каталог в новое имя пользователя и выберите -R папку для нового пользователя.

Это предполагает, что вы не используете зашифрованные дома. Это потребует некоторых других шагов, но так как я сам этого не сделал, я оставлю это кому-то другому.

0
ответ дан 1 August 2014 в 17:22

Я имею, недавно стоит перед такой проблемой и получил рабочее решение.

  1. Сделайте резервное копирование пользователей - и связанные с группами файлы

    sudo cp /etc/passwd ~/passwd.bak
    sudo cp /etc/group ~/group.bak
    sudo cp /etc/subuid ~/subuid.bak
    sudo cp /etc/subgid ~/subgid.bak
    sudo cp /etc/gshadow ~/gshadow.bak
    sudo cp /etc/shadow ~/shadow.bak
    
  2. Мы должны загрузиться в режиме Recovery (нажмите Shift на начальную загрузку, в GRUB выбирают Расширенные настройки для Ubuntu, выбирают Ubuntu, с Linux... (режим восстановления)),

  3. Выбрать root Drop to root shell prompt к корневой оболочке доступа
  4. Введите своего основного пользователя (обычно GID = 1000, член sudo группы) пароль здесь при выяснении

    Press Enter for maintenance
    (or press Control-D to continue):
    
  5. Повторно смонтируйте все файловые системы с чтением и записью

    mount -o rw,remount /
    mount -o rw,remount /home
    
  6. Переименуйте пользователя от old_user до new_user, переименуйте комментарий к имени пользователя (поле 5 дюймов /etc/passwd) и переместите его дом

    OLDNAME="old_user"
    NEWNAME="new_user"
    usermod -l $NEWNAME $OLDNAME -c $NEWNAME -d /home/$NEWNAME  -m
    
  7. Переименуйте группу пользователя от old_user до new_user

    groupmod $OLDNAME -n $NEWNAME
    
  8. Замените old_user к new_user в /etc/subgid и /etc/subuid

    sed -i "s/$OLDNAME/$NEWNAME/g" /etc/subuid
    sed -i "s/$OLDNAME/$NEWNAME/g" /etc/subgid
    
  9. Перезагрузите систему и затем войдите в систему с именем new_user и старым паролем. Дополнительно измените пароль с passwd

  10. Если идет, право - удаляет поддержанные файлы:

    sudo rm ~/passwd.bak ~/group.bak ~/subuid.bak ~/subgid.bak \
    ~/gshadow.bak ~/shadow.bak
    

Примечание: можно читать об используемых опциях usermod и groupmod на их страницах справочника.

0
ответ дан 1 August 2014 в 17:22

Другие вопросы по тегам:

Похожие вопросы: