用户管理基本命令

  • 添加用户

基本语法

useradd 用户名

添加用户后默认的家目录在/home/用户名

也可以使用useradd -d 指定新用户的家目录

  • 指定修改密码

基本语法

passwd 用户名

用户需要手动设置密码,默认密码好像是长串字符串

  • 删除用户

# 删除用户,但是保留家目录
userdel 用户名
# 删除用户同时删除家目录
userdel -r 用户名

是否删除家目录根据实际情况进行操作,一般用户家目录可能会存有工作资料需要保留。

  • 查询用户信息

# 当用户不存在会返回 no such user
id 用户名

  • 切换用户

# 这里不带 - 也可以切换,带-会返回上一次登入时间
su - 用户名

高权限用户切换到低权限用户不需要输入密码,反之需要。

退出本次切换输入 exit 或 logout

查看当前用户/登录用户

# 查看当前用户 (登录的是 root 切换 cat 用户了,查询结果是 cat )
whoami
# 查看首次登录用户 (登录的是 root 切换到 cat用户,查询结果是 root)
who am i

用户的用户组管理

用户组用于对多个用户进行统一管理,涉及到用户的文件权限。

在linux中每个用户必须属于一个组,每个文件都有所有者,所在组,其他组的概念。

当创建用户时没有指定组,那么会创建一个和用户名相同的组,然后这个新用户会加入其中。

  • 新增组

groupadd 组名

  • 删除组

groupdel 组名

  • 新增用户并指定组

useradd -g 用户组 用户名

  • 修改用户的组

usermod -g 用户组 用户名

  • 改变用户的家目录(用户要有进入新目录的权限)

usermod -d  新目录 用户名
  • 用户组相关文件

/etc/passwd

用户( user )的配置文件,记录用户的各种信息

格式: 用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell

/etc/shadow

口令的配置文件

格式:登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志

/etc/group

组(group)的配置文件,记录Linux保存的组的信息

格式:组名:口令:组标识号:组内用户列表

文件的用户组管理

每个文件都有所有者,所在组,其他组的概念。

查看文件的所有者

查看文件属于那个组

# 修改文件的所有者
chown 用户名 文件名
# 修改文件的所在组
chgrp 组名 文件名
# 修改文件的所有者与所在组
chown 用户名:组名 文件名

其他组:文件的所有者与所在组的用户之外的用户都是文件其他组。