1.1 Linux 是什么
Linux 不是某一个单独的软件,而是一套以 Linux kernel 为核心的操作系统生态。你在服务器、云主机、容器、Android、树莓派和很多开发环境里都会遇到它。
三层心智模型
初学 Linux 时,可以先把它拆成三层:
- kernel:系统核心,负责管理 CPU、内存、磁盘、网络和进程。
- distribution:发行版,例如 Ubuntu、Debian、Fedora、Arch、Rocky Linux。发行版把 kernel、软件包、默认配置和工具组合成可安装系统。
- shell:命令解释器,例如 bash、zsh、fish。你在终端里输入的命令先交给 shell,再由 shell 调用程序或系统能力。
这三个词经常混在一起说,但它们不是同一件事。你日常输入 ls、cd、grep 时,主要是在和 shell 以及各种命令行工具打交道;当命令读文件、启动进程或访问网络时,最终会通过 kernel 完成。
正在加载概念检查...
为什么开发者必须懂一点 Linux
很多线上服务运行在 Linux 上。即使你写的是前端、Python、Java、数据库脚本或 AI 应用,也经常需要 SSH 到一台机器上查看日志、改配置、重启服务、确认端口、排查权限。
你不需要一开始就背完整命令大全。更好的学习路线是:
- 先学会安全观察:我是谁、在哪、有哪些文件、发生了什么。
- 再学会小范围修改:创建目录、复制文件、编辑配置、改权限。
- 最后学会系统排查:进程、服务、日志、网络、软件包。
注意
真实终端里不要随便复制陌生命令,尤其是带有
sudo、rm、chmod、chown、curl | sh 的命令。先弄清楚它会查看什么、修改什么、删除什么。在沙盒里摸一摸终端
下面这个实验器不会操作你的真实电脑。它模拟了一个小型 Linux 文件系统,你可以点击命令观察当前目录和文件列表怎样变化。
正在加载交互实验...
shell 的工作方式
当你输入:
bash
cat README.mdshell 会把它拆成“程序名 + 参数”。这里的程序名是 cat,参数是 README.md。如果当前目录里存在这个文件,cat 会把文件内容输出到终端。
这就是命令行学习的关键:命令不是咒语,而是对系统提出的具体请求。
正在加载概念检查...
本章先记住这几个安全命令
| 命令 | 用途 | 是否改变文件 |
|---|---|---|
whoami | 查看当前用户 | 否 |
pwd | 查看当前目录 | 否 |
ls | 查看目录内容 | 否 |
cat file | 输出短文件内容 | 否 |
man command | 查看命令手册 | 否 |
mkdir name | 创建目录 | 是 |
touch file | 创建文件或更新时间戳 | 是 |
rm file | 删除文件 | 是 |
先练会“观察命令”,你在服务器上就不容易一上来做危险操作。
正在加载本节练习...