| 问题提出:如何把用户账户信息从一台包含mail服务的Linux服务器迁移到新的Linux服务器。
方案:
如果是老版本的Linux服务器,如Redhat 9 或者 Debian 2.x. 你可以使用标准的Linux命令如tar,awk,scp或者其他拷贝需要的信息到新的服务器。
以下列出的需要拷贝:
* /etc/passwd - 包含每个账户的信息
* /etc/shadow - 包含账户加密的密码信息.
* /etc/group - 定义的各个用户组
* /etc/gshadow - group shadow 文件 (包含加密的组密码)
* /var/spool/mail - 所有的用户邮件存在这里.
* /home - 所有的用户数据在这里.
您需要备份所有的上述文件和目录从旧服务器到新的Linux服务器。
原服务器上运行的命令列表:
# 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
服务器上运行的命令列表:
# mkdir /root/newsusers.bak
# cp /etc/passwd /etc/shadow /etc/group /etc/gshadow /root/newsusers.bak
# cd /path/to/location
# cat passwd.mig >> /etc/passwd
# cat group.mig >> /etc/group
# cat shadow.mig >> /etc/shadow
# /bin/cp gshadow.mig /etc/gshadow
# cd /
# tar -zxvf /path/to/location/home.tar.gz
# cd /
# tar -zxvf /path/to/location/mail.tar.gz
# reboot
[责任编辑:admin] |