七、打包装箱与保命三件套
第 11~12 课 · 2026-08-30
最后两课,把前面学的串起来用,并且学「怎么不出事」。
tar:打包装箱
| 命令 | 干什么 |
|---|---|
tar -czf 备份.tar.gz 目录/ |
打包 + 压缩成一个文件 |
tar -xzf 备份.tar.gz |
解开 |
tar -tzf 备份.tar.gz |
只看看包里有什么,不解开 |
字母记法(比死背好记):
| 字母 | 意思 |
|---|---|
c |
create,打包 |
x |
eXtract,解开 |
t |
lisT,查看 |
z |
gzip,压缩 |
f |
File,文件名(这个一定要放最后) |
比喻:
tar就是把一整个档案柜的抽屉装进一个纸箱。搬家用它、备份也用它。
tar -tzf(只看不解)这个用法特别贴心——先确认箱子里是啥再决定要不要开。
我实际的备份场景
把重要目录打包成带日期的备份包:
$(date +%F) 会自动替换成今天的日期(如 2026-08-30),每次跑都生成不同名字的包,不会覆盖上一次的。这个小技巧让备份有了时间轴。
⚠️ 危险命令黑名单
这一课列了个清单,让我印象很深:
| 命令 | 为什么危险 |
|---|---|
rm -rf / |
对准根目录,删光整栋楼 |
rm -rf /* |
同上,换个写法 |
chmod 777 |
门禁卡全撕了,谁都进得去 |
dd if=/dev/zero of=/dev/sda |
整块盘清零,等于夷平 |
网上抄的、看不懂的 rm / 带 sudo 的命令 |
很多是给新手挖的坑 |
最后一条我觉得最重要:看不懂的命令,先用 --help 或问明白再敲,尤其带 sudo 的。
排错三步走
出问题时的固定流程:
systemctl status 服务名—— 先看这个岗位是死是活- 看日志 ——
journalctl -u 服务名或tail /var/log/... - 问自己一句:这报错影响我干的活吗? —— 不影响就是噪音,别慌
第 3 步是心态部分,但很关键。老师原话大意是:服务器日志里永远有一堆红字在滚,绝大多数跟你无关。
三个保命习惯
- 危险命令之前先
ls(删之前确认对象) - 重要目录定期
tar备份(且备份包带日期) - 出事先看日志,按三步走(不要瞎敲)
毕业小测
第 12 课最后有一套组合操作,把 12 课学过的东西串起来做一遍。12 课全部完成(2026-08-30)。
回头看这 12 课
从「网页背后是什么」开始,到能自己看日志、查服务、打备份包结束。
最有用的其实不是某个具体命令,而是三个转变:
- 遇到问题先查,不瞎猜 ——
df -h、systemctl status、tail 日志,三板斧先走一遍 - 动手之前先确认对象 —— 尤其
rm之前 - 知道东西在哪、跑在哪 —— 文件在哪、服务在哪、环境是哪一个
下一步:Python(已 40 课结业)→ SQL(进行中)→ 本课学的 Shell 基础到时候就用上了。