CodeGym /课程 /Docker SELF /创建用户和组,设置访问权限,管理进程

创建用户和组,设置访问权限,管理进程

Docker SELF
第 2 级 , 课程 6
可用

创建用户和组,设置访问权限,管理进程

1. 问题描述

接下来是一个高强度的实践环节,这里你可以应用之前课程中学到的所有知识。我们会创建用户,把他们分组,设置独特的访问权限,并管理系统中的进程。如果你在想:“这有什么用啊?”,试着想象自己是个系统管理员或 DevOps 工程师,需要配置一台服务器让团队协作。或者,只是想拯救自己的电脑免于混乱!在现实中,这种情况还蛮常见的。

你的目标是为以下用户和进程配置系统:

  1. 创建两个用户:user1user2。他们需要在 developers 组中协作。
  2. 配置一个文件(比如 project.txt),让只有 developers 组的成员可以编辑它。
  3. 创建一些进程(比如用 sleep 命令),并学习如何在必要时终止它们。
  4. 查看活动进程以确定哪些占用了最多资源。

有计划了吧?让我们一步步实现它。


2. 第一步:创建用户

1. 创建用户

我们先创建两个用户:

sudo adduser user1
sudo adduser user2

运行这些命令时,系统会要求您设置密码并输入每个用户的描述信息。这里我们可以忽略这些额外信息,只需按 Enter 即可。

每个用户都会在 /home 中自动生成一个主目录。你可以用下面的命令来检查:

ls /home
提示:

如果你在本地操作,请别忘了使用 sudo 提升到管理员权限。 如果你是在 WSL 下操作,注意 WSL 的用户系统可能会有点特殊。例如,WSL 默认用户已经是系统管理员。


3. 第2步:创建组并添加用户

1. 创建组

为了让用户可以共同协作项目,我们需要将他们加入一个组。首先,我们创建一个组developers

sudo groupadd developers

2. 将用户添加到组

现在,我们将用户user1user2加入到developers组中。使用usermod命令来完成这项任务:

sudo usermod -aG developers user1
sudo usermod -aG developers user2

3. 检查组成员身份

为了确认用户已正确添加到组,运行以下命令:

groups user1
groups user2

你应该会看到user1user2developers组的成员。


4. 第 3 步:管理文件和权限

1. 为项目创建文件

我们在其中一个用户的主目录中创建文件 project.txt(比如 user1):

sudo -u user1 touch /home/user1/project.txt

sudo -u 命令允许我们以其他用户的身份执行操作。

2. 修改文件的所有者和组

将文件的所有者设置为 user1,组设置为 developers,这样两个用户可以拥有相同的访问权限:

sudo chown user1:developers /home/user1/project.txt

3. 设置文件权限

现在我们修改文件的权限。使用命令 chmod

sudo chmod 660 /home/user1/project.txt

我们做了什么?我们给 user1 (所有者)和 developers(组)赋予了读写的权限 rw-,其他人没有任何权限。

你可以用 ls 命令检查权限:

ls -l /home/user1/project.txt

预期结果:

-rw-rw---- 1 user1 developers 0 日期 时间 /home/user1/project.txt

5. 第4步: 启动进程

1. 启动进程

为了实验,我们用 sleep 命令创建几个“长时间运行”的进程:

sleep 300 &
sleep 400 &
sleep 500 &

每个 sleep 命令通过符号 & 在后台运行。

要检查进程列表,使用命令 ps

ps

使用 ps aux 可以查看更多信息:

ps aux | grep sleep

6. 第五步: 结束进程

1. 按 PID 结束进程

找到一个进程的 PID(比如 sleep),用下面的命令结束它:

kill PID

这里 PID 是进程的标识符,可以通过 ps 找到。

2. 按名字结束进程

如果你想终止所有 sleep 进程,使用命令 killall

killall sleep

3. 使用 pkill

如果你记不清进程的完整名字,pkill 可以通过部分名字匹配终止进程:

pkill slee

7. 第6步:监控进程

为了监控系统负载,可以使用:

  1. top — 实时工作:

       top
    

    在这里你可以查看 CPU、内存使用率以及活动进程。使用组合键 k 可以直接从界面终止进程。

  2. htop — 更方便的界面(如果你安装了它):

    htop
    
    退出请按 F10

8. 检查清单

完成所有步骤后,请确认以下几点:

  1. 已创建两个用户 user1user2
  2. 已创建并配置组 developers,并将两个用户加入该组。
  3. 已创建文件 project.txt,仅限 developers 组访问。
  4. 通过命令 killkillallpkill 创建并终止了一些进程。
  5. 成功用 pstophtop 查看了进程列表。

如果以上都完成了——恭喜你!你已经掌握了Linux系统中关于用户、组、访问权限和进程管理的所有基础步骤。愿命令行的强大与你同在!

1
Опрос
Linux初学命令,  2 уровень,  6 лекция
недоступен
Linux初学命令
Linux初学命令
评论
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION