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

前段时间,公司服务器来了一批新机器需要大量的创建新帐号,又因为系统各有区别。所以打算用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


你可能感兴趣的:(unix,Like如何批量创建帐号,script))