zl程序教程

您现在的位置是:首页 >  其他

当前栏目

Linux 用户管理

2023-02-18 16:40:55 时间

# Linux 用户管理

# 基本介绍

Linux系统是一个多用户多任务的操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。

  • Linux用户的常见属性
  1. 用户名

用户登录时,用于系统识别使用的名称。其由字母、数字和下划线组成,在整个系统中具有唯一性,也称为用户账号、用户名不得使用"*" "," ";"等非法的字符。

  1. 用户口令

用户登录系统时用于验证用户名的字符串,应该设置得足够复杂。

  1. 用户ID

在Linux系统中,每一个用户不但具有唯一的名称,还具有唯一的整数值,也就是用户ID或UID。root用户的ID值为0,。特殊用户的ID默认取值范围为1~499超级用户创建的普通用户ID值从500开始递增。第一个普通用户为500,第二个普通用户为501,以此类推。

  1. 用户组ID

在Linux系统中,每一个用户组不但具有唯一的用户组名,还具有唯一的整数值,也就是用户组ID或GID。

  1. 用户主目录

Linux系统为普通用户默认分配一个主目录。根用户root的主目录是/root普通用户的主目录默认为/home/用户名。如普通用户student1的主目录默认为/home/student1。

  1. 备注

备注也被称为用户全名、全称、注释信息,是用户账号的附件信息,可为空。

  1. 登录Shell

用户登录系统后使用的Shell环境。对于超级用户root和普通用户,其shell环境一般为/bin/bash。对于系统用户,其Shelli环境一般为/sbin/nplogin,表示该用户不能登录。

# 添加用户

# 基本语法

useradd 选项 用户名

  • 选项说明

-c comment:用户的注释信息,也称为备注、用户全称等,默认无。

-g group:设置用户所属的主群组,也称主要组、主组群等,默认为与用户名同名的用户组。

-G:设置用户所属的附加群组,也称附加组、附加群租等,默认无。

-d home:设置用户的主目录,默认为/home/用户名。

-s shell:设置用户登录Shell环境,默认为/bin/bash

-u UID:设置用户的ID值,默认为自动设置。

-e expire:设置账号的过期时间,默认为空,格式为 YYYY-MM-DD。

-f inactive:设置密码过期多少天后禁用该用户,默认为空.

# 细节说明

  1. 当创建用户成功后,会自动的创建和用户同名的家目录。
  2. 也可以通过useradd -d指定目录新的用户名,给新创建的用户指定家目录。

# 指定/修改密码

# 基本语法

passwd 选项 用户名

  • 选项说明

-l name:锁定系统中的普通账户,使其不能登录

-u name:解锁系统中被锁定的普通用户,恢复其登录功能

-x days:最长密码使用时间(天)

-n days:最短密码使用时间(天)

-d:删除用户的密码

# 删除用户

# 基本语法

userdel 用户名

# 细节说明

  1. 删除用户milan,但是要保留家目录, userdel milan
  2. 删除用户以及用户主目录,比如tom, userdel -r tom

# 查询用户信息指令

# 接本语法

id 选项 用户名

  • 选项说明

-u:显示用户的ID

-g:显示用户的主群组ID

-G:显示用户的所有群组的ID

# 应用实例

案列:请查询root信息

#id root

# 细节说明

当用户不存在时,返回无此用户

# 切换用户

# 介绍

在操作Linux中,如果当前用户的权限不够,可以通过su - 指令,切换到高权限用户,比如root

# 基本语法

su - 切换用户名

# 细节说明

  1. 从权限高的用户切换到权限低的用户,不需要输入密码,反之需要。
  2. 当需要返回到原来用户时,使用exit/logout 指令

# 查看当前用户/登录用户

# 基本语法

who am i(I)

# 用户组

# 介绍

类似于角色,系统可以对有共性/权限的多个用户进行统一的管理

# 新增组

指令: groupadd 组名

# 删除组

指令(基本语法):groupdel 组名

# 案例演示

  1. 增加用户时直接加上组
  2. 指令(基本语法) : useradd -g 用户组 用户名
  3. 增加一个用户 zwj,直接将他指定到wudang
  4. groupadd wudang
  5. useradd -g wudang zwj

# 修改用户的组

指令(基本语法):usermod -g 用户组 用户名

  • 案例演示
  1. 创建一个组 mojiao
  2. 把zwj放入到mojiao

指令:usermod -g mojiao zwj

# 用户和组相关文件

# /etc/password 文件

用户( user)的配置文件,记录用户的各种信息 每行的含义:用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录 Shell

# /etc/shadow 文件

口令的配置文件

  • 每行的含义:登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志

# /etc/group 文件

组( group )的配置文件,记录Linux包含的组的信息

  • 每行含义:组名:口令:组标识号:组内用户列表