您的位置:首页 > 运维架构 > Shell

Unix Like如何批量创建帐号,在本地自动挂载服务器上的目录

2013-05-21 11:49 323 查看
前段时间,公司服务器来了一批新机器需要大量的创建新帐号,又因为系统各有区别。所以打算用bash脚本实现批量创建帐号。
在创建帐号的同时,还要把客户端配置autofs,也就是需要使用时才挂载,一段时间不使用挂载点自动移除。而客户端的生产数据实际是通过挂载服务器上的目录,统一保存在服务器上。
优点:通过挂载的方式,可以确保客户端不需要配置大硬盘。所有数据都保存在服务器端,有利于数据的统一管理与备份。

实例脚本,在两种类型机台(HP93K,CATC)上创建(用户名/UID)及自动挂在服务器上的目录到本地。

#!/bin/bash
#输入三个参数:用户名,UID及机台类型
read -p "Please input Username:" username
read -p "Please input Uid:" uid
read -p "Please input Workstationtype:" workstationtype

if [ "$workstationtype" != "" ] ; then
#截取首字母
first=${workstationtype:0:1}
case $first in
H)
#echo 'H';;
#把小写字母转换为大写
upperusername="$(echo $username | tr '[:lower:]' '[:upper:]')" if [ "$username" != "" ] && [ "$uid" != "" ] ; then
echo 'create account ' + $username
echo 'account UID' + $uid mkdir /var/home
mkdir /var/home/$username useradd -u $uid -d /var/home/$username -s /bin/csh $username
passwd $username mkdir /home/$username echo '/home/'$username' '/etc/auto.$username >> /etc/auto.master
touch /etc/auto.$username echo 'production -rw,bg,soft,rsize=32768,wsize=32768 netapp1
:/vol/vol3/'$upperusername'/production/'$workstationtype > /etc/auto.$username
echo 'ftdatalog -rw,bg,soft,rsize=32768,wsize=32768 netapp1:
/vol/vol4/'$upperusername'/ftdatalog/'$workstationtype >> /etc/auto.$username chown $username /home/$username /etc/init.d/autofs restart
else
echo "Please input parameters"
exit 1 fi;;
C)
useradd -u $uid -d /var/home/$username -s /bin/csh $username
passwd $username echo '/export/home'$username'production -soft,bg,timeo=200,r
w netapp1:/vol/vol3/'$upperusername'production/CAT' >> /etc/auto_direct
echo '/export/home'$username'ftdatalog -soft,bg,timeo=200,rw
netapp1:/vol/vol4/'$upperusername'ftdatalog/CAT' >> /etc/auto_direct /etc/init.d/autofs stop
/etc/init.d/autofs start cd /var/yp /usr/ccs/bin/make all
esac
else
echo "Please input workstationtype"
exit 1
fi
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