Linux 入门的关键,是理解命令如何作用于文件、进程和系统,再把这些操作组合成稳定的工作方式。知道当前位置、看懂命令输出、根据错误定位原因,比记住大量参数更有用。
这套指南从终端基础开始,逐步介绍文件管理、文本处理、软件和服务、网络与资源、用户权限,再延伸到远程连接、脚本自动化和备份恢复。每章包含概念说明、命令示例、常见问题与速查,适合第一次接触 Linux,也适合在日常使用中回查。
一、整套指南如何阅读
| 顺序 | 章节 | 主要内容 |
|---|---|---|
| 01 | 目录结构、路径与命令帮助 | 根目录、家目录、工作目录、绝对与相对路径、帮助查询 |
| 02 | 文件与目录的常用操作 | 查看、创建、复制、移动、删除及覆盖规则 |
| 03 | 文本查看、搜索、管道与 Vim | 阅读日志、筛选内容、组合命令、重定向与编辑 |
| 04 | 软件安装、服务管理与环境配置 | 包管理、systemd、环境变量、时间与归档压缩 |
| 05 | 网络、进程与系统资源排查 | 地址、解析、端口、进程、CPU、内存与磁盘指标 |
| 06 | 用户、用户组与权限管理 | 身份、rwx、所有权、默认权限、ACL 与 sudo |
| 07 | SSH 远程连接与文件传输 | 主机身份、密钥认证、SSH 配置、传输与会话管理 |
| 08 | Shell 脚本与定时任务 | 引号、变量、退出状态、条件循环、脚本与 cron |
| 09 | 磁盘挂载与备份恢复 | 设备、文件系统、挂载、归档备份与恢复检查 |
初次阅读可以按顺序进行。前面章节遇到 sudo 时,先把它理解为“按已有授权,以管理员身份执行这条命令”,完整的授权机制在第六章解释。
已经能操作终端的读者,也可以直接按问题进入对应章节:找不到文件看第一章,日志定位看第三章,服务异常看第四、五章,访问权限看第六章。
二、先认识 Linux 的几层组成
日常所说的“Linux 系统”,通常指基于 Linux 内核、配合系统工具和软件组成的发行版。
终端、编辑器、浏览器和业务程序
↓
Shell、命令行工具、系统服务与软件库
↓
Linux 内核:进程、内存、文件系统、网络与设备管理
↓
CPU、内存、磁盘、网卡等硬件
| 名称 | 负责什么 | 例子 |
|---|---|---|
| 内核 | 管理硬件资源,向程序提供系统调用接口 | Linux |
| 发行版 | 把内核、工具、仓库和配置组织成可安装系统 | Debian、Ubuntu、Fedora 等 |
| Shell | 解释命令、展开变量、连接输入输出并启动程序 | Bash、zsh、dash |
| 终端 | 提供输入和显示界面 | 桌面终端窗口、远程终端 |
| 服务 | 持续提供某种能力的程序,常由服务管理器托管 | SSH 服务、Web 服务 |
终端窗口与 Shell 是不同部分。你可以在同一个终端中运行不同 Shell,也可以通过 SSH 在本机终端里操作另一台机器。
不同发行版共享很多基础概念,但包管理、服务名称、默认 Shell 和网络配置方式可能不同。不能只看到“Linux 命令”就假定所有系统的行为完全一致。
三、准备一个可用的 Linux 环境
环境选择以能长期使用、方便恢复为准,不需要为了入门立刻重装自己的电脑。
| 现有条件 | 可选方式 | 需要了解的特点 |
|---|---|---|
| Windows 电脑 | WSL 或 Linux 虚拟机 | WSL 与 Windows 集成方便;虚拟机更接近独立系统 |
| macOS 电脑 | Linux 虚拟机或远程 Linux 主机 | macOS 自带终端使用的内核和部分工具与 Linux 不同 |
| 已有 Linux 桌面 | 直接使用终端 | 先确认发行版和已有用户权限 |
| 已有远程主机 | 通过 SSH 连接 | 需要地址、端口、账号及被授权的认证方式 |
容器很适合运行隔离应用,但其进程、网络和服务管理环境与完整主机可能不同。涉及启动流程、挂载和系统服务时,应明确自己正在操作容器还是主机。
Windows:WSL 的基本入口
在满足 WSL 要求的 Windows 上,可在管理员 PowerShell 中运行:
wsl --install
根据系统提示完成启用、重启和发行版初始化,再创建 Linux 用户。查看已安装发行版和运行版本:
wsl --list --verbose
这些命令在 Windows 侧执行。进入 Linux 后,才使用后续章节中的 pwd、ls 等命令。WSL 是否提供某项服务能力,还取决于其版本与发行版配置。
虚拟机:区分镜像、虚拟磁盘和快照
安装镜像用于启动安装程序,虚拟磁盘用于保存系统和数据。首次安装时明确虚拟磁盘的目标,避免把宿主机磁盘当作安装对象。
快照适合在修改配置前保留可回退状态,但通常依赖原虚拟磁盘;它不能替代独立保存的数据备份。
第一次进入系统,先确认身份与环境
cat /etc/os-release
uname -sr
whoami
id
pwd
这些信息分别回答:系统是什么发行版、运行什么内核、当前是谁、拥有哪些组身份,以及现在位于哪个目录。
多数日常操作使用普通账号即可。安装软件、管理系统服务或修改受保护配置时,再按需要使用 sudo。
四、终端里最先要看懂的内容
提示符与命令不是同一部分
终端可能显示:
aron@web-01:~$
它通常提示用户名、主机名和当前目录。~ 常表示家目录,$ 常用于普通用户提示符,# 常用于 root;这些符号可以自定义,实际身份应使用 id 确认。
本指南的命令代码块不附加提示符,可以复制命令本身。中文“用户名”“目录”等表示需要替换的参数,文中的示例地址和名称也需要与自己的环境对应。
输入密码时没有字符回显
sudo、passwd 或 SSH 请求密码时,终端可能既不显示文字,也不显示星号。这通常是正常行为,输入后按回车即可。
常用按键
| 按键 | 常见作用 | 注意点 |
|---|---|---|
Tab |
补全命令、路径或参数 | 具体能力取决于 Shell 和补全配置 |
| 上下方向键 | 浏览历史命令 | 执行前核对目标路径 |
Ctrl+A、Ctrl+E |
在常见 Bash 编辑模式下移到行首、行尾 | 编辑模式不同可能改变行为 |
Ctrl+R |
搜索命令历史 | 不要把密码和令牌写进命令行 |
Ctrl+C |
通常向前台进程组发送中断信号 | 程序可以自行处理,不保证立即退出 |
Ctrl+D |
空输入时表示输入结束,可能退出当前 Shell | 并不是通用的“强制退出” |
Ctrl+Z |
通常挂起前台任务 | 挂起后任务仍然存在,可用 fg 恢复 |
clear 或 Ctrl+L 通常只清理显示区域,不会删除命令历史,也不会停止正在运行的其他任务。
五、运行一条命令时发生了什么
以这条命令为例:
ls -lh "$HOME/projects"
Bash 大致会完成以下过程:
- 解析引号、选项、变量和重定向等语法。
- 把
$HOME展开成家目录路径。 - 查找要执行的命令,或识别 Shell 内置命令。
- 启动程序并传入参数。
- 等待前台命令结束,保留它的退出状态。
命令输出和退出状态是两种信息。没有输出不一定是失败;打印了一行文字也不一定是成功。
ls /etc
printf '上一条命令的退出状态:%s\n' "$?"
通常 0 表示成功,非 0 表示其他状态,具体含义由命令约定。$? 应立即读取,因为后续命令会覆盖它。第八章会进一步解释如何在脚本中处理这些结果。
六、建立一致的文件与配置管理习惯
把个人内容放到自己的目录中,可以减少不必要的权限问题:
/home/aron/
├── projects/ 项目文件
├── notes/ 个人笔记
├── backups/ 本地备份副本
└── .local/bin/ 个人脚本
这只是目录组织示例,并非系统强制要求。本地备份如果与原数据处在同一块磁盘上,不能覆盖磁盘损坏的风险。
日常修改可以遵循同一条顺序:
确认身份和位置 → 查看当前状态 → 保留必要备份
↓
修改明确的目标
↓
检查结果、退出状态和相关日志
例如,编辑配置之前先确认路径和所属服务;修改后先用软件提供的配置检查功能,再按需要重载或重启服务。不要把“命令没有报错”当作整个功能已经正常的唯一依据。
七、遇到错误时从哪里开始
| 错误或现象 | 首先检查 | 对应章节 |
|---|---|---|
No such file or directory |
当前目录、路径和大小写 | 第一、二章 |
command not found |
软件是否安装、命令名与 PATH | 第一、四章 |
Permission denied |
当前身份、文件与上级目录权限 | 第六章 |
| 服务启动失败 | 单元状态、配置和服务日志 | 第四、五章 |
| 端口无法访问 | 监听地址、路由、访问控制与应用响应 | 第五章 |
| SSH 登录失败 | 服务地址、主机身份、认证和账号权限 | 第七章 |
| 脚本手动运行正常、定时运行失败 | 用户、工作目录、环境、解释器与日志 | 第八章 |
| 磁盘满或恢复失败 | 文件系统、容量、inode、归档内容和目标位置 | 第五、九章 |
记录问题时,保留执行的命令、完整错误、发生时间和相关路径。描述“在哪台机器、以哪个用户、对什么目标执行了什么”,通常比只描述“不能用”更容易定位原因。
开始阅读:第一章:目录结构、路径与命令帮助。

