Linux:用户账号管理、用户组管理、磁盘管理、进程管理

Linux - 02

一、Linux 账号管理

1. 概述

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

  2. 用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问,另一方面也可以帮助用户组织文件,并为用户提供安全性保护;

  3. 每个用户账号都拥有一个唯一的用户名和各自的口令(登录密码);

  4. 用户在登录时键入正确的用户名和口令后,就能够进入系统和自己的主目录;

  5. 实现用户账号的管理,要完成的工作主要有如下几个方面:

    • 用户账号的添加、删除与修改;

    • 用户口令的管理;

    • 用户组的管理。

  6. 添加用户账号就是在系统中创建一个新账号,然后为新账号分配用户号、用户组、主目录和登录 Shell 等资源。

2. 指令

指令说明
useradd -m 用户名添加用户账号-m 表示:用户目录如果不存在,则自动建立
userdel -r 用户名删除用户账号-r 表示:把用户目录一起删除
usermod + 参数 + 要修改的内容 + 用户名修改用户账号,具体使用看下面的说明补充第 4 - 6 点
passwd + 用户名root 权限下,设置用户密码
passwd普通用户权限下,修改用户密码
su - 用户名切换用户,具体使用看下面的说明补充第 8 - 9 点
passwd -l + 用户名锁定账户,具体使用看下面的说明补充第 10 点
passwd -u + 用户名解锁账户,具体使用看下面的说明补充第 11 点
id + 用户名显示用户的用户 id(uid)、组 id(gid),所属组(groups)

指令说明补充

  1. Linux 中一切皆文件,添加用户账号,就是在 /etc/passwd/etc/shadow/etc/group 等系统文件中写入了用户的信息;

    • /etc/passwd :保存用户信息;
    • /etc/shadow :保存用户密码(加密);
    • /etc/group:保存组信息。
  2. 创建的用户账号的主目录,保存在 /home 目录下;

  3. 删除用户账号同理,即本质是在系统文件中删除用户的记录;

  4. 修改用户账号 usermod 时,有以下参数可以选择:

    • l :修改用户名,如:usermod -l sun7777 sun3285 ,可以将旧用户名 sun3285 修改为新用户名 sun7777;
    • d :修改用户主目录路径,和 m 一起连用,注意:路径必须为绝对路径;
    • m :将主目录内容移动至新位置,和 d 一起连用,使用方式见第 5 点
    • u :修改用户 id(uid),如:usermod -u 1002 sun3285 ,将用户 sun3285 的用户 id 修改为 1002;
    • g :修改用户初始组(主组),如:usermod -g group sun3285 ,将用户 sun3285 的初始组修改为 group;
    • G :修改用户附加组,如:usermod -G group1,group2 sun3285 ,将用户 sun3285 加入到 group1 和 group2 中;
    • L :临时锁定用户,如:usermod -L sun3285 ,将用户 sun3285 临时锁定;
    • U :解锁用户,如:usermod -U sun3285 ,将用户 sun3285 解锁;
    • e :修改用户失效日期,如:usermod -e 2027-01-01 sun3285 ,用户 sun3285 将在 2027 年 1 月 1 日失效。
  5. 修改用户名的最佳实践,假设现将用户 sun3333 的用户名修改为 sun7777:

    • 第一步usermod -l sun7777 -d /home/sun7777 -m sun3333 ,修改用户名、主目录路径以及移动主目录内容;
      • 注意 1:主目录路径为绝对路径
      • 注意 2:新的主目录 sun7777 应为自动创建,而不应该提前存在,否则执行不成功。
    • 第二步groupmod -n sun7777 sun3333 ,修改组的名字;
    • 第三步id sun7777 ,查看用户信息,看是否修改成功。
  6. 修改用户账号时,要在 root 权限下,否则,要在指令前加 sudo管理员权限运行命令;

  7. 通过 root 用户创建普通用户后,要给普通用户配置密码

  8. 关于切换用户的说明

    • su 是最简单的用户切换指令,通过该命令可以实现任何身份的切换,包括从普通用户切换为 root 用户、从 root 用户切换为普通用户以及普通用户之间的切换;
    • 普通用户之间切换以及普通用户切换至 root 用户,都需要知晓对方的密码,只有正确输入密码,才能实现切换。而从 root 用户切换至其他用户,无需知晓对方密码,直接可切换成功;
    • 在 Linux 中,输入密码是不会显示的,并且设置密码时,不能太简单;
    • susu -区别
      • su :只切换用户,环境变量不变;
      • su - :表示在切换用户身份的同时,所用的工作环境也切换为此用户的环境(包括 PATH 变量、MAIL 变量等);
      • 说明:环境变量是用来定义操作系统环境的,因此,如果系统环境没有随用户身份切换,很多命令无法正确执行。
  9. 关于切换用户的使用

    • $ 表示普通用户# 表示 root 用户
    • root 用户切换为普通用户、普通用户之间相互切换:su - 用户名
    • 普通用户切换为 root 用户:su -
    • 退回到原来用户,可以在终端输入:exitlogout 或快捷方式 Ctrl + D
  10. 锁定账户有两种方法,假设要锁定 user01 账户:

    • 方法 1usermod -L user01 (L 是大写);
    • 方法 2passwd -l user01 (l 是小写)。
  11. 解锁账户有两种方法,假设要解锁 user01 账户:

    • 方法 1usermod -U user01 (U 是大写);
    • 方法 2passwd -u user01 (u 是大写)。
  12. 只有 root 用户才有权限对账户进行锁定和解锁

  13. 在锁定或解锁账户后,可以在 /etc/shadow 文件中检查用户的帐户状态,如果帐户已被锁定,密码前面将添加感叹号

