外观
实训 02:完成第一次 Linux 服务器巡检
约 2024 字大约 7 分钟
云计算实训第02次课
2026-07-30
任务情境
你已经能够从 WSL 登录 ECS。现在,团队准备在这台服务器上安装第一个 Web 服务。安装之前,需要先确认目录、权限、软件包、进程、内存和磁盘状态,并留下可以复查的巡检记录。
本次实训不按“敲了多少命令”打分,看重的是证据完整、权限修改最小,以及能否解释巡检结果。
学习成果
完成后,你应该能:
- 用账号、主机和目录说明命令运行位置;
- 安全地创建、复制、移动和检查实验文件;
- 读懂所有者、所属组和其他人的基本权限;
- 不使用
chmod 777完成一次最小权限修复; - 查找自己的测试进程并安全停止;
- 使用
free、df、du和进程列表判断资源状态; - 编写并解释一份最小巡检脚本。
开始前
阅读课程作业提交规范,新建:
班级_学号_姓名_第02次课_Linux服务器巡检.docx解压配套包,填写其中的 server-inspection-report-template.docx。
A 路径:ECS 已可用
所有命令在 [ECS] 执行,完成真实服务器巡检。
B 路径:ECS 暂不可用
在 [WSL] 完成相同任务,在标题和每张截图中明确标注 WSL。服务器可用后,重新运行 server-check.sh 并补交 ECS 资源证据。
安全边界
- 所有练习只在
~/cloud-course/lab-02中进行。 - 修改、删除或覆盖前先执行
whoami、hostname和pwd。 - 不修改
/etc、/usr、/var中的系统文件。 - 不使用
chmod -R 777、rm -rf或来源不明的安装脚本。 - 不停止不认识的系统进程。
- 截图隐藏用户名、主机名、公网地址和其他个人信息。
任务 1:路径、目录和文件站
确认位置并建立实验目录:
[ECS] whoami
[ECS] hostname
[ECS] mkdir -p ~/cloud-course/lab-02/evidence
[ECS] cd ~/cloud-course/lab-02
[ECS] pwd创建并整理文件:
[ECS] touch notes.txt
[ECS] printf 'lesson-02 baseline\n' > notes.txt
[ECS] cp notes.txt evidence/notes-copy.txt
[ECS] mv evidence/notes-copy.txt evidence/baseline.txt只读检查:
[ECS] ls -lah
[ECS] file notes.txt
[ECS] stat notes.txt
[ECS] find . -maxdepth 2 -type f -print
[ECS] du -sh .检查点:
pwd指向自己的lab-02;- 能说明
notes.txt和./notes.txt为什么都能指向当前目录中的文件; - 能从
stat找到所有者、权限和时间信息; find的结果只位于实验目录。
写入 Word:
- 图 1“当前账号、主机与实验目录”;
- 图 2“实验文件结构与属性”;
- 每张图写明运行位置、关键输出和结论。
任务 2:权限错误定位与修复
在实验目录中创建脚本:
[ECS] nano permission-demo.sh写入:
#!/usr/bin/env bash
printf 'permission demo passed\n'保存后故意保留不可执行状态:
[ECS] chmod 640 permission-demo.sh
[ECS] ls -l permission-demo.sh
[ECS] ./permission-demo.sh看到 Permission denied 后,不要使用 chmod 777。按顺序检查:
[ECS] id
[ECS] stat -c 'owner=%U group=%G mode=%A (%a)' permission-demo.sh
[ECS] chmod u+x permission-demo.sh
[ECS] ls -l permission-demo.sh
[ECS] ./permission-demo.sh写入 Word:
现象:
执行者:
文件所有者:
修复前权限:
真正缺少的权限:
采取的最小修改:
修复后验证:
为什么不使用 chmod 777:至少插入“修复前”和“修复后”两张可对比截图。
任务 3:确认软件包与测试进程
检查 curl:
[ECS] command -v curl
[ECS] dpkg -l | grep '^ii' | grep curl
[ECS] apt-cache policy curl如教师允许,可以刷新软件包索引:
[ECS] sudo apt update不要自行执行全系统升级,也不要安装与课程无关的软件。
启动并查找自己的测试进程:
[ECS] sleep 300 &
[ECS] demo_pid=$!
[ECS] ps -p "$demo_pid" -o pid,user,stat,etime,cmd
[ECS] kill "$demo_pid"
[ECS] ps -p "$demo_pid"检查点:
- 能解释 PID、用户、状态和运行时间;
kill的目标是自己刚创建的sleep;- 停止后再次查询,确认它已经退出。
写入 Word:
- 图 3“curl 命令与软件包状态”;
- 图 4“测试进程启动、核对和停止”;
- 解释为什么不能看到一个 PID 就直接
kill -9。
任务 4:完成资源巡检
执行:
[ECS] uptime
[ECS] nproc
[ECS] free -h
[ECS] df -hT /
[ECS] lsblk -f
[ECS] du -xh --max-depth=1 "$HOME" 2>/dev/null | sort -h
[ECS] ps -eo pid,user,comm,%cpu,%mem --sort=-%mem | head从输出中形成至少四条结论:
- CPU 核数与当前负载是否匹配;
available内存还有多少;- 根文件系统使用率是否需要关注;
- 家目录中哪个一级目录占用较大;
- 哪个进程当前内存占用较高。
别只写“正常”或“不正常”,要用输出里的字段或具体数值作依据。
写入 Word:
- 图 5“CPU 与内存证据”;
- 图 6“磁盘、目录占用和高资源进程”;
- 图下填写四条带依据的巡检结论。
任务 5:编写 server-check.sh
在 ~/cloud-course/lab-02 中创建脚本:
[ECS] nano server-check.sh脚本至少包含:
- 检查时间;
- 当前账号、主机和目录;
- 系统、CPU 核数和负载;
- 内存;
- 根文件系统;
- 家目录占用;
- 内存占用较高的前五个进程。
可以从本课正文的最小脚本开始,但必须逐行说明输出用途。
运行:
[ECS] bash -n server-check.sh
[ECS] ls -l server-check.sh
[ECS] chmod u+x server-check.sh
[ECS] ./server-check.sh | tee server-check.txt和同桌互换脚本代码,不要给账号、地址和私密配置。运行对方脚本前先用 bash -n 检查并阅读代码,别直接运行来历不明的内容。
写入 Word:
- 粘贴完整脚本代码,使用等宽字体;
- 插入图 7“脚本语法、权限与运行结果”;
- 解释每个检查区块回答了什么问题;
- 记录同伴提出的一条改进建议。
任务 6:运行本地验收
把 verify.sh 放在实验目录中:
[ECS] bash verify.sh --role ecsB 路径使用:
[WSL] bash verify.sh --role wsl验收只检查命令、目录和脚本基本条件,不读取凭据,也不修改系统。出现 [WARN] 时,把提醒写进报告并说明下一步检查,不截掉失败部分。
挑战任务
完成标准任务后任选一项:
- 给巡检脚本增加退出码,并说明什么情况下应该返回非零。
- 使用
find在自己的实验目录中查找超过 1 MiB 的文件,不扫描整个系统。 - 比较文件的
x权限与目录的x权限有什么不同。 - 解释为什么
df显示空间紧张,但du统计结果可能对不上。
Word 提交清单
- 一个规范命名的
.docx; - A/B 路径与命令运行位置;
- 路径、目录和文件证据;
- 权限修复前后对比与最小权限解释;
- 软件包与测试进程证据;
- CPU、内存、磁盘和高资源进程结论;
server-check.sh完整代码、运行结果和解释;- 验收结果、未通过项和下一步;
- 本课复盘。
提交到智慧职教
- 重新打开 Word,确认截图清楚、代码没有被截断。
- 检查所有用户名、主机名和地址已经脱敏。
- 上传到智慧职教在线平台“第02次课”对应作业收集。
- 确认平台显示提交成功,并核对附件名称。
本课默认只提交一个 .docx。除非教师另行要求,不单独上传脚本、输出文件或实验目录。
验收标准
| 等级 | 标准 |
|---|---|
| 保底 | 能在 WSL 完成目录、权限、进程和资源检查,报告结构完整 |
| 标准 | 在 ECS 完成全部分站任务,脚本可运行,能解释至少四条巡检结论 |
| 挑战 | 脚本有合理扩展,能解释权限、退出码或 df/du 差异 |
无论哪个等级,都不能用 chmod 777 逃避权限分析,也不能漏掉截图说明和脱敏检查。
