用户和用户组
-
用户即登录系统的角色,主要包括用户名和密码信息,只有正确的用户名和密码组合才能登录到系统。
-
Linux是多用户的分时操作系统,即可以通过多组用户名和密码登录系统,并且可以同时登录。注意用户名不能相同
-
组有组名和组id,在Linux中可以创建多个组,可以设置组的权限。可以在组中添加一个或多个用户角色,同一组中的用户具有相同权限。并且一个用户可以同时添加到不同组中
-
root用户是系统自带的,拥有最高的权限
存储文件
用户
/etc/passwd文件记录了当前系统所有用户的基本信息。
一行记录对应着一个用户,每行记录又被冒号(:)分隔为7个字段
用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell
- 用户名即登录账号,系统默认创建了一批账号,比如root等,也可以由管理员手动创建
- 口令默认显示为x
- 用户标识,root默认用户标识为0。
- 组标识号
- 注释性描述
- 主目录:管理员创建的账号的主目录一般是/hom/用户名,该账号的一些数据存放在该目录下
- 登录shell:一般有三种值:/usr/sbin/nologin和/usr/bin/zsh、/bin/false
用户组
/etc/group文件记录了用户组的一些基本属性
组名:口令:组标识号:组内用户列表
- 组名
- 口令:一般为x
- 组标识号:一个数字编号
- 组内用户列表:可以为空,也可以包含一个或多个用户名,用户名之间用,分隔
用户命令
1、useradd
帮助信息:
用法:useradd [选项] 登录名
useradd -D
useradd -D [选项]
选项:
--badnames do not check for bad names
-b, --base-dir BASE_DIR 新账户的主目录的基目录
--btrfs-subvolume-home use BTRFS subvolume for home directory
-c, --comment COMMENT 新账户的 GECOS 字段
-d, --home-dir HOME_DIR 新账户的主目录
-D, --defaults 显示或更改默认的 useradd 配置
-e, --expiredate EXPIRE_DATE 新账户的过期日期
-f, --inactive INACTIVE 新账户的密码不活动期
-g, --gid GROUP 新账户主组的名称或 ID
-G, --groups GROUPS 新账户的附加组列表
-h, --help 显示此帮助信息并退出
-k, --skel SKEL_DIR 使用此目录作为骨架目录
-K, --key KEY=VALUE 不使用 /etc/login.defs 中的默认值
-l, --no-log-init 不要将此用户添加到最近登录和登录失败数据库
-m, --create-home 创建用户的主目录
-M, --no-create-home 不创建用户的主目录
-N, --no-user-group 不创建同名的组
-o, --non-unique 允许使用重复的 UID 创建用户
-p, --password PASSWORD 加密后的新账户密码
-r, --system 创建一个系统账户
-R, --root CHROOT_DIR chroot 到的目录
-P, --prefix PREFIX_DIR prefix directory where are located the /etc/* files
-s, --shell SHELL 新账户的登录 shell
-u, --uid UID 新账户的用户 ID
-U, --user-group 创建与用户同名的组
-Z, --selinux-user SEUSER 为 SELinux 用户映射使用指定 SEUSER
2、userdel
帮助信息:
用法:userdel [选项] 登录名
选项:
-f, --force 即使不属于此用户,也强制删除文件
-h, --help 显示此帮助信息并退出
-r, --remove 删除主目录和信件池
-R, --root CHROOT_DIR chroot 到的目录
-P, --prefix PREFIX_DIR prefix directory where are located the /etc/* files
-Z, --selinux-user 为用户删除所有的 SELinux 用户映射
3、usermod
用法:usermod [选项] 登录名
选项:
-b, --badnames allow bad names
-c, --comment COMMENT GECOS 字段的新值
-d, --home HOME_DIR 用户的新主目录
-e, --expiredate EXPIRE_DATE 设定帐户过期的日期为 EXPIRE_DATE
-f, --inactive INACTIVE 过期 INACTIVE 天数后,设定密码为失效状态
-g, --gid GROUP 强制使用 GROUP 为新主组
-G, --groups GROUPS 新的附加组列表 GROUPS
-a, --append GROUP 将用户追加至上边 -G 中提到的附加组中,
并不从其它组中删除此用户
-h, --help 显示此帮助信息并退出
-l, --login NEW_LOGIN 新的登录名称
-L, --lock 锁定用户帐号
-m, --move-home 将家目录内容移至新位置 (仅于 -d 一起使用)
-o, --non-unique 允许使用重复的(非唯一的) UID
-p, --password PASSWORD 将加密过的密码 (PASSWORD) 设为新密码
-R, --root CHROOT_DIR chroot 到的目录
-P, --prefix PREFIX_DIR prefix directory where are located the /etc/* files
-s, --shell SHELL 该用户帐号的新登录 shell
-u, --uid UID 用户帐号的新 UID
-U, --unlock 解锁用户帐号
-v, --add-subuids FIRST-LAST 添加子 UID 范围
-V, --del-subuids FIRST-LAST 移除子 UID 范围
-w, --add-subgids FIRST-LAST 添加子 GID 范围
-W, --del-subgids FIRST-LAST 移除子 GID 范围
-Z, --selinux-user SEUSER 用户的新的 SELinux 用户映射
4、passwd
用法:passwd [选项] [登录名]
选项:
-a, --all 报告所有帐户的密码状态
-d, --delete 删除指定帐户的密码
-e, --expire 强制使指定帐户的密码过期
-h, --help 显示此帮助信息并退出
-k, --keep-tokens 仅在过期后修改密码
-i, --inactive INACTIVE 密码过期后设置密码不活动为 INACTIVE
-l, --lock 锁定指定的帐户
-n, --mindays MIN_DAYS 设置到下次修改密码所须等待的最短天数
为 MIN_DAYS
-q, --quiet 安静模式
-r, --repository REPOSITORY 在 REPOSITORY 库中改变密码
-R, --root CHROOT_DIR chroot 到的目录
-S, --status 报告指定帐户密码的状态
-u, --unlock 解锁被指定帐户
-w, --warndays WARN_DAYS 设置过期警告天数为 WARN_DAYS
-x, --maxdays MAX_DAYS 设置到下次修改密码所须等待的最多天数
为 MAX_DAYS
用户组命令
1、groupadd
用法:groupadd [选项] 组
选项:
-f, --force 如果组已经存在则成功退出
并且如果 GID 已被使用则取消 -g
-g, --gid GID 为新组使用 GID
-h, --help 显示此帮助信息并退出
-K, --key KEY=VALUE 不使用 /etc/login.defs 中的默认值
-o, --non-unique 允许创建有重复 GID 的组
-p, --password PASSWORD 为新组使用此加密过的密码
-r, --system 创建一个系统账户
-R, --root CHROOT_DIR chroot 到的目录
-P, --prefix PREFIX_DIR directory prefix
2、groupdel
用法:groupdel [选项] 组
选项:
-h, --help 显示此帮助信息并退出
-R, --root CHROOT_DIR chroot 到的目录
-P, --prefix PREFIX_DIR prefix directory where are located the /etc/* files
-f, --force 即便是用户的主组也继续删除
3、groupmod
用法:groupmod [选项] 组
选项:
-g, --gid GID 将组 ID 改为 GID
-h, --help 显示此帮助信息并退出
-n, --new-name NEW_GROUP 改名为 NEW_GROUP
-o, --non-unique 允许使用重复的 GID
-p, --password PASSWORD 将密码更改为(加密过的) PASSWORD
-R, --root CHROOT_DIR chroot 到的目录
-P, --prefix PREFIX_DIR prefix directory where are located the /etc/* files
4、newgrp
如果一个用户同时属于多个用户组,那么用户可以在用户组之间切换,以便具有其他用户组的权限。
用法:newgrp [-] [组]