3. 指令实际操作

操作 1:添加用户账号、修改用户名、删除用户账号

操作 2:分别在 root 权限和普通用户权限下,设置或修改用户密码

操作 3:切换用户

操作 4:锁定和解锁账户


二、Linux 用户组管理

1. 概述

  1. Linux 系统可以对一个用户组中的所有用户进行集中管理

  2. 用户组的管理主要有用户组的添加、删除和修改,本质上是对 /etc/group 文件的修改;

  3. 在 Linux 系统中,每个用户都有一个初始组(主组)和多个附加组

    • 初始组(主组)是用户创建后默认分配的组,通常情况下,这个组的名称与用户的用户名相同
    • 附加组是一个用户可以属于的额外组,可以根据需要进行添加或删除,一个用户可以同时属于多个附加组
  4. 初始组(主组)与附加组之间的区别

    • 初始组(主组)是在创建用户时自动分配的,而附加组则是用户自行添加的;
    • 一个用户只能有一个初始组(主组),但可以属于多个附加组

2. 指令

指令说明
groupadd + 参数 + 用户组创建用户组,可以不写参数,具体使用看下面的说明补充第 1 点
groupdel + 用户组删除用户组
groupmod + 参数 + 要修改的内容 + 用户组修改用户组,具体使用看下面的说明补充第 2 点
gpasswd + 用户组设置或修改用户组密码
newgrp + 要切换的用户组切换用户的用户组,具体使用看下面的说明补充第 5 - 7 点

指令说明补充

  1. 创建用户组的参数有:
    • g :可以在创建用户组时,指定用户组的组标识号 gid,如:groupadd -g 1002 sun ,创建一个 gid 为 1002 的用户组 sun;
    • 不加参数:创建的新用户组的 gid 为当前已有的最大 gid + 1,如:groupadd sun ,创建一个用户组 sun。
  2. 修改用户组的参数有:
    • g :修改用户组的组标识号 gid,如:groupmod -g 1003 sun ,将用户组 sun 的 gid 修改为 1003;
    • n :修改用户组的名字,如:groupmod -n sunshine sun ,将用户组 sun 的名字修改为 sunshine;
    • 可以结合使用:如同时修改用户组的 gid 和名字:groupmod -g 1003 -n sunshine sun
  3. 创建新的用户组后,可以给用户组配置密码
  4. 修改用户的初始组(主组)和附加组使用 usermodgG 参数,具体方法见上一节 Linux 账号管理的内容;
  5. 如果一个用户同时属于多个组(包括主组和附加组),那么用户可以在这些组之间切换,以便具有其他组的权限
  6. 用户切换组的前提条件
    • 在当前用户下执行指令;
    • 要切换的组确实是该用户的主组或附加组。
  7. 用户切换组,就是从用户的附加组中选择一个组,作为用户新的初始组,用户在不同的组中新建文件时,文件会各自属于不同的组;
  8. 查看某个用户属于哪些组,包括主组和附加组,有以下 2 种方式:
    • groups + 用户名;
    • id + 用户名。
  9. 查看某个组中有哪些用户,有以下 2 种方式:
    • 在系统文件 /etc/group 中,可以查看到某个组的所有组成员;
    • getent group + 组名,查找原理还是从 /etc 目录中的数据库文件进行查询,并获取指定组的用户。

