转载:http://blog.chinaunix.net/space.php?uid=20346344&do=blog&id=1964332

分类: linux服务器


迁移用户帐号不是一件容易的任务。你需要确保文件所有权保持完整,密码和所属组保持原样。需要考虑的文件应该是,比如,用户的主目录和email。

在红帽企业Linux2.1和3上,好的情况是他们有相似的处理用户帐号的方法。加入系统的用户的UID和GID总是从500开始计算,一直增加,除非被覆盖(参见man页的useradd)。这里,我们假设你使用/etc/passwd,/etc/group和/etc/shadow来做身份认证。这样迁移用户帐号,就是把UID>=500的用户帐号导入到系统中。

为了让这个过程能工作正常,你不应该在新安装的红帽企业Linux3系统上创建新的用户帐号。下面的过程包括获取你的用户帐号,把他们添加到恰当文件的已经存在的帐号后面。这个过程只在安装后有效,建议你在添加用户帐号之前,备份你要修改的文件。


在红帽企业Linux2.1系统上:

 
 # awk -F: '($3>=500) && ($3!=65534)' /etc/passwd > passwd.txt 
 # awk -F: '($3>=500) && ($3!=65534)' /etc/group > group.txt
 # awk -F: '($3>=500) && ($3!=65534) {print $1}' /etc/passwd|tee -|egrep -f - /etc/shadow > shadow.txt    
 # tar czpf home.tgz /home
 # tar czpf mail.tgz /var/spool/mail
 # cd /
 # cp /etc/passwd /backup/passwd-backup.txt
 # cat /backup/passwd.txt >> /etc/passwd
 # cp /etc/group /backup/group-backup.txt
 # cat /backup/group.txt >> /etc/group
 # cp /etc/shadow /backup/shadow-backup.txt    
 # cat /backup/shadow.txt >> /etc/shadow    
 # tar zxf /backup/home.tgz    
 # tar zxf /backup/mail.tgz

要检查迁移是否成功,可以用迁移后的用户帐号来登录系统。