【Linux 命令】添加用户
$ useradd -r -m -s /bin/bash ldy
$ passwd ldy
New passwd:
Retype new passwd:
passwd: password updated successfully
批量添加用户
1, 参照 /etc/passwd 格式编写 user.txt 文件,内容是待添加用户的信息
user001::600:100:user:/home/user001:/bin/bash
user002::601:100:user:/home/user002:/bin/bash
user003::602:100:user:/home/user003:/bin/bash
user004::603:100:user:/home/user004:/bin/bash
user005::604:100:user:/home/user005:/bin/bash
user006::605:100:user:/home/user006:/bin/bash
字段解释:
注册名:密码(缺省或者用x代替):用户标识号(500-65535):组标识号(500-65535):描述(或用户名):用户主目录:登陆shell
2, 利用python 脚本实现上述 user.txt 文件的编写
name_list = ['user001', 'user002', 'user003', 'user004', 'user005', 'user006']
uid = 1100
with open('user.txt',mode='w') as f:
for name in name_list:
f.write(f"{name}::{uid}:997:user:/home/{name}:/bin/bash\n")
uid += 1
3, 编写 passwd.txt 文件,内容是用户名与密码的对照
user001:密码
user002:密码
user003:密码
user004:密码
user005:密码
user006:密码
4, 利用python 脚本实现上述 passwd.txt 文件的编写
name_list = ['user001', 'user002', 'user003', 'user004', 'user005', 'user006']
with open('passwd.txt',mode='w') as f:
for name in name_list:
f.write(f"{name}:66666 \n")
5, 以root身份执行命令 /usr/sbin/newusers,从刚创建的用户文件user.txt中导入数据,创建用户
newusers < user.txt
newusers: line 12: invalid line
newusers: error detected, changes ignored
出现上述错误时,把 user.txt 文件最后一行的换行符去掉
6, 执行命令 /user/sbin/pwunconv 将 /etc/shadow 产生的 shadow 密码解码,然后回写到 /etc/passwd 中,并将/etc/shadow的shadow密码栏删掉
pwunconv
7, 以root身份执行命令 /usr/sbin/chpasswd 创建用户密码,chpasswd 会将经过 /usr/bin/passwd 命令编码过的密码写入 /etc/passwd 的密码栏
chpasswd < passwd.txt
注意把 passwd.txt 文件最后一行不要有换行符
8, 确定密码经编码写入/etc/passwd的密码栏后执行命令 /usr/sbin/pwconv 将密码编码为 shadow password,并将结果写入 /etc/shadow
pwconv
reference
CSDN: Linux中批量创建用户的方法
/etc/passwd 字段信息
为用户赋予部分 sudo 权限
- 用户:ldy
- 命令权限:sudo mount
1, 用which 查看mount 命令的路径
$ which mount
/bin/mount
2, 用 sudoedit 编辑 /etc/sudoers
$ sudoedit /etc/sudoers
3, 打开 /etc/sudoers 文件后,添加如下内容
ldy ALL=(ALL) NOPASSWD:/bin/mount
NOPASSWD是为让用户在使用sudo时不需要输入密码
- 脚本权限:/etc/init.d/nagios restart
1, 用which 查看mount 命令的路径
$ which mount
/bin/mount
2, 用 sudoedit 编辑 /etc/sudoers
$ sudoedit /etc/sudoers
3, 打开 /etc/sudoers 文件后,添加如下内容
lin ALL=NOPASSWD:/etc/init.d/nagios restart
为用户赋予全部 sudo 权限
- 用户:ldy
- 权限:sudo su
1, 用 sudoedit 编辑 /etc/sudoers
$ sudoedit /etc/sudoers
2, 打开 /etc/sudoers 文件后,添加如下内容
ldy ALL=(ALL) ALL
reference: https://blog.csdn.net/hgq522/article/details/121347540