序言

# 序言

Debian 参考手册（版本 2.143） (2026-07-10 14:59:15 UTC) 旨在为作为一份安装后用户指南，为 Debian 系统的使用与管理提供宽泛的概览。

本书的目标读者：愿意学习 shell 脚本，但是不准备为了理解 GNU/Linux 系统是如何运作的而阅读其所有 C 语言源代码的人。

如需系统安装指导信息，请见：

- Debian GNU/Linux 当前稳定版安装手册

- Debian GNU/Linux 当前测试版安装手册

## 1. 免责声明

所有担保条款具有免责效力。所有商标均为其各自商标所有者的财产。

Debian 系统本身是一个变化的事物。这导致其文档难于及时更新并且正确。虽然是以 Debian 系统当前的 `测试版` 作为写作该文档的基础，但当你阅读本文的时候，部分内容仍然可能已经过时。

请把本文档作为第二参考。本文档不能够代替任何官方指导手册。文档作者和文档贡献者对在本文档中的错误、遗漏或歧义，不承担责任后果。

## 2. 什么是 Debian

Debian 项目是一个由个人组成的团体，该团体的成员均把创建一个自由操作系统作为共同事业。Debian 的发布具有下文所列的特征。

- 承诺软件自由：Debian 社群契约和 Debian 自由软件指导方针（DFSG）

- 基于因特网上无酬劳的志愿者的工作发布：https://www.debian.org

- 大量预编译的高质量软件包

- 专注于稳定性和安全性，同时易于获取安全更新

- 在 `testing` 版仓库中注重软件包最新版本的平滑升级

- 支持大量硬件架构

Debian 系统中的自由软件来自GNU, Linux, BSD, X, ISC, Apache, Ghostscript, Common Unix Printing System , Samba, GNOME, KDE, Mozilla, LibreOffice, Vim, TeX, LaTeX, DocBook, Perl, Python, Tcl, Java, Ruby, PHP, Berkeley DB, MariaDB, PostgreSQL, SQLite, Exim, Postfix, Mutt, FreeBSD, OpenBSD, Plan 9 以及许多更加独立的自由软件项目。 Debian 将上述各种各样的自由软件集成到一个系统里面。

## 3. 关于本文档

### 3.1. 指导原则

写作本文档时，遵循下列指导原则。

- 仅提供概览，而忽略边界情况。（Big Picture 原则）

- 保持文字简短紧凑。（KISS 原则）

- 不重复造轮子。（使用链接指向已有参考）

- 专注于使用非图形的工具和控制台。（使用 shell 例子）

- 保持客观。（使用 popcon 等等。）

| 提示
我试图阐明操作系统底层和体系结构的各方面内容。

### 3.2. 预备知识

| 警告
阅读本文档，你需要通过自己的努力去查找本文档未提及的问题答案。本文档仅仅提供有效的起点。

你必须自己从以下原始材料查找解决方案。

- Debian 网站（https://www.debian.org）上的通用信息

- "`/usr/share/doc/package_name`" 目录下的文档

- Unix 风格的 manpage: "`dpkg -L package_name |grep '/man/man.*/'`"

- GNU 风格的 info page: "`dpkg -L package_name |grep '/info/'`"

- 错误报告：https://bugs.debian.org/package_name

- Debian Wiki（https://wiki.debian.org/）用于变化和特定的话题

- 国际开放标准组织的的单一 UNIX 规范 UNIX 系统主页上

- 自由的百科全书：维基百科（https://www.wikipedia.org/）

- Debian 管理员手册

- 来自 Linux 文档项目(TLDP)的 HOWTO

| 注意
软件包的详细文档，你需要安装软件包名用 "`-doc`" 作为后缀名的相应文档包来得到。

### 3.3. 排版约定

本文通过如下使用 bash(1) shell 命令例子的简要方式来提供信息。

    # command-in-root-account
    $ command-in-user-account

这些 shell 提示符区分了所使用的帐户。为了可读性，在本手册中 shell 提示符相关的环境变量被设置为“`PS1='\$'`”和“`PS2=' '`。这与实际安装的系统所使用的 shell 提示符很有可能会不同。

所有的命令示例都是运行在英语语言环境“`LANG=en_US.UTF8`”下的。请不要期望命令示例中像 `command-in-root-account` 和 `command-in-user-account` 这样的占位符会被翻译。这么做是为了保持所有翻译示例都是最新的。

| 注意
参见在 bash(1) 中对环境变量 “`$PS1`” 和 “`$PS2`” 的解释。

要求系统管理员执行的操作，须用祈使句描述，如“在 shell 中输入命令字符串后，键入 Enter 键。”

这些描述列或类似信息在表格有一个名词短语，后面会紧跟软件包短描述，这些短语会省略掉前面的"a"和"the"。它们也可以包含一个不定式短语作名词短语，在联机帮助的短命令描述约定后面不带 "to"。有些人可能觉得这看起来有点可笑，这里故意保留这种风格是为了让文档看起来尽可能的简单。这些名词短语在短命令描述约定里并不会采用首字母大写的方式。

| 注意
无论专有名词和命令名位于何处，保持其英文字母大小写不变。

在文本段落中引用的命令片断由双引号括起来的打印机字体进行标记，就像"`aptitude safe-upgrade`"。

在文本段落中引用的来自配置文件的文本数据由双引号括起来的打印机字体进行标记，就像"`deb-src`"。

