天天看點

關于在Linux伺服器上建立新使用者

配置檔案 include.inc

CAL_USERHOME="/home/cal"

CAL_USERSHELL="/usr/bin/csh"

CAL_USERS_GROUPNAME="cal"

CAL_USERS_GROUPID=1100

CAL_USERID=110010

CAL_USERNAME="cal"

CAL_USERPWD="123456"

在使用配置檔案建立使用者的時候,

第一步肯定是判斷一下傳入的變量存不存在了,[ -z ${CAL} ] 這是為空判斷

第二步就是删除使用者(若是已經有使用者了,你還建什麼新使用者!)

    判斷使用者是否存在  exist_user=`cat /etc/passwd | grep "^${CAL_USERNAME}:"`

   若是存在就找出這個使用者真在運作的程序,殺掉,然後删除這個使用者,根據需要選擇删不删除他的家目錄

   pid=`ps -u ${CAL_USERNAME} | awk '{print $1}' | sed -n '2,$'p`           

   kill -9 ${pid}

   userdel -r ${CAL_USERNAME}

第三步 删除使用者組,實際上若是這個使用者組和使用者組id與我們所配置的一樣或者不存在也就不删除,不一樣才會删除

   groupid=`cat /etc/group | grep "^${CAL_USERS_GROUPNAME}" | awk -F: '{print $3}'`   

   groupdel ${CAL_USERS_GROUPNAME}

第四步 建立使用者組,環境清理幹淨了,開始準備建立新使用者了,當然我們可以先判斷該使用者組是否存在了,免得多此一舉來建立

  groupadd -o -g ${CAL_USERS_GROUPID} ${CAL_USERS_GROUPNAME}  即使組id已經存在,也建立使用者組

第五步 建立使用者 ,我們建立使用者時都會使用-p來設定密碼,可是這裡的密碼是加密的,是以為了能正常登入,最好給我們的明文密碼加密後,在-p寫密文

   passwd=`mkpasswd ${CAL_USERNAME} at 2>/dev/null`

   useradd -u ${CAL_USERID} -g ${CAL_USERS_GROUPNAME} -d ${CAL_USERHOME} -s ${CAL_USERSHELL} -m ${CAL_USERNAME} -p ${passwd}

mkpasswd是加密算法,當然我不确定這個算法你們的機器也有,自己去找密文吧。

好了,這樣建立出來的使用者就可以像root一樣登入了,權限肯定是比root小的啦。

繼續閱讀