由于实验室的ftp服务器除了一些问题,需要改为samba来做文件服务器。
首先的一个问题就是批量添加用户:
由于以前的ftp服务器中的个人目录还需要保留,所以比较麻烦。
主要是用户名大小写的问题,个人目录有大写的,但是我又不希望用户名中有大写。所以需要特殊处理。
一、准备工作
生成用户名文件:
ls /home/ibmtc/Personal > 46-name.txt
改变大小写:
tr [:upper:] [:lower:] < 46-name.txt > namelist.txt
生成Project文件:
ls /home/ibmtc/project > 46-project.txt
生成密码文件:
awk '{print $1":"$1}' namelist.txt > passwdfile
生成newusers用户名shadow的文件的脚本:
#!/bin/sh
Home_Dir=/home/ibmtc/Personal
PID=1001
while read line;
do
#User Name is Lower
name=`echo $line | tr [:upper:] [:lower:]`
#But the original directory is Upper
echo $name:x:$PID:$PID::$Home_Dir/$line:/sbin/nologin >> usersfile
let "PID+=1"
done
运行脚本:
./makeusers.sh < 46-name.txt
再改几个用户的shell字段,让他有shell权限,作为管理员。
二、添加用户
通过newusers和chpasswd 完成批量添加用户;
[root@localhost ~]# newusers userfile
[root@localhost ~]# chpasswd < userpwdfile
这样就算添加完成了,如果您发现 /etc/passwd 中能发现用户的明口令,您可以通过下面的命令来映射到 /etc/shadow文件名;
[root@localhost ~]# pwconv
阅读(2076) | 评论(4) | 转发(0) |