命令和置于其后的圆括号内的手册页章节数（可选），由打字机字体进行标记，就像 bash(1)。我们鼓励您这样通过输入以下命令来获得信息。

    $ man 1 bash

manpage 会在打字机字体后面括号中显示 manpage 页章节号，如 sources.list(5)。建议你通过键入以下命令来获取帮助信息。

    $ man 5 sources.list

info page 页是由双引号之间的打字机字体来标注，如 `info make`。建议你通过键入以下的命令来获取帮助信息。

    $ info make

文件名将由双引号括起来的打印机字体进行标记，就像 "`/etc/passwd`"。对于配置文件，你可以输入下列的命令来获取它的信息。

    $ sensible-pager "/etc/passwd"

目录名将由双引号括起来的打印机字体进行标记，就像 "`/etc/apt/`"。你可以输入下列的命令来浏览目录的内容。

    $ mc "/etc/apt/"

软件包名称将由打印机字体进行标记，就像 `vim`。你可以输入下列的命令来获取它的信息。

    $ dpkg -L vim
    $ apt-cache show vim
    $ aptitude show vim

一个文档可能通过文件名来指示它的位置，文件名将由双引号括起来的打印机字体进行标记，就像"`/usr/share/doc/base-passwd/users-and-groups.txt.gz`"和"`/usr/share/doc/base-passwd/users-and-groups.html` "，或通过它的 URL，就像 https://www.debian.org。你可以通过输入下列命令来阅读文档。

    $ zcat "/usr/share/doc/base-passwd/users-and-groups.txt.gz" | sensible-pager
    $ sensible-browser "/usr/share/doc/base-passwd/users-and-groups.html"
    $ sensible-browser "https://www.debian.org"

环境变量将由双引号括起来的打印机字体进行标记，并带有 "`$`" 前缀，就像 "`$TERM`"。你可以输入下列命令来获取它的当前值。

    $ echo "$TERM"

### 3.4. popcon 流行度

popcon 数据被用来客观地衡量每个包的流行度。它的下载时间为 2026-06-25 08:29:27 UTC，包含了超过 218050 个二进制软件包和 25 个架构的全部 279505 份提交。

| 注意
请注意 `amd64` `不稳定（unstable）` 版的软件仓库中只包含当前 77003 软件包。popcon 数据包含许多旧系统安装报告。

以“V:”开头表示“votes”的 popcon 数值计算方式为“1000 * （当前运行在 PC 上的包的 popcon 提交）/ （总的 popcon 提交）”。

以“I:”开头表示“安装数”的 popcon 数值计算方式为“1000 * （当前安装在 PC 上的包的 popcon 提交）/ （总的 popcon 提交）”。

| 注意
流行度评比 popcon 数据不应视为对包的重要性的绝对度量。有许多因素可以影响统计数据。例如，参与流行度评比的某些系统可能有像“`/usr/bin`”的目录，挂载的时候带“`noatime`”选项以提升系统性能，这样的系统有效的禁用了“投票（vote）”功能。

### 3.5. 软件包大小

软件包的大小数据同样表明了对每个包的客观衡量。它基于“`apt-cache show`”或“`aptitude show`”命令（目前在`amd64` 架构的`不稳定`版）报告的“`安装大小：`”。报告的大小单位是 KiB（Kibibyte=表示 1024 Bytes 的单位）。

| 注意
包大小是一个小数值的包可能显示了这个在“`不稳定`”版的包是一个虚拟包，它包含关于依赖关系的重要内容，会安装其他的包。虚拟包使能平稳过度或分割一个包。

| 注意
包大小后面跟着 "(*)" 表明这个软件包在`不稳定`版本中是缺失的同时使用了`实验性`版本中的软件包大小来替代。

### 3.6. 给本文档报告 Bug

如果你发现本文档有任何问题，请使用 reportbug(1) 向 `debian-reference` 软件包报告 bug。对纯文件版本或源代码的改进建议，请使用 "`diff -u`" 包含在 bug 报告里面。

## 4. 一些对新使用者的提醒

这里给出对新用户的一些提醒信息：

- 备份你的数据

  - 参见 第 10.2 节 “备份和恢复”。

- 妥善保存你的密码和安全信息

- KISS（保持简单而傻瓜式）

  - 不要在系统中过度设计（overengineering）

- 阅读你的日志文件

  - 第一条 错误信息才是最重要的

- RTFM（阅读手册与指导）

- 在问问题前，先在互联网上搜索

- 当不是必须要使用 root 的时候，就不要使用 root

- 不要胡乱折腾软件包管理系统

- 不要输入任何你不理解的命令

- （在完全地检查过安全问题之前）不要随意修改文件权限

- 在测试过你所做的修改之前不要关闭 root shell

- 总是保留一个替代的启动媒介(U 盘、CD-ROM, …)

## 5. 一些对新使用者的引导

从 Debian 邮件列表来的一些有趣引文，说不定可以帮助新使用者启蒙。

- “这是 Unix。它给你足够的绳索来吊死你自己。”--- Miquel van Smoorenburg `<miquels at cistron.nl>`

- “Unix 是用户友好的……它仅仅选择谁是它的朋友。”--- Tollef Fog Heen `<tollef at add.no>`

维基百科文章"Unix 哲学"列出了一些有趣的指导。

Debian 参考手册 |  | 第 1 章 GNU/Linux 教程