我意识到自己其实并不懂 Linux 的那一天

发布: (2026年3月12日 GMT+8 22:00)
4 分钟阅读
原文: Dev.to

Source: Dev.to

周五下午

那是一个周五的下午,我的经理让我在生产服务器上 tail 一些日志,以调试我们在预发布环境中看到的奇怪问题。
我随意使用 Linux 大约两年,观看了大约 40 小时的教程,读完了 William Shotts 的《The Linux Command Line》一半。我以为自己已经掌握了这门技术。

我 SSH 进去,进入了正确的目录,然后……坐在那里。我知道要用 tail -f,但我的手却一动不动,我在脑子里搜索语法。我的经理正盯着我。我敲下 tail -f,盯着文件名看得像它欠我钱一样。那一刻在我脑海里挥之不去。

学习 vs. 使用 Linux

我学习 Linux 的方式——通过教程、文档和课程——让我了解了 关于 Linux 的知识,却没有教会我 如何 使用它。吸收信息和培养反射之间是有区别的。对于终端操作来说,如果你的手指在轻度压力下没有敲过上百次某个命令,知识就会显得模糊。

我在第一类中花了很长时间,却假装自己已经进入了第二类。

通过 CTF 获得的实战经验

一位参加 CTF(Capture The Flag)比赛的朋友提到,他在三个月的对抗赛中学到的 Linux 知识,比我两年阅读的还多。我持怀疑态度——CTF 听起来像是黑客比赛,和普通开发者或系统管理员没有关系。

我尝试了一下。形式很简单:你得到一个实时终端、一个目标,然后自己去实现。没有人会告诉你怎么做;要么拿到 flag,要么没有。

前几道挑战迫使我与自己以为已经掌握的东西搏斗:使用正确参数的 find、重定向 stderr、基本的文本解析。这种屈辱感却是有益的。大约六周后,我偶尔做几道挑战,发现自己不再犹豫。不是因为记住了更多指令,而是因为我的手真的已经完成了操作。命令变成了习惯,而不是抽象概念。

实践性构建肌肉记忆的方法

如果你想找一个不需要搭建虚拟机或处理配置的入门点,PracticeLinux 是一个不错的选择。它直接在浏览器中运行,第一关不需要账号,让你可以轻松发现自己的真实短板,而无需额外的设置摩擦。

我并不是说教程毫无用处——我仍然会阅读文档。但很多人,包括我自己,往往在被动学习的舒适区停留得太久,因为那种方式让人感觉在进步。

收获

那次周五下午的日志事件令人尴尬,却可能是必要的。有时候必须先让差距显现出来,才能去弥补。如果你现在觉得自己的 Linux 知识更偏理论而非实践,这完全可以修正;只需要一种不同于大多数人想象的练习方式。

0 浏览
Back to Blog

相关文章

阅读更多 »