声明:以下内容均学习自《Linux就该这么学》一书
1、管理员root
Linux系统的管理员之所以是root,并不是因为它的名字叫root,而是因为该用户的身份号码UID(User IDentification)的数值是0。UID相当于身份证号码,具有唯一性,不能冲突,管理员创建的普通用户的UID默认是从1000开始的(即使前面有闲置的号码)。
- 管理员UID为0:系统的管理员用户,拥有最高权限。
- 系统用户UID为1~999:Linux系统为了避免因某个服务器出现漏洞而被黑客提权至整台服务器,默认服务程序会有独立的系统用户负责运行,进而有效控制被破坏范围。
- 普通用户UID从1000开始:由管理员创建的用于日常工作的用户。
2、useradd
用于创建新的用户:useradd [参数] 用户名
使用该命令创建用户账户时,默认的用户家目录会被存放在/home目录中,默认的shell解释器为/bin/bash,而且默认会创建一个与该用户同名的基本用户组。
如下示例:
bash
useradd -d /home/ln -u 7777 -s /bin/bash Ning
|--------|----------------------------|
| -d | 指定用户的家目录,默认为/home/username |
| -e | 账户的到期时间,格式为YYYY-MM-DD |
| -u | 指定该用户的默认UID |
| -g | 指定一个初始的用户基本组(必须已存在) |
| -G | 指定一个或多个扩展用户组 |
| -N | 不创建与用户同名的基本用户组 |
| -s | 指定该用户的默认shell解释器 |
[useradd命令的参数及作用]
3、groupadd
用于创建用户组:groupadd [参数] 群组名
在工作中常常会把几个用户加入到同一个组里面,这样就可以针对一类用户统一安排权限。
4、usermod
用于修改用户的属性:useradd [参数] 用户名
在系统中创建用户也是修改配置文件的过程。用户的信息都保存在/etc/passwd文件中,可以直接编辑,也可以使用usermod去修改用户信息,比如用户的UID、默认终端等。
|-----------|-----------------------------------|
| -c | 填写用户账户的备注信息 |
| -d -m | 参数-d与-m连用,可重新指定用户的家目录并自动把旧的数据转移过去 |
| -e | 账户的到期时间,格式为YYYY-MM-DD |
| -g | 变更所属用户组 |
| -G | 变更扩展用户组 |
| -L | 锁定用户禁止其登录系统 |
| -U | 解锁用户,允许其登录系统 |
| -s | 变更默认终端 |
| -u | 修改用户的UID |
[usermod参数及作用]
5、passwd
用户修改用户密码、过期时间、认证信息:passwd [参数] 用户名
普通用户只能使用passwd修改自己的系统密码,而root管理员有权修改其他所以账户的密码,而且,root管理员在Linux系统重修改自己或其它账户密码时不需要验证旧密码。
|-------------|---------------------------------------------------------------|
| -l | 锁定用户,禁止其登录 |
| -u | 解除锁定,允许用户登录 |
| --stdin | 允许通过标准输入修改用户密码,如echo "NewPassword" | passwd --stdin username |
| -d | 使该用户可用空密码登录系统 |
| -e | 强制用户在下次登录时修改密码 |
| -S | 显示用户的密码是否被锁定,以及密码锁采用的加密算法名称 |
[passwd参数及作用]
6、userdel
用户删除用户:userdel []参数] 用户名
|--------|--------------|
| -f | 强制删除用户 |
| -r | 同时删除用户及用户家目录 |
[userdel参数及作用]