目录
一、Linux操作系统用户管理的概念
二、用户管理的类型
三、模板目录
四、查看历史命令
五、相关文件
六、创建useradd
七、树状目录的安装及逐一创建并检查树庄结构下的内容
八、命令passwd 存储及shadow命令下的用户密码
九、usermod命令(修改属性)
十、密码设置
十一、删除命令userdel
前言
一、Linux操作系统用户管理的概念
二、用户管理的类型
三、模板目录
四、查看历史命令
五、相关文件
六、创建useradd
七、树状目录的安装及逐一创建并检查树庄结构下的内容
八、命令passwd 存储及shadow命令下的用户密码
九、usermod命令(修改属性)
十、密码设置
十一、删除命令userdel
总结
前言
今天主要介绍一下LinuX操作系统中关于用户管理的一些信息
提示:以下是本篇文章正文内容,下面案例可供参考
一、Linux操作系统用户管理的概念
-
用户账户:每个可以进行登录的用户都需要拥有一个账户,账户可以用来识别和验证用户的身份。账户的创建和管理都由系统管理员来进行。
-
用户组:用户组是用来管理用户权限的组合,在Linux系统中,用户可以同时属于多个用户组。每个文件和目录都有一个所有者和一个所属组,这些属性可以决定用户能否读写文件或目录。
-
权限:权限用于控制文件和目录的访问权限,包括读、写、执行等操作。文件或目录的所有者、所属组和其他人都有不同的权限。
-
文件和目录的所有权和访问权限:Linux系统中,每个文件和目录都有一个所有者和一个所属组,并且每个文件或目录都有不同的访问权限,它们可以决定用户是否能够读写文件或目录。
-
添加用户:添加用户需要使用adduser命令,新用户的信息会保存到系统文件中。
-
删除用户:删除用户需要使用deluser命令,同时也要记得删除该用户的所有文件。
-
修改密码:修改密码需要使用passwd命令,需要输入旧密码才能修改新密码。
二、用户管理的类型
1、超级管理员用户
超级管理员主要识别是否是root和#这两个必备的条件来确定当前状态下是否为管理员用户
超级管理员用户的权限的特点是可以使用所有系统及程序命令
在Linux操作系统中,UID是指用户ID(User ID),是Linux系统中用来标识用户的数字ID。
每个用户在Linux系统中都有一个唯一的UID,这个UID是系统内部用来识别不同用户的数字编号,系统管理员可以用这个UID来对不同用户进行管理和授权。
在Linux中,UID为0的用户是超级管理员(也就是root用户),其余用户通常是从1000开始分配的非特权用户。当一个用户创建了一个文件或目录时,该文件或目录的所有者UID就会设置为该用户的UID。
UID也用于系统安全性方面的考虑,因为只有UID为0的超级管理员才能进行关键系统操作,其他用户只能按照分配给他们的权限执行相应的操作。因此,使用UID和权限机制可以保证系统的安全性和稳定性。
2、普通用户
普通用户主要是以#标识来参考当前状态下是否为普通用户,与超级管理员不同的是普通用户只可以使用有限的系统命令和具有使用权限的程序命令。
在Linux系统中,UID从0到999是保留给系统内部特定用户(例如,root用户)和特殊组的,因此,普通用户的UID通常从1000开始。在大多数Linux发行版中,普通用户的UID编号范围通常是1000到65535。
3、程序用户
程序用户是比较特殊的一种用户、程序用户可以运行指令但不允许登录系统和创建家目录
UID编号范围也与普通用户和超级管理员用户大不相同,程序用户的UID编号范围通常是1到999。
三、模板目录
在Linux系统中,模板目录指的是包含一些常用文件模板的目录,这些模板可以帮助用户快速创建新的文件,并且每个模板都包含了常用的文件结构和格式。Linux系统中的模板目录通常位于用户的主目录下,路径为~/Templates
。
模板目录中通常包含了一些预设的文件模板,例如:
- 空白文本文件模板
- 空白RTF文件模板
- 空白ODT文件模板
- Shell脚本模板
- C程序模板
- Python程序模板
- LibreOffice Calc电子表格模板
- LibreOffice Impress演示文稿模板
用户可以在模板目录中添加或删除自己的文件模板,以满足不同的需求。例如,如果你是一名开发人员,可以在模板目录中添加一个包含了常用文件头注释和函数结构的C程序模板,这样就可以更快地创建一个新的C程序文件并进行编写。
模板目录的主要特点是当用户新建并创建家目录时,复制该目录下的所有内容
主要作用是定义用户登录终端时的显示样式及环境变量设置。
输入该命令~/.bashrc可在模板模式下定义显示样式。
模板目录下的家目录显示异常一般分为两种情况:第一种是用户在使用过程中误删家目录,第二种是在操作家目录迁移过程中出现的异常
模板模式下家目录异常的解决办法:把/etc/skel/的内容移动到/opt(mv /etc/skel/* /opt)
创建用户user03,显示结果异常 -bash-4.2$ 修复 使用user03用户按此路径输入cp /opt/.bashrc /home/user03 输入后再输入exit退出,退出后在输入su - user03进行验证,直至异常结果的不显示-bash-4.2$为结束。
四、查看历史命令
-
history
命令:该命令可以列出当前用户在当前终端窗口下所执行的所有命令历史记录。可以使用该命令加上一个数字参数来指定显示最近多少条历史记录,例如,history 10
将只显示最近的10条历史记录,默认保留1000条 -
Ctrl + R
快捷键:在命令行下,按下Ctrl + R
组合键,将会进入反向搜索模式,可以查找并执行之前执行过的命令。 -
!!
命令:该命令可以执行上一条历史命令,即"!"字符后不加参数的形式。例如,执行sudo apt-get update
命令之后,可以直接执行sudo !!
来再次执行该命令。 -
!n
命令:该命令可以执行历史记录中的第n条命令,其中n为命令的序号。例如,执行history
命令查看历史记录,然后操作第10条历史命令,可以使用!10
来执行。
五、相关文件
/etc/passwd 存储用户信息
/etc/shadow 存储用户密码信息
/etc/group 存储组信息
六、创建useradd
在Linux中,useradd
命令用于创建新的用户账户。该命令的语法如下:
useradd [option] username
其中,option
为可选参数,username
表示要创建的新用户的用户名。
下面是一些常用的useradd
命令选项:
-c
:设置用户账户的描述信息。-d
:设置用户的主目录,默认情况下,新用户的主目录会被创建在/home
目录下,其名称与用户的用户名相同。-s
:设置用户登录后所采用的默认shell。-m
:自动创建用户主目录。-g
:指定用户的主组group(GID)。-G
:指定用户所属的其他组。-e
:设置账户的过期时间。-d:指定用户的家目录
-f:密码过期后,账户被彻底禁用之前的天数0表示立即禁用,-1 表示禁用这个功能。
-N:不创建同名的组
-p:加密后的新账户密码
-u:新账户的用户ID
例如,要创建一个名为"john"的新用户,可以执行以下命令:
useradd john
默认情况下,这个新用户不属于任何组,并且没有登录密码。可以使用passwd
命令为该用户设置密码,使用usermod
命令来修改用户所属的组和其他属性,使用userdel
命令来删除该用户。
七、树状目录的安装及逐一创建并检查树庄结构下的内容
1、树状目录安装第一方法从光驱中找到安装包导入
2、在根目录下输入:rpm -ivh /run/media/root/CentOS 7 x86_64/Packages/tree-1.6.0-10.el7.x86_64.rpm 即可成功安装(如下图所示)
3、如何逐一创建树状结构下的内容
输入:mkdir -p {aa/{cc/gg,dd},bb/{ee/hh,ff}} (如下图显示)
成功创建后 输入上面安装的 tree . 则显示正确的树状结果
八、命令passwd 存储及shadow命令下的用户密码
1、根目录下的passwd是存储用户信息
2、在根目录下输入tail -1 /etc/passwd命令,输入后显示以下内容
user10:x:1014:1014::/home/user10:/bin/bash(该显示为存储用户的信息)
显示内容为:用户名:密码占位符:用户ID:组ID:用户描述信息:用户家目录:登录shell
3、根目录下的shadow是存储用户密码信息
在根目录下输入tail -1 /etc/shadow命令,输入后显示以下内容
user2:!!:19522:0:99999:7:::(该显示为储存用户的密码信息)
显示内容为:用户名:密码:用户创建时间:密码最短使用期限:密码最长使用期限:密码过期提醒时
间:密码过期后的宽容时间:密码过期时间:没用
九、usermod命令(修改属性)
1、usermod
usermod
是一个 Linux 命令,用于修改用户账户信息。它可以用于修改用户的用户名、主目录、用户组等等。一般来说,只有系统管理员才有权利使用这个命令。
使用 usermod
命令需要指定要修改的用户名以及要修改的选项。例如,以下是修改用户密码的命令:
sudo usermod -p PASSWORD USERNAME
其中,PASSWORD
是新密码的加密后字符串(可以使用 openssl
生成),USERNAME
是要修改密码的用户名。
注意,修改用户账户信息是一项敏感操作,务必小心操作,确保正确性。
- -d,--home-dir
修改用户的家目录
usermod -d /path username - -e, --expiredate
修改用户的失效时间
usermod-e YYYY-MM-DD username - -f, --inactive
密码过期后,账户被彻底禁用之前的天数。0表示立即禁用,-1 表示禁用这个功能。
usermod -f n (n为数字) username - -g, --gid
用户初始登录组(基本组)的组名或GID。组名必须已经存在。组号码必须指代已经存在的组。
usermod -g GID username - -G, --groups
修改用户的附加组,该组必须已经存在
usermod -G GID username - -L, --lock
锁定用户密码,账户不能登录系统
usermod -L username - -m, --move-home
与-d选项配合,将老的家目录内容移动到-d指定的新家目录
usermod -m -d /newdirpath username - -p, --password PASSWORD
修改账户密码
usermod -p 加密后的密码 username - -s, --shell SHELL
修改账户的登录 shell
usermod-s shell的路径 username - -u, --uid UID
修改账户的用户 ID
usermod -u 指定的ID号 username
十、密码设置
Linux中密码设置有两种:passwd和chpasswd
1、passwd
用于单个密码设置,输入以下命令和步骤可解除密码锁定
-U, --unlock 解除密码锁定 usermod -U username
主要语法 passwd [选项] username
主要选项有以下几种
- -l, --lock
锁定用户密码,账户不能登录系统
passwd -l username
- --stdin
读取标准输入的内容作为密码
passwd --stdin username - -u, --unlock
解除密码锁定
passwd -u username - -d, --delete
删除用户密码
passwd -d username - -e, --expire
设置密码有效期
passwd -e YYYY-MM-DD username - -S, --status
查看给定账户的密码状态(锁定或不锁定)
passwd -S username
非交互式修改密码的步骤:echo a | passwd --stdin user1
2、chpasswd
主要是批量用户设置密码
主要语法
生成用户与密码的对应关系
username:password
echo -e "username1:password1\nusername2:password2" [> filename]
echo -e "username1:password1\nusername2:password2" | chpasswd
chpasswd < filename < 重定向输入
cat filename | chpasswd
十一、删除命令userdel
主要语法是:userdel [选项] username
选项只有一种:-r, --remove
用户主目录中的文件将随用户主目录和用户邮箱一起删除。在其它文件系统中的文件必须手动搜索并删除。
userdel -r username
案例流程如下:
现有用户user2 useradd user2
查看/home中的user2文件的属性
drwx------ 5 user2 user2 128 6月 14 11:36 user2
删除user2用户 userdel user2
查看/home中的user2文件的属性
drwx------ 5 1002 1002 128 6月 14 11:36 user2
新建用户user3 useradd user3
查看/home中的user2文件的属性
drwx------ 5 user3 user3 128 6月 14 11:36 user2
drwx------ 3 user3 user3 78 6月 14 11:50 user3
再次创建user2用户 useradd user2
查看/home中的user2文件的属性
drwx------ 5 user3 user3 128 6月 14 11:36 user2
drwx------ 3 user3 user3 78 6月 14 11:50 user3
切换到user2用户 su - user2
发现家目录异常
su: 警告:无法更改到 /home/user2 目录: 权限不够
-bash: /home/user2/.bash_profile: 权限不够
-bash-4.2$
总结
这些是Linux操作系统用户管理中的主要概念,对于Linux系统管理员来说,熟悉这些概念非常重要,以上这些命令可以帮助我们很方便地查看和执行历史命令,希望我们大家一起加油努力,牢记这些命令,提高了命令行使用效率。
目录
一、Linux操作系统用户管理的概念
二、用户管理的类型
三、模板目录
四、查看历史命令
五、相关文件
六、创建useradd
七、树状目录的安装及逐一创建并检查树庄结构下的内容
八、命令passwd 存储及shadow命令下的用户密码
九、usermod命令(修改属性)
十、密码设置
十一、删除命令userdel
前言
一、Linux操作系统用户管理的概念
二、用户管理的类型
三、模板目录
四、查看历史命令
五、相关文件
六、创建useradd
七、树状目录的安装及逐一创建并检查树庄结构下的内容
八、命令passwd 存储及shadow命令下的用户密码
九、usermod命令(修改属性)
十、密码设置
十一、删除命令userdel
总结
前言
今天主要介绍一下LinuX操作系统中关于用户管理的一些信息
提示:以下是本篇文章正文内容,下面案例可供参考
一、Linux操作系统用户管理的概念
-
用户账户:每个可以进行登录的用户都需要拥有一个账户,账户可以用来识别和验证用户的身份。账户的创建和管理都由系统管理员来进行。
-
用户组:用户组是用来管理用户权限的组合,在Linux系统中,用户可以同时属于多个用户组。每个文件和目录都有一个所有者和一个所属组,这些属性可以决定用户能否读写文件或目录。
-
权限:权限用于控制文件和目录的访问权限,包括读、写、执行等操作。文件或目录的所有者、所属组和其他人都有不同的权限。
-
文件和目录的所有权和访问权限:Linux系统中,每个文件和目录都有一个所有者和一个所属组,并且每个文件或目录都有不同的访问权限,它们可以决定用户是否能够读写文件或目录。
-
添加用户:添加用户需要使用adduser命令,新用户的信息会保存到系统文件中。
-
删除用户:删除用户需要使用deluser命令,同时也要记得删除该用户的所有文件。
-
修改密码:修改密码需要使用passwd命令,需要输入旧密码才能修改新密码。
二、用户管理的类型
1、超级管理员用户
超级管理员主要识别是否是root和#这两个必备的条件来确定当前状态下是否为管理员用户
超级管理员用户的权限的特点是可以使用所有系统及程序命令
在Linux操作系统中,UID是指用户ID(User ID),是Linux系统中用来标识用户的数字ID。
每个用户在Linux系统中都有一个唯一的UID,这个UID是系统内部用来识别不同用户的数字编号,系统管理员可以用这个UID来对不同用户进行管理和授权。
在Linux中,UID为0的用户是超级管理员(也就是root用户),其余用户通常是从1000开始分配的非特权用户。当一个用户创建了一个文件或目录时,该文件或目录的所有者UID就会设置为该用户的UID。
UID也用于系统安全性方面的考虑,因为只有UID为0的超级管理员才能进行关键系统操作,其他用户只能按照分配给他们的权限执行相应的操作。因此,使用UID和权限机制可以保证系统的安全性和稳定性。
2、普通用户
普通用户主要是以#标识来参考当前状态下是否为普通用户,与超级管理员不同的是普通用户只可以使用有限的系统命令和具有使用权限的程序命令。
在Linux系统中,UID从0到999是保留给系统内部特定用户(例如,root用户)和特殊组的,因此,普通用户的UID通常从1000开始。在大多数Linux发行版中,普通用户的UID编号范围通常是1000到65535。
3、程序用户
程序用户是比较特殊的一种用户、程序用户可以运行指令但不允许登录系统和创建家目录
UID编号范围也与普通用户和超级管理员用户大不相同,程序用户的UID编号范围通常是1到999。
三、模板目录
在Linux系统中,模板目录指的是包含一些常用文件模板的目录,这些模板可以帮助用户快速创建新的文件,并且每个模板都包含了常用的文件结构和格式。Linux系统中的模板目录通常位于用户的主目录下,路径为~/Templates
。
模板目录中通常包含了一些预设的文件模板,例如:
- 空白文本文件模板
- 空白RTF文件模板
- 空白ODT文件模板
- Shell脚本模板
- C程序模板
- Python程序模板
- LibreOffice Calc电子表格模板
- LibreOffice Impress演示文稿模板
用户可以在模板目录中添加或删除自己的文件模板,以满足不同的需求。例如,如果你是一名开发人员,可以在模板目录中添加一个包含了常用文件头注释和函数结构的C程序模板,这样就可以更快地创建一个新的C程序文件并进行编写。
模板目录的主要特点是当用户新建并创建家目录时,复制该目录下的所有内容
主要作用是定义用户登录终端时的显示样式及环境变量设置。
输入该命令~/.bashrc可在模板模式下定义显示样式。
模板目录下的家目录显示异常一般分为两种情况:第一种是用户在使用过程中误删家目录,第二种是在操作家目录迁移过程中出现的异常
模板模式下家目录异常的解决办法:把/etc/skel/的内容移动到/opt(mv /etc/skel/* /opt)
创建用户user03,显示结果异常 -bash-4.2$ 修复 使用user03用户按此路径输入cp /opt/.bashrc /home/user03 输入后再输入exit退出,退出后在输入su - user03进行验证,直至异常结果的不显示-bash-4.2$为结束。
四、查看历史命令
-
history
命令:该命令可以列出当前用户在当前终端窗口下所执行的所有命令历史记录。可以使用该命令加上一个数字参数来指定显示最近多少条历史记录,例如,history 10
将只显示最近的10条历史记录,默认保留1000条 -
Ctrl + R
快捷键:在命令行下,按下Ctrl + R
组合键,将会进入反向搜索模式,可以查找并执行之前执行过的命令。 -
!!
命令:该命令可以执行上一条历史命令,即"!"字符后不加参数的形式。例如,执行sudo apt-get update
命令之后,可以直接执行sudo !!
来再次执行该命令。 -
!n
命令:该命令可以执行历史记录中的第n条命令,其中n为命令的序号。例如,执行history
命令查看历史记录,然后操作第10条历史命令,可以使用!10
来执行。
五、相关文件
/etc/passwd 存储用户信息
/etc/shadow 存储用户密码信息
/etc/group 存储组信息
六、创建useradd
在Linux中,useradd
命令用于创建新的用户账户。该命令的语法如下:
useradd [option] username
其中,option
为可选参数,username
表示要创建的新用户的用户名。
下面是一些常用的useradd
命令选项:
-c
:设置用户账户的描述信息。-d
:设置用户的主目录,默认情况下,新用户的主目录会被创建在/home
目录下,其名称与用户的用户名相同。-s
:设置用户登录后所采用的默认shell。-m
:自动创建用户主目录。-g
:指定用户的主组group(GID)。-G
:指定用户所属的其他组。-e
:设置账户的过期时间。-d:指定用户的家目录
-f:密码过期后,账户被彻底禁用之前的天数0表示立即禁用,-1 表示禁用这个功能。
-N:不创建同名的组
-p:加密后的新账户密码
-u:新账户的用户ID
例如,要创建一个名为"john"的新用户,可以执行以下命令:
useradd john
默认情况下,这个新用户不属于任何组,并且没有登录密码。可以使用passwd
命令为该用户设置密码,使用usermod
命令来修改用户所属的组和其他属性,使用userdel
命令来删除该用户。
七、树状目录的安装及逐一创建并检查树庄结构下的内容
1、树状目录安装第一方法从光驱中找到安装包导入
2、在根目录下输入:rpm -ivh /run/media/root/CentOS 7 x86_64/Packages/tree-1.6.0-10.el7.x86_64.rpm 即可成功安装(如下图所示)
3、如何逐一创建树状结构下的内容
输入:mkdir -p {aa/{cc/gg,dd},bb/{ee/hh,ff}} (如下图显示)
成功创建后 输入上面安装的 tree . 则显示正确的树状结果
八、命令passwd 存储及shadow命令下的用户密码
1、根目录下的passwd是存储用户信息
2、在根目录下输入tail -1 /etc/passwd命令,输入后显示以下内容
user10:x:1014:1014::/home/user10:/bin/bash(该显示为存储用户的信息)
显示内容为:用户名:密码占位符:用户ID:组ID:用户描述信息:用户家目录:登录shell
3、根目录下的shadow是存储用户密码信息
在根目录下输入tail -1 /etc/shadow命令,输入后显示以下内容
user2:!!:19522:0:99999:7:::(该显示为储存用户的密码信息)
显示内容为:用户名:密码:用户创建时间:密码最短使用期限:密码最长使用期限:密码过期提醒时
间:密码过期后的宽容时间:密码过期时间:没用
九、usermod命令(修改属性)
1、usermod
usermod
是一个 Linux 命令,用于修改用户账户信息。它可以用于修改用户的用户名、主目录、用户组等等。一般来说,只有系统管理员才有权利使用这个命令。
使用 usermod
命令需要指定要修改的用户名以及要修改的选项。例如,以下是修改用户密码的命令:
sudo usermod -p PASSWORD USERNAME
其中,PASSWORD
是新密码的加密后字符串(可以使用 openssl
生成),USERNAME
是要修改密码的用户名。
注意,修改用户账户信息是一项敏感操作,务必小心操作,确保正确性。
- -d,--home-dir
修改用户的家目录
usermod -d /path username - -e, --expiredate
修改用户的失效时间
usermod-e YYYY-MM-DD username - -f, --inactive
密码过期后,账户被彻底禁用之前的天数。0表示立即禁用,-1 表示禁用这个功能。
usermod -f n (n为数字) username - -g, --gid
用户初始登录组(基本组)的组名或GID。组名必须已经存在。组号码必须指代已经存在的组。
usermod -g GID username - -G, --groups
修改用户的附加组,该组必须已经存在
usermod -G GID username - -L, --lock
锁定用户密码,账户不能登录系统
usermod -L username - -m, --move-home
与-d选项配合,将老的家目录内容移动到-d指定的新家目录
usermod -m -d /newdirpath username - -p, --password PASSWORD
修改账户密码
usermod -p 加密后的密码 username - -s, --shell SHELL
修改账户的登录 shell
usermod-s shell的路径 username - -u, --uid UID
修改账户的用户 ID
usermod -u 指定的ID号 username
十、密码设置
Linux中密码设置有两种:passwd和chpasswd
1、passwd
用于单个密码设置,输入以下命令和步骤可解除密码锁定
-U, --unlock 解除密码锁定 usermod -U username
主要语法 passwd [选项] username
主要选项有以下几种
- -l, --lock
锁定用户密码,账户不能登录系统
passwd -l username
- --stdin
读取标准输入的内容作为密码
passwd --stdin username - -u, --unlock
解除密码锁定
passwd -u username - -d, --delete
删除用户密码
passwd -d username - -e, --expire
设置密码有效期
passwd -e YYYY-MM-DD username - -S, --status
查看给定账户的密码状态(锁定或不锁定)
passwd -S username
非交互式修改密码的步骤:echo a | passwd --stdin user1
2、chpasswd
主要是批量用户设置密码
主要语法
生成用户与密码的对应关系
username:password
echo -e "username1:password1\nusername2:password2" [> filename]
echo -e "username1:password1\nusername2:password2" | chpasswd
chpasswd < filename < 重定向输入
cat filename | chpasswd
十一、删除命令userdel
主要语法是:userdel [选项] username
选项只有一种:-r, --remove
用户主目录中的文件将随用户主目录和用户邮箱一起删除。在其它文件系统中的文件必须手动搜索并删除。
userdel -r username
案例流程如下:
现有用户user2 useradd user2
查看/home中的user2文件的属性
drwx------ 5 user2 user2 128 6月 14 11:36 user2
删除user2用户 userdel user2
查看/home中的user2文件的属性
drwx------ 5 1002 1002 128 6月 14 11:36 user2
新建用户user3 useradd user3
查看/home中的user2文件的属性
drwx------ 5 user3 user3 128 6月 14 11:36 user2
drwx------ 3 user3 user3 78 6月 14 11:50 user3
再次创建user2用户 useradd user2
查看/home中的user2文件的属性
drwx------ 5 user3 user3 128 6月 14 11:36 user2
drwx------ 3 user3 user3 78 6月 14 11:50 user3
切换到user2用户 su - user2
发现家目录异常
su: 警告:无法更改到 /home/user2 目录: 权限不够
-bash: /home/user2/.bash_profile: 权限不够
-bash-4.2$
总结
这些是Linux操作系统用户管理中的主要概念,对于Linux系统管理员来说,熟悉这些概念非常重要,以上这些命令可以帮助我们很方便地查看和执行历史命令,希望我们大家一起加油努力,牢记这些命令,提高了命令行使用效率。