3. 指令实际操作

操作 1:创建用户组、修改用户组、删除用户组、设置用户组密码

操作 2:修改用户的附加组、查看某个用户属于哪些组

操作 3:查看某个组中有哪些用户

操作 4:用户切换组


三、Linux 磁盘管理

指令说明
df列出文件系统整体的磁盘使用量
df -h方便阅读的形式来显示结果
du + 目录地址显示指定的目录或文件所占用的磁盘空间
du -h + 目录地址方便阅读的形式来显示结果

指令实际操作


四、Linux 进程管理

1. 概述

  1. Linux 进程是操作系统中运行的程序的实例,每个进程都有自己的内存空间和执行环境,它们彼此隔离,以确保安全性和稳定性;
  2. 每个进程都有唯一的标识符,即进程号 PID 和相关的资源,例如内存、文件描述符和 CPU 时间;
  3. 在 Linux 中,进程的创建和管理是由操作系统内核负责的,内核通过调度器决定哪些进程可以运行,并根据优先级和其他策略对其进行调度;
  4. 在 Linux 中,每一个程序都有自己的一个进程,并且,每一个进程都有一个父进程
  5. 进程分为前台进程后台进程,基本的程序都是前台运行,一般服务都是后台运行的。

2. 指令

指令说明
ps -aux|grep + 进程名字查看当前系统中正在执行的指定进程的信息,具体使用看下面的说明补充第 1 点
ps -ef|grep + 进程名字查看指定进程的父进程的信息
kill -9 + PID强制结束或杀掉进程号 PID 的进程

指令说明补充

  1. ps 指令用来查看当前系统中正在执行的各种进程的信息,对第一条指令的解释
    • a :显示当前的进程;
    • u :面向用户的显示格式;
    • x :显示后台运行进程的参数;
    • | :在 Linux 中叫做管道符,使用管道符可以将两个命令分隔开,左边命令的输出就会作为右边命令的输入
    • grep查找文件中符合条件的字符串,在这里用来过滤进程信息;
    • 一般将以上参数和指令结合使用,如查找 mysql 相关的进程信息:ps -aux|grep mysql
  2. 查看父进程的信息有两种方法
    • 方法 1:通过 ps -ef 指令;
    • 方法 2:通过进程树结构来查看,指令为 pstree -pu
    • 这两种方法后面都可以通过管道符,然后利用 grep 指令来查找想要搜索的进程。
  3. 强制结束进程中的 -9 参数为固定的。

3. 指令实际操作

操作 1:查看当前系统中正在执行的指定进程的信息

操作 2:查看指定进程的父进程的信息


补充:

  1. Linux 的帮助指令
指令说明
man 指令help 指令更详细
指令 -help简要地显示指令以及参数的使用说明
  1. Linux 中的粘贴快捷键Shift + Insert
  2. 指令 rm -rf 后跟多个文件,可以一起删除多个文件,如:rm -rf sun6666 sun7777
  3. 一些其他指令
指令说明
hostname查看主机名
hostname + 新的主机名修改主机名,修改完成后,重新连接,就可以显示新的主机名

  1. /etc/passwd 文件中保存了用户信息每一行代表了一个用户

  • 22
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Sun 3285

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值