标签:username Shell sudoers usergroup chmod echo etc Linux 授权
#!/bin/bash
dirpath="/opt/gjoy"
if [ ! -d ${dirpath} ]; then
mkdir -p ${dirpath}
fi
cd ${dirpath}
pName=$(rpm -qa | grep 'expect')
if [ $? -eq 0 ]; then
echo "软件包"expect"已经安装"
else
echo "软件包"expect"没有安装"
#使用mkpasswd可以根据自己的定义来随意生成密码
yum -y install expect
fi
usergroup="erpgroup"
username="erpadmin"
usepw=$(mkpasswd -l 15 -d 2 -c 2 -C 2 -s 2)
action="${1}"
case ${action} in
"create")
#创建用户组
groupadd ${usergroup}
#指定登录目录,创建用户并加入用户组
useradd -d /home/${username} -m -g ${usergroup} ${username}
#修改密码
echo ${usepw} | passwd --stdin ${username}
#打印账户信息
echo "username=${username}, usergroup=${usergroup}, password=${usepw}" >> outputpw.txt
#授权(root 权限)
chmod -v u+w /etc/sudoers
sed -i "/root ALL=(ALL) ALL/a\\$username ALL=(ALL) NOPASSWD: ALL" /etc/sudoers
chmod -v u-w /etc/sudoers
;;
"delete")
echo "deleting ${username}"
userdel -r ${username}
groupdel ${usergroup}
chmod -v u+w /etc/sudoers
sed -i "/\\$username ALL=(ALL) NOPASSWD: ALL/d" /etc/sudoers
chmod -v u-w /etc/sudoers
rm -rf outputpw.txt
;;
*)
echo "Usage: $0 [create|delete]"
;;
esac
使用方法
chmod +x adduser.sh
创建用户
./adduser.sh create
删除用户
./adduser.sh delete
生成的用户名和密码会保存到/opt/gjoy/outputpw.txt
标签:username,Shell,sudoers,usergroup,chmod,echo,etc,Linux,授权 来源: https://blog.csdn.net/yfm081616/article/details/122610940
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。