Как изменить UID,GID учетных записей пользователей при миграции с одного сервера на другой сервер Centos 7
У меня есть почтовый сервер с 1000 пользователей. Я хочу перенести сервер на сервер Centos 7.
Сценарий 1 (Старый сервер): UID учетных записей пользователей начинается с 501
Сценарий 2 (новый сервер Centos 7): учетная запись пользователя начинается с 1001, определенной в /etc/login.defs
Поэтому я не могу перенести учетную запись пользователя на свой новый сервер. Из-за несоответствия UID.
Как я могу перенести пользователей предыдущих серверов на мой новый сервер Centos 7, UID которого начинается с 1001???
1 ответ
Там, где существует внешний каталог, используйте его для пользователей. Для LDAP или Active Directory в современном Linux sssd является наиболее распространенным выбором.
Если вы все еще хотите использовать файлы, скопируйте все файлы со старого сервера на новый: /etc/passwd /etc/shadow /etc/group
, Предупреждения:
- Вы можете заблокировать себя от доступа.
- Вы должны использовать старые учетные данные.
- Это не будет работать при перемещении между семействами дистрибутивов Linux или UNIX, у каждого из них есть свои предположения относительно UID и GID.
Или вы все равно можете указать идентификаторы пользователя и группы, даже ниже порогового значения "системный пользователь" по умолчанию. Обязательно подумайте об этом, если вам небезразлично, какое удостоверение личности получает каждый.
[root@sf ~]# groupadd textgroup --gid 501
[root@sf ~]# useradd person --gid 501 --uid 501
[root@sf ~]# id person
uid=501(person) gid=501(textgroup) groups=501(textgroup)
[root@sf ~]# grep PRETTY /etc/os-release
PRETTY_NAME="CentOS Linux 7 (Core)"