IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> shell实战案例-批量创建用户 -> 正文阅读

[系统运维]shell实战案例-批量创建用户

目录

useradd选项

批量创建用户

userdel -r

usermod


useradd选项

-D 查看创建用户的默认值

example]# useradd -D
GROUP=100 #新用户会被添加到GID为100的公共组;
HOME=/home #新用户的HOME目录将会位于/home/loginname;
INACTIVE=-1 #新用户账户密码在过期后不会被禁用;
EXPIRE= #新用户账户未被设置过期日期;
SHELL=/bin/bash #新用户账户将bash shell作为默认shell;
SKEL=/etc/skel #系统会将/etc/skel目录下的内容复制到用户的HOME目录下
CREATE_MAIL_SPOOL=yes #系统为该用户账户在mail目录下创建一个用于接收邮件的文件

/etc/skel目录存放的是该用户的环境变量,useradd之后会将/etc/skel目录中的文件复制过来。

useradd 的其他参数

  1. -c comment 给新用户添加备注
  2. -d home_dir 为主目录指定一个名字(如果不想用登录名作为主目录名的话)
  3. -e expire_date 用YYYY-MM-DD格式指定一个账户过期的日期
  4. -f inactive_days 指定这个账户密码过期后多少天这个账户被禁用; 0表示密码一过期就立即禁用, 1表示
  5. 禁用这个功能
  6. -g initial_group 指定用户登录组的GID或组名
  7. -G group ... 指定用户除登录组之外所属的一个或多个附加组
  8. -k 必须和-m一起使用,将/etc/skel目录的内容复制到用户的HOME目录
  9. -m 创建用户的HOME目录
  10. -M 不创建用户的HOME目录(当默认设置里要求创建时才使用这个选项)
  11. -n 创建一个与用户登录名同名的新
  12. -r 创建系统账户
  13. -p passwd 为用户账户指定默认密码
  14. -s shell 指定默认的登录shell
  15. -u uid 为账户指定唯一的UID
    ?

批量创建用户

#!/bin/bash
# 批量创建用户
# 2022年1月2日17:25:42

# cat user.txt
# ninesun01 123456
# ninesun02 123456
# ninesun03 654321
# 读取如上文件创建用户。

if [ $# -ne 1 ];then
	echo "useage: ./createuser.sh user.txt"
	exit 1
fi	

# 判断是否为file
if [ ! -f $1 ];then
	echo "$1 is not a file"
	exit 2
fi	
IFS=$'\n'
for line in `cat $1`;do
	#判断文件中空行
	if [ ${#line} -eq 0 ];then # line="ninesun";echo ${#line} -> 7
		continue # 如果为空,跳出本次循环不执行后续的useradd
	fi
	user=`echo $line|awk '{print $1}'`
	pass=`echo $line|awk '{print $2}'`
	# 判断user是否已存在
	id $user &>/dev/null
	if [ $? -eq 0 ];then
		echo "$user already exist"
	else
		useradd $user		
		echo "$pass" | passwd --stdin $user >&/dev/null
		if [ $? -eq 0 ];then
			echo "$user create successful"
		fi
	fi		
done

userdel -r

ninesun02 03已存在,有两个个warning : home目录已存在、mailbox 已存在。如何删除呢?

userdel -r?这个操作比较危险,最好备份一下用户目录,以免删除重要文件。

usermod

-p修改账户的密码。
-L锁定账户,使用户无法登录。
-U解除锁定,使用户能够登录。


?

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-01-03 16:30:34  更:2022-01-03 16:32:53 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 6:44:08-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码