本文共 1186 字,大约阅读时间需要 3 分钟。
有时,我们需要在系统中批量创建用户并为其设置密码。以下是两种常见情况的脚本示例,供您参考并根据实际需求进行修改。
for
循环批量添加用户并设置随机密码脚本作用:批量添加user1
到user10
用户,并为每个用户生成一个随机的8位数字密码。
#!/bin/bash# 测试批量添加用户并设置随机密码for n in `seq 10`do useradd user$n echo "user$n" | passwd echo "user$n" | md5sum | cut -c1-8done
脚本作用:在实际生产环境中批量添加指定用户,并为其设置对应的密码,同时禁止使用sudo -s
和sudo -i
切换到root。
思路:将所有要添加的用户名和密码存储在一个数组中,创建一个函数来提取用户名和密码并添加用户和设置密码。最后,通过循环调用这个函数来批量添加用户。
#!/bin/bash# 在生产环境中批量添加用户并设置密码userlist=( user21:123456 user22:456789 user23:876543)function adduser_setpasswd_sudo { local user=$1 local passwd=$2 useradd -m -s /bin/bash $user echo "$user:$passwd" | chpasswd sed -i "/${user}/d" /etc/sudoer echo "${user} ALL=NOPASSWD:ALL,!/usr/bin/passwd,/usr/bin/passwd [a-zA-Z]*,!/usr/bin/passwd root,!/bin/bash" >> /etc/sudoers}for user in ${userlist[@]}do adduser_setpasswd_sudo $userdone
以下脚本用于删除指定用户以及取消其sudo权限。
#!/bin/bash# 删除用户并取消sudo权限read -p "请输入您想要删除的用户名:" usernameuserdel -r $usernamesed -i "/${username}/d" /etc/sudoersecho "删除$userName完成。"
如果您对Linux感兴趣,建议阅读《Linux就该这么学》,这是一本由资深运维专家和国内多名红帽架构师(RHCA)共同编写的高质量Linux技术入门教程。书籍详细讲解了Linux系统的各种服务工作原理和配置方式,是一本非常实用的工具书。您可以在京东、当当、亚马逊及天猫等平台购买。
转载地址:http://nskfk.baihongyu.com/