База знаний

Перенос пользователей с Linux на другой Linux

  • 0

Выполняем на первом Linux:

# cd
# mkdir /root/move/
# export UGIDLIMIT=500

Копируем пароли, почту и домашние папки:

# awk -v LIMIT=$UGIDLIMIT -F: ‘($3>=LIMIT) && ($3!=65534)’ /etc/passwd > /root/move/passwd.mig
# awk -v LIMIT=$UGIDLIMIT -F: ‘($3>=LIMIT) && ($3!=65534)’ /etc/group > /root/move/group.mig
# awk -v LIMIT=$UGIDLIMIT -F: ‘($3>=LIMIT) && ($3!=65534) {print $1}’ /etc/passwd | tee — |egrep -f — /etc/shadow > /root/move/shadow.mig
# cp /etc/gshadow /root/move/gshadow.mig
# tar -zcvpf /root/move/home.tar.gz /home
# tar -zcvpf /root/move/mail.tar.gz /var/spool/mail

Выкладываем файлы на другой Linux:

# scp -r /root/move/* root@linux.ru:/root/

Выполняем на другом Linux:

Бэкапим имеющихся пользователей и их пароли:

# mkdir /root/newsusers.bak
# cp /etc/passwd /etc/shadow /etc/group /etc/gshadow /root/newsusers.bak

Восстановим пароли, почту и домашние папки:

# cd /root/move
# cat passwd.mig >> /etc/passwd
# cat group.mig >> /etc/group
# cat shadow.mig >> /etc/shadow
# /bin/cp gshadow.mig /etc/gshadow
# cd /
# tar -zxvf /root/move/home.tar.gz
# tar -zxvf /root/move//mail.tar.gz
 
Перезагружаемся:
# reboot

Помог ли вам данный ответ?