Как поменять UID и GID пользователя/группы в Linux
Перейти к навигации
Перейти к поиску
Вводные данные
Username: user01 Group: group01 Existing UID: 800 Existing GID: 700 New UID: 900 New GID: 600
Подготовка
Убедимся, что отсутствуют запущенные процессы от имени нашего пользователя
# ps -ef | grep user01 # ps -ef | grep 800
Сделаем резервную копию /etc/passwd и /etc/group
# cp -p /etc/passwd /etc/passwd.bkp # cp -p /etc/group /etc/group.bkp
Проверим UID и GID нашего пользователя
# id user01 uid=800(user01) gid=700(group01) groups=700(group01)
Меняем UID и GID для пользователя и группы
Сначала меняем GID для группы group01
# groupmod -g 600 group01
Далее меняем UID и GID для пользователя user01
# usermod -u 900 -g 600 user01
Проверяем, что новые значения применились к пользователю
# id user01 uid=900(user01) gid=600(group01) groups=600(group01)
Нюансы
1. В группу group01 могут входить несколько пользователей. Процедуру смены GID надо провести для всех из них.
2. Необходимо найти все файлы принадлежащие user01 или group01 и поменять права доступа на них
# find / -uid 800 -exec chown -v -h 900 '{}' \; # find / -gid 700 -exec chgrp -v 600 '{}' \;