Debian GNU/Linux 安装手册 版权 © 2004, 2005 Debian Installer 团队 本手册属于自由软件,您可以在 GNU 通用公共许可证(GPL)的协议下重新发布和(或)修改 它。请在附录 E, GNU General Public License(此许可证只有英文原文具有法律效力) 阅 读该许可证的内容。 摘要 本文是 Debian GNU/Linux 3.1 系统(代号 "sarge")在 ARM ("arm") 硬件架构下的安装教 程。还包括关于如何构建您的新 Debian 系统,以及指向更多信息的链接。 警告 本安装指南是基于一份为旧版 Debian 安装系统("boot-floppies") 而撰写的手册,并针 对新的 Debian 安装系统进行了增补和修订。但是,对于 arm 体系结构,本手册尚未针对 新版的安装程序进行完整的更新和实际检测。这使得本手册中可能会存在少量不完整或过 时的、或者仍然在讲述 boot-floppies 安装程序的内容。本手册的新版本,也许会更好的 用于本体系,您可以通过 Internet 在 debian-installer 主页找到它。您还可以在那里 找到另外一些翻译版。 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 目录 在 arm 上安装 Debian GNU/Linux 3.1 1. 欢迎使用 Debian 1.1. 什么是 Debian? 1.2. 什么是 GNU/Linux? 1.3. 什么是 Debian GNU/Linux? 1.4. 获得 Debian 1.5. 获得本文档最新版本 1.6. 文档的组织 1.7. 关于版权与软件协议 2. 系统需求 2.1. 支持的硬件 2.1.1. 支持的体系 2.1.2. CPU,主板和视频支持 2.1.3. 图形卡 2.2. 安装介质 2.2.1. CD-ROM/DVD-ROM 2.2.2. 硬盘 2.2.3. 网络 2.2.4. Un*x 或 GNU 系统 2.2.5. 受支持的存储系统 2.3. 外围设备与其他硬件 2.4. 特别为 GNU/Linux 采购硬件 2.4.1. 避免专有或封闭的硬件 2.4.2. 假的或"虚拟"的奇偶校验内存 2.5. 内存与磁盘空间的需求 2.6. 网络连接硬件 3. 开始安装 Debian GNU/Linux 之前 3.1. 安装概述 3.2. 记得备份您的所有数据! 3.3. 一些有用的信息 3.3.1. 文档 3.3.2. 提供硬件信息的资源 3.3.3. 硬件兼容性 3.3.4. 网络设置 3.4. 满足最低的硬件要求 3.5. 为多重启动系统事先分区 3.6. 安装前的硬件和操作系统的相关设置 3.6.1. 需要留心的硬件问题 4. 获取系统安装介质 4.1. 官方的 Debian GNU/Linux 光盘套装 4.2. 从 Debian 镜像服务器下载文件 4.2.1. 在哪里能找到安装映像 4.3. 为使用 TFTP 网络引导准备文件 4.3.1. 设置 RARP 服务器 4.3.2. 设置 BOOTP 服务器 4.3.3. 设置 DHCP 服务器 4.3.4. 开启 TFTP 服务器 4.3.5. 将 TFTP 映像放到适当的位置 4.4. 自动化安装 4.4.1. 使用 Debian 安装程序进行自动安装 5. 用安装系统启动 5.1. 在 ARM 上引导安装程序 5.1.1. 从 TFTP 引导 5.1.2. 从 CD 光盘上引导 5.2. 引导参数 5.2.1. Debian 安装程序的参数 5.3. 安装过程中的故障修复 5.3.1. 引导配置 5.3.2. 内核起始信息注解 5.3.3. Bug Reporter 5.3.4. 提交缺陷报告 6. 使用 Debian 安装程序 6.1. 安装程序如何工作 6.2. 组件介绍 6.3. 使用单独的组件 6.3.1. 启动 Debian 安装程序与配置硬件 6.3.2. 分区与选择挂载点 6.3.3. 安装基本系统 6.3.4. 创建启动系统 6.3.5. 完成第一阶段 6.3.6. 杂项 7. 启动进入新 Debian 系统 7.1. 关键时刻 7.2. Debian 启动之后(基本)设置 7.2.1. 配置您的时区 7.2.2. 设置用户和密码 7.2.3. 设置 PPP 7.2.4. 配置 APT 7.2.5. 软件包安装 7.2.6. 软件安装过程中的命令 7.2.7. 配置您的邮件传输代理(MTA) 7.3. 登录 8. 下一步该干什么 8.1. 如果您不熟悉 Unix 8.2. 让您自己转向 Debian 8.2.1. Debian 软件包系统 8.2.2. 应用程序版本管理 8.2.3. 定时任务管理 8.3. 更多信息 8.4. 编译新内核 8.4.1. 内核映象管理 A. 安装指南 A.1. 前言 A.2. 安装套件的引导 A.2.1. CDROM A.2.2. 从网络启动 A.2.3. 从硬盘启动 A.3. 安装 A.4. 请给我们发一份安装报告 A.5. 末了...... B. 为 Debian 准备分区 B.1. 决定 Debian 分区以及大小 B.2. 目录树 B.3. 推荐的分区方案 B.4. Linux 里面的设备名称 B.5. Debian 分区程序 C. 其他 C.1. 预设置文件实例 C.2. Linux 里的设备 C.2.1. 设定您的鼠标 C.3. 各软件集所需的磁盘空间 C.4. 通过 Unix/Linux 系统来安装 Debian GNU/Linux C.4.1. 准备运动 C.4.2. 安装 debootstrap C.4.3. 运行 debootstrap C.4.4. 基系统的配置 C.4.5. 内核的安装 C.4.6. Boot Loader 的设置 D. 文案 D.1. 关于本文档 D.2. 帮助本文档 D.3. 主要贡献人员 D.4. 商标确认 E. GNU General Public License(此许可证只有英文原文具有法律效力) E.1. Preamble E.2. GNU GENERAL PUBLIC LICENSE E.3. How to Apply These Terms to Your New Programs 表格清单 3.1. 安装所需的硬件信息 3.2. 推荐的最低系统配置 在 arm 上安装 Debian GNU/Linux 3.1 我们非常高兴地看到您决定试用 Debian,并确信您将发现 Debian 的 GNU/Linux 发行版 是独一无二的。Debian GNU/Linux 将带给您来自世界各地的高质量的自由软件,并将它们 整合成一个紧密的整体。您会发现整合后的结果一定会大于将各部分简单地相加。 我们也知道大多数用户都希望能够不用阅读本手册而直接安装 Debian。Debian 安装程序 的设计意图也就是尽力实现这个想法。如果您现在的确没有时间来阅读整个安装手册,我 们推荐您看看安装指南一文。该文包含了基本安装过程的简要介绍,以及当处理运行错误 或需要较专业内容时查询本手册的链接。您可以在附录 A, 安装指南阅读此文。 正如前面所提到的,我们还是希望您能抽出时间来阅读本手册的大部分内容。这通常都会 使您的安装体验变得更详尽、更成功。 第 1 章 欢迎使用 Debian 目录 1.1. 什么是 Debian? 1.2. 什么是 GNU/Linux? 1.3. 什么是 Debian GNU/Linux? 1.4. 获得 Debian 1.5. 获得本文档最新版本 1.6. 文档的组织 1.7. 关于版权与软件协议 本章将简要介绍 Debian 计划和 Debian GNU/Linux。如果您已经对 Debian 计划的历史和 Debian GNU/Linux 发行版有一定的了解,请略过本章。 1.1. 什么是 Debian? Debian 是一个致力于自由软件开发并宣扬自由软件基金会之理念的自愿者组织。Debian 计划创建于 1993 年。当时,Ian Murdock 发出一份公开信,邀请软件开发者们参与构建 一个基于较新的 Linux 内核的完整而紧密的软件发行版。经过多年的成长,那群由自由软 件基金会资助并受 GNU 哲理影响的爱好者已经演变为一个拥有大约 900 位 Debian 开发 人员的组织。 Debian 开发人员所做的工作包括有: Web 和 FTP 站点管理、图形设计、软件许可协议的 法律分析、编写文档,当然,还有维护软件包。 为了传递我们的理念并吸引那些与 Debian 有着相同信仰的开发人员,Debian 计划发表了 众多文档,以阐明我们的价值观和成为 Debian 开发人员的意义。 ● Debian 社群契约是一份 Debian 对自由软件社群的承诺声明。任何同意遵守此社群契 约的人都可以成为维护人员。任何维护人员都能将新软件引入 Debian --条件是此软 件必须满足我们对"自由"的标准要求,并且软件包必须符合我们的质量水准。 ● Debian 自由软件准则(DFSG) 是一份清晰简洁的有关 Debian 的自由软件标准的声明 。在自由软件运动中,DFSG 是一份非常有影响力的文档,并且以其为基础衍生出了开 放源代码定义。 ● Debian 政策文档是一份有关 Debian 计划质量标准的规格说明书。 Debian 开发人员还参与了许多其它计划。有些是专注于 Debian 的,还有些则是面向 Linux 社区。例如: ● Linux Standard Base (LSB) 是一个针对 GNU/Linux 系统标准化的项目,它将使第三 方软件和硬件开发者能更容易的为"普通"的 Linux 设计程序和设备驱动,而不仅仅是 为某个特定的 GNU/Linux 发行版进行开发。 ● Filesystem Hierarchy Standard (FHS) 则是朝 Linux 文件系统布局标准化方向的一 种努力。FHS 将使软件开发者能集中精力设计程序,而不需要担心软件包在不同的 GNU/Linux 发行版的安装。 ● Debian Jr. 是一个内部项目,目标是确保 Debian 能向年幼的用户提供一些有用的东 西。 关于 Debian 的更多信息,请阅读 Debian FAQ。 1.2. 什么是 GNU/Linux? Linux 是一种计算机操作系统:一系列能让您与计算机进行交互操作并运行其它程序的程 序。 操作系统由多种基础程序构成。它们使计算机可以与用户进行交流并接受指令,读取数据 或将其写入硬盘、磁带或打印机,控制内存的使用,以及运行其它软件。操作系统最重要 的组成部分是内核。在 GNU/Linux 系统中,Linux 就是内核组件。而该系统的其余部分主 要是由 GNU 工程编写和提供的程序组成。因为单独的 Linux 内核并不能成为一个可以正 常工作的操作系统,所以我们更倾向使用 "GNU/Linux" 一词来表达人们通常所说的 "Linux"。 Linux 是以 Unix 操作系统为原型创造的。自从诞生之日起,它就被设计成一种多任务、 多用户的系统。这些特点使 Linux 完全不同于其它著名的操作系统。事实上,Linux 比您 所能想象到更加特别。与其它操作系统绝然相反的是,没人真正拥有 Linux,其大部分开 发工作都是由无偿的志愿者完成的。 后来演变为 GNU/Linux 系统的开发工作开始于 1984 年。当时,自由软件基金会开始研发 被称为 GNU 的自由的类 Unix 操作系统。 GNU 工程开发了大量用于 Unix (tm) 的自由软件工具和类 Unix 操作系统,例如 Linux。 这些工具使用户能执行从日常俗事(例如在系统中复制和删除文件) 到神秘操作(例如书写 和编译程序或对多种文档格式进行熟练的编辑工作) 的各种任务。 虽然有许多组织和个人都对 Linux 的发展作出了帮助,但是自由软件基金会依然是最大的 单个贡献者。他不仅仅创造了绝大部分在 Linux 中使用的工具,还为 Linux 的存在提供 了理论和社会基础。 Linux 内核的首次面世是在 1991 年。当时,名为 Linus Torvalds 的芬兰计算机科学系 学生在 Usenet 新闻组 comp.os.minix 上发布了一种 Minix 替代内核的早期版本。请看 Linux International 的 Linux 历史。 在几个可信赖代理人的帮助下,Linus Torvalds 一直协调着数百位开发人员的工作。有关 linux-kernel 邮件列表上讨论内容的每周纪要在 Kernel Traffic上可以看到。更多有关 linux-kernel 邮件列表的信息请参考 linux-kernel 邮件列表问答。 Linux 用户在挑选软件方面有着极大的自由。例如,Linux 用户可以选择几十种不同的命 令行外壳和多种图形桌面。这通常让其它操作系统的用户手足无措,他们甚至从来没想过 命令行和桌面其实是可以更换的。 Linux 很少会崩溃、适合在同一时间运行多个程序,而且比大多数操作系统更为安全。有 了这些优势,Linux 成为在服务器市场上增长最快的操作系统。近来,它还开始在家庭和 商业用户中变得越来越流行。 1.3. 什么是 Debian GNU/Linux? 将 Debian 哲学与方法论,GNU 工具集、Linux 内核,以及其他重要的自由软件结合在一 起所构成的独特的软件发行版称为 Debian GNU/Linux。该发行版由大量的软件包组成。发 行版中的每个软件包都包含了执行文件、脚本、文档和配置信息,并拥有一位维护者,其 职责是保持软件包更新、跟踪 bug 报告,并与软件源作者保持联络。我们巨大的用户群, 结合 bug 跟踪系统可以确保问题被及时发现和修复。 Debian 对细节的注重使我们可以生产出高质、稳定和灵活的发行版。安装程序可以方便地 使之应用到各种场合,从精简的防火墙到桌面科学工作站,甚至高端网络服务器都可以轻 松胜任。 Debian 在高级用户中非常流行的原因在于它具有优秀的技术,而且它对 Linux 的深入贡 献满足了社区的需求与期望。Debian 为 Linux 引入的许多特性现在已经成为了非常通用 的标准。 例如,Debian 是第一种使用包管理系统的 Linux 发行版,它让安装和删除软件变得非常 容易。而且它还是第一个可以不用重新安装就能升级的 Linux 发行版。 Debian 一直充当着 Linux 开发的带头人。它的开发过程是开源开发模式如何工作的范例 -- 即使是用于创建和维护一个完整操作系统这样复杂的任务。 Debian 与其他 Linux 发行版最大的不同之处在于包管理系统的特性。这些工具给予 Debian 系统管理员对安装到系统上的软件包的完全控制,包括安装单个软件包和自动升级 整个操作系统。个别软件包也可以被保护不被升级。您甚至可以告诉包管理系统哪些软件 是您自己编译的以及它们所需要的依赖关系。 为了提防 "特洛伊木马" 和其他恶意软件,更好地保护您的系统,Debian 服务器会校验 Debian 注册维护人员所上传的软件包。Debian 的打包人员也会特别注意以安全的方式配 置软件包。当发布出去的软件包有安全问题时,通常会很快被修复。依靠 Debian 的简易 更新选项,安全更新可以通过互联网自动下载和安装。 为您的 Debian GNU/Linux 系统寻求技术支持和联络 Debian 开发人员的主要的,也是最 好的方法是通过 Debian 计划的邮件列表(书写本文时已有 160 个邮件列表)进行沟通。订 阅这些列表的最简单方法是访问 Debian 邮件列表订阅页并填写相应表单。 1.4. 获得 Debian 关于如何从因特网上下载 Debian GNU/Linux 或者购买官方 Debian 光盘的信息,请参阅 发行网页。Debian 镜像列表包含完整的 Debian 官方镜像,您可以很容易找到最近的一个 。 Debian 可以很容易地在安装之后升级。如果需要,安装步骤将帮助您建立系统,使您可以 在安装之后立即进行升级。 1.5. 获得本文档最新版本 本文档会不断地修订。请查阅 Debian 3.1 页面以了解最近的关于 3.1 版 Debian GNU/ Linux 系统的的信息。更新的安装手册也可以从官方安装手册页得到。 1.6. 文档的组织 本文意在成为 Debian 的新手的使用手册。尽管它对用户的专业知识水平已经做了尽量少 的假设,但我们还是设想您对计算机硬件如何工作有一个基本的了解。 专业用户可以在本手册中找到一些有趣的参考信息,包括最小安装尺寸,Debian 安装程序 支持的硬件细节,等等。我们鼓励专业用户有选择性的浏览本文档。 基本上,本手册是以单线方式组织,文章内容将沿着安装进程由始至终进行。以下是安装 Debian GNU/Linux 的步骤,以及每步相关的章节: 1. 确定您的硬件是否满足安装系统的要求,位于第 2 章系统需求。 2. 备份系统,在安装 Debian 之前进行必要的规划和硬件配置,位于第 3 章开始安装 Debian GNU/Linux 之前。如果需要多重引导系统,您可能需要为 Debian 创建分区空 间。 3. 在第 4 章获取系统安装介质,您可以获得所选安装方式所需要的安装文件。 4. 第 5 章用安装系统启动讲述的是如何启动安装系统。本章还将讨论如何解决这步操作 中会遇到的问题。 5. 执行真正的安装是在第 6 章使用 Debian 安装程序。其中涉及选择语言,设置周边驱 动模块,设置网络连接以从 Debian 服务器上获得后续安装文件(如果您不是采用光盘 方式安装),给硬盘分区和安装最小工作系统。(有关如何为 Debian 系统建立分区的 背景知识位于附录 B, 为 Debian 准备分区。) 6. 从您新安装的基本系统启动,然后执行一些额外的设置任务,第 7 章启动进入新 Debian 系统。 7. 安装额外的软件位于第 7.2.5 节 "软件包安装"。 一旦您安装完系统,可以阅读第 8 章下一步该干什么。该章将解释在哪里寻找更多有关 Unix 和 Debian 的信息,以及如何替换您的内核。 最后,是关于本文档的信息以及如何贡献您的想法,附录 D, 文案。 1.7. 关于版权与软件协议 我们相信您曾经阅读过许多商业软件的许可证 -- 它们通常要求您只能在一台计算机上使 用一份软件拷贝。本系统与它们完全不同。我们鼓励您将拷贝用到您学校或商业机构的每 台计算机上。将安装介质借给朋友,并帮助他们安装到他们的计算机上!您甚至可以制造 上千份拷贝,然后出售它们 -- 虽然有一些限制。您安装和使用系统的自由权利因为 Debian 是基于自由软件。 称软件为自由并不意味着该软件没有版权,也不是指包含该软件的 CD 必须免费分派。自 由软件,某种程度上意味着您不须为分发和使用这些程序付费。自由软件还是指任何人可 以扩展、改写、修改该软件,并且他们工作的成果也这样发布。 注意 注意,Debian 计划因为考虑用户实用性,也有不符合我们自由规则的软件包存在。这些软 件包不属于官方发行版,只存在于 contrib 或 non-free Debian 镜像区域或者第三方的 CD-ROM 中,请参阅 Debian FAQ 的 "The Debian FTP archives" 章节以了解档案布局和 内容的更多信息。 系统中很多软件所使用的许可证都是 GNU General Public License (通用公共许可证), 通常简称为 "the GPL"。GPL 要求您将程序的源码随您发布的二进制拷贝一起提供;许可 证的这项规定确保任何用户都可以修改软件。正是由于此规定,所有这些程序的源码^[1] 都可以在 Debian 系统中得到。 Debian 中的程序还有许多其他形式的版权声明和软件许可证。您可以在您的系统中找到每 个软件包相关的版权和许可证,它们位于 /usr/share/doc/软件包名/copyright ,这些文 件在您将软件包安装到系统后就存在了。 关于 Debian 如何判断软件是否足够自由到可以包括在主发行版中的信息,请参阅 Debian 自由软件准则。 在此,最重要的法律声明是此软件无担保。程序员创造此软件为的是使社群受益,而不能 保证软件适用于任何特定用途。但是,因为软件是自由的,您可以修改此软件以使其能适 用于您的需要 -- 并享用其他人采用这种途径扩展后的修改成果。 ━━━━━━━━━━━━━━ ^[1] 对于如何根据 Debian 源码包寻找、解包和创建二进制软件包,请查阅 Debian FAQ 的"Basics of the Debian Package Management System"章节。 第 2 章 系统需求 目录 2.1. 支持的硬件 2.1.1. 支持的体系 2.1.2. CPU,主板和视频支持 2.1.3. 图形卡 2.2. 安装介质 2.2.1. CD-ROM/DVD-ROM 2.2.2. 硬盘 2.2.3. 网络 2.2.4. Un*x 或 GNU 系统 2.2.5. 受支持的存储系统 2.3. 外围设备与其他硬件 2.4. 特别为 GNU/Linux 采购硬件 2.4.1. 避免专有或封闭的硬件 2.4.2. 假的或"虚拟"的奇偶校验内存 2.5. 内存与磁盘空间的需求 2.6. 网络连接硬件 本章包括运行 Debian 所需硬件的信息。您还能找到更多有关 GNU 和 Linux 所支持硬件 的信息的链接。 2.1. 支持的硬件 Debian 不会超出 Linux 内核与 GNU 工具集所支持的硬件范围之外。因此,任何被移植了 Linux 内核,libc,gcc 等,并拥有对应的 Debian 移植版的硬件体系或平台都可以运行 Debian。请参考移植页面 http://www.debian.org/ports/arm/ 以了解更多已被 Debian 测试过的 ARM 体系。 本章仅包含一些通用的信息以及在何处可以获得更多信息的指导,而不是试图列出支持 ARM 的所有不同硬件配置。 2.1.1. 支持的体系 Debian 3.1 支持十一种主要的体系和一些称为 "flavors" 的变种。 ┌────────────────────┬───────────┬───────────────────────────┬────────────┐ │ 体系 │Debian 命名│ 子体系 │ Flavor │ ├────────────────────┼───────────┼───────────────────────────┼────────────┤ │ │ │ │vanilla │ │ │ │ ├────────────┤ │Intel x86-based │i386 │  │speakup │ │ │ │ ├────────────┤ │ │ │ │linux26 │ ├────────────────────┼───────────┼───────────────────────────┼────────────┤ │ │ │Atari │atari │ │ │ ├───────────────────────────┼────────────┤ │ │ │Amiga │amiga │ │ │ ├───────────────────────────┼────────────┤ │ │ │68k Macintosh │mac │ │Motorola 680x0 │m68k ├───────────────────────────┼────────────┤ │ │ │ │bvme6000 │ │ │ │ ├────────────┤ │ │ │VME │mvme147 │ │ │ │ ├────────────┤ │ │ │ │mvme16x │ ├────────────────────┼───────────┼───────────────────────────┼────────────┤ │DEC Alpha │alpha │  │  │ ├────────────────────┼───────────┼───────────────────────────┼────────────┤ │ │ │ │sun4cdm │ │Sun SPARC │sparc │  ├────────────┤ │ │ │ │sun4u │ ├────────────────────┼───────────┼───────────────────────────┼────────────┤ │ │ │ │netwinder │ │ │ │ ├────────────┤ │ │ │ │riscpc │ │ARM and StrongARM │arm │  ├────────────┤ │ │ │ │shark │ │ │ │ ├────────────┤ │ │ │ │lart │ ├────────────────────┼───────────┼───────────────────────────┼────────────┤ │ │ │CHRP │chrp │ │ │ ├───────────────────────────┼────────────┤ │ │ │PowerMac │pmac │ │IBM/Motorola PowerPC│powerpc ├───────────────────────────┼────────────┤ │ │ │PReP │prep │ │ │ ├───────────────────────────┼────────────┤ │ │ │APUS │apus │ ├────────────────────┼───────────┼───────────────────────────┼────────────┤ │ │ │PA-RISC 1.1 │32 │ │HP PA-RISC │hppa ├───────────────────────────┼────────────┤ │ │ │PA-RISC 2.0 │64 │ ├────────────────────┼───────────┼───────────────────────────┼────────────┤ │Intel ia64-based │ia64 │  │  │ ├────────────────────┼───────────┼───────────────────────────┼────────────┤ │ │ │ │r4k-ip22 │ │ │ │SGI Indy/Indigo 2 ├────────────┤ │MIPS (big endian) │mips │ │r5k-ip22 │ │ │ ├───────────────────────────┼────────────┤ │ │ │Broadcom BCM91250A (SQARM) │sb1-swarm-bn│ ├────────────────────┼───────────┼───────────────────────────┼────────────┤ │ │ │Cobalt │cobalt │ │ │ ├───────────────────────────┼────────────┤ │ │ │ │r4k-kn04 │ │MIPS (little endian)│mipsel │DECstation ├────────────┤ │ │ │ │r3k-kn02 │ │ │ ├───────────────────────────┼────────────┤ │ │ │Broadcom BCM91250A (SQARM) │sb1-swarm-bn│ ├────────────────────┼───────────┼───────────────────────────┼────────────┤ │ │ │IPL from VM-reader and DASD│generic │ │IBM S/390 │s390 ├───────────────────────────┼────────────┤ │ │ │IPL from tape │type │ └────────────────────┴───────────┴───────────────────────────┴────────────┘ 本文档主要讲述的是 ARM 体系下的安装。如果您在寻找其他 Debian 所支持的体系的信息 ,请浏览 Debian 移植页面。 2.1.2. CPU,主板和视频支持 每种 ARM 体系要求使用各自的内核,正因为如此,Debian 标准发布版只支持安装在一些 最常见的系统上。但 Debian userland 可以被包括 xscale 在内的任何 ARM CPU 使用。 大多数的 ARM CPU 可以运行在任一 endian 模式下,但是当前几乎所有的系统实现都是使 用 little-endian 模式。Debian 现在也只支持 little-endian ARM 系统。 获支持的常见系统有 Netwinder 实际上这是一组机器的名称,它们基于 StrongARM 110 CPU 和 Intel 21285 北桥。 包括: Netwinder (也许是最常见的 ARM 机器)、CATS (也称为 EB110ATX)、EBSA 285 和 Compaq personal server (cps,也叫 skiff)。 Bast 此为一种新式的 ARM 920 板子,搭载一枚 266MHz Samsung 处理器。它集成了 IDE、 USB、串口、并口、音频、视频、flash 和两个以太网接口。此系统拥有一个很好的 bootloader (也可以在 CATS 和 Riscstation 系统上找到)。 RiscPC 该机器发布于 1994 年,是最早支持的硬件。它在 ROM 里面包含 RISC OS,Linux 可 以使用 linloader 从该 OS 启动。RiscPC 有一种模块化的 CPU 卡,典型的安装有 30MHz 610, 40MHz 710 或 233MHz Strongarm 110 CPU。主板集成了 IDE、SVGA 视频 卡、并口、单串口、PS/2 键盘和专有的鼠标口。依据不同的配置,专有的模块扩充总 线允许最多安装 8 块扩展卡,其中的一些模块有 Linux 驱动程序。 Riscstation 这是一款廉价的 56MHz 7500FE 机器,它集成有视频、IDE、PS/2 键盘和鼠标,以及 两个串口。由于价格的原由,处理器的能力显得不足。它有两种配置,一个是带有 RISC OS,另一个具有简单的 bootloader。 LART 这是一个由爱好者建立的模块化开放硬件平台。安装 Debian 需要 KSB 扩展板。 2.1.3. 图形卡 Debian 对显卡的支持决定于 XFree86 的 X11 系统。大多数 AGP,PCI 和 PCI 视频卡都 能在 XFree86 下工作。更多的关于图形总线,显卡,显示器和指点设备的支持情况,见 http://www.xfree86.org/。Debian 3.1 包含 XFree86 4.3.0 版。 2.2. 安装介质 本章将帮助您选定安装 Debian 可采用的不同介质。例如,您的电脑上有一个软驱,它就 可以用来安装 Debian。这里有一整章专门用于说明介质:第 4 章获取系统安装介质,并 且列出了每种类型的优缺点。当您阅读那一章的时候,可能要返回来参考本页。 2.2.1. CD-ROM/DVD-ROM 注意 每当在本手册中看到 "CD-ROM",它泛指 CD-ROM 和 DVD-ROM。因为从操作系统的角度看, 它们所用的技术是相同的。这里面除去那些既不属于 SCSI 也不属于 IDE/ATAPI 的老式的 非标准 CD-ROM 驱动器。 一些体系支持基于 CD-ROM 的安装。在支持 CD-ROM 启动的机器上,您可以完成无软盘 (floppy-less) 的安装。即使您的系统不支持从 CD-ROM 启动,您也可以结合其他技术在 启动后,使用 CD-ROM 来安装系统,参阅第 5 章用安装系统启动。 所有的 ARM 机器都支持 IDE/ATAPI CD-ROM。在 RiscPC 上,SCSI CD-ROM 也被支持。 2.2.2. 硬盘 从硬盘启动安装系统是许多体系的另外一个选择。这将要求其他的操作系统从硬盘加载安 装程序。 2.2.3. 网络 您还可以从网络启动(boot) 系统。 无盘安装,使用网络从局域网启动,并用 NFS 挂载所有的本地文件系统,是另一种选择。 在安装了操作系统的内核以后,您可以使用任何一种网络连接方式(包括安装完基本系统以 后使用 PPP) 通过 FTP 或 HTTP 完成剩余的系统安装任务。 2.2.4. Un*x 或 GNU 系统 如果您正在运行其它的类 Unix 系统,也可以用它来安装 Debian GNU/Linux 而无须本手 册剩余部分讲述的 debian-installer 使用方法。这类安装方法可能对那些因为硬件不支 持或机器停产的用户有用。如果您对此技术感兴趣,请直接跳到第 C.4 节 "通过 Unix/ Linux 系统来安装 Debian GNU/Linux"。 2.2.5. 受支持的存储系统 Debian 启动盘包括一个用于最大可能数量系统的内核。不幸的是,这将产生一个大内核, 其中包括许多您的机器并不需要的驱动程序(参考第 8.4 节 "编译新内核"学习如何创建自 己的内核)。在通常情况下,支持最大范围内的设备是一种较合适的设计,这将使得 Debian 可以在尽可能多的硬件上安装。 2.3. 外围设备与其他硬件 Linux 支持众多的硬件设备,比如:鼠标、打印机、扫描仪、PCMCIA 和 USB 设备。然而 ,在安装系统的时候,并不需要其中的大部分设备。 2.4. 特别为 GNU/Linux 采购硬件 现在有一些经销商,他们出售的系统是预装 Debian 或者是其他的 GNU/Linux。您或许会 多花一些钱,但是买来一份安心,因为这些硬件都已经确保能被 GNU/Linux 很好地支持。 无论是购买一个捆绑 Linux 的系统,还是一个已经用过的系统,检查 Linux 内核是否支 持您的硬件仍然很重要。检查您的硬件是否列在上面的参考资料中。让推销员(或者其他) 知道您是在为一个 Linux 系统采购设备。请支持对 Linux 友好的硬件销售商。 2.4.1. 避免专有或封闭的硬件 一些硬件制造商愚蠢地拒绝告诉我们如何给他们的硬件写驱动程序。其他的则要求签署不 公开的契约才能接触文档,以阻止我们发布 Linux 驱动程序源代码。 因为我们没有被授权查看这些设备的文档,它们自然不会在 Linux 下工作。您可以帮我们 去告诉那些制造商,要求他们发布文档。如果有足够多的人要求,他们将认识到自由软件 社区也是一个重要的市场。 2.4.2. 假的或"虚拟"的奇偶校验内存 如果您到计算机商店购买奇偶校验内存(Parity RAM),可能买到的是虚拟奇偶校验内存, 而不是真奇偶校验的内存。虚拟奇偶校验 SIMM 经常(并不总是)与同等的非奇偶校验 SIMM 区别对待,因为它们多一个芯片,而且那片芯片比其他的都要小。虚拟奇偶校验 SIMM 与 非奇偶校验内存工作方式相同。在它们并不能像主板上的真奇偶校验内存那样告诉您有一 位 RAM 错误。不要为虚拟奇偶校验多付钱。而应该为真奇偶校验 SIMM 多付,因为您真正 为每8位多买了一位。 如果您想得到关于 ARM 内存的完整信息,以及什么才是最值得买的内存,请参考 PC Hardware FAQ。 2.5. 内存与磁盘空间的需求 您需要至少 32MB 的内存和 110MB 硬盘空间。对最小的基于控制台的系统(包括所有标准 软件包)需要250MB。如果您要安装适当的软件,包括 X Window 系统,以及一些开发工具 和库,需要至少400MB。对于一个基本的桌面系统,需要几个 G 的空间。 2.6. 网络连接硬件 以下网络接口卡在 NetWinder 和 CATS 机器上被安装盘直接支持: ● PCI-based NE2000 ● DECchip Tulip 下列网络接口卡在 RiscPC 上被安装盘直接支持: ● Ether1 ● Ether3 ● EtherH 如果您的网卡出现在上述列表中,整个安装过程可以通过网络进行而不需要光盘或软盘。 任何受 Linux 内核支持的网络接口卡(NIC)也全都被引导盘所支持。您可能需要将网络驱 动作为模块挂载。这意味着您不得不使用其他介质来安装操作系统内核。 第 3 章 开始安装 Debian GNU/Linux 之前 目录 3.1. 安装概述 3.2. 记得备份您的所有数据! 3.3. 一些有用的信息 3.3.1. 文档 3.3.2. 提供硬件信息的资源 3.3.3. 硬件兼容性 3.3.4. 网络设置 3.4. 满足最低的硬件要求 3.5. 为多重启动系统事先分区 3.6. 安装前的硬件和操作系统的相关设置 3.6.1. 需要留心的硬件问题 本章用于处理在启动安装程序安装 Debian 之前的准备工作。这包括备份您的数据,搜集 您硬件的信息,以及获取其他一些必要的信息。 3.1. 安装概述 先说一下有关重新安装的事情。使用 Debian 时,极少出现必须进行完全重新安装的情况 ,可能导致这种情况的大多是硬盘的物理故障。 许多常见的操作系统在遇到严重错误或者要升级到新的版本时,必须进行重新安装。就算 不需要完全重新安装,您通常还得把您的各种程序在新的系统里也再重新安装一遍才行。 在 Debian GNU/Linux 里,如果操作系统遇到出错的情况,大多数的时候您都能把它修复 而不用重新安装。在这里,升级不再需要进行大规模的安装操作,您可以就地升级它,而 这些程序也总能和新版的操作系统和平共处。如果一个程序的新版本需要其他程序的更新 的版本来支持它,Debian 软件包管理系统会自动帮您确定所有必须的软件并把它们安装上 。关键是,Debian 为了避免重新安装而做了大量努力,所以您尽可以不用去烦心这些问题 了:我们的安装程序不是设计用来重装您的旧系统的。 这是安装过程的每个步骤: 1. 把将要用来安装系统的硬盘上的所有数据或者文档都备份下来; 2. 在开始整个安装过程之前,收集您的计算机的硬件信息和可能会用到的文档; 3. 在硬盘上为 Debian 留出可以用来创建分区的空间; 4. 如果您不是使用 Debian 安装光盘,请寻找和(或)下载安装程序软件,还有用于您电 脑上的特殊硬件的驱动程序; 5. 设置从磁带、软盘、USB 盘,或者其它存有系统启动文件的设备上启动 (对于大多数 Debian 安装光盘的使用者来说,可以直接用这些光盘启动); 6. 启动安装系统; 7. 选择要安装的语言; 8. 如果可能,激活网络连接; 9. 创建并挂载用来安装 Debian 的分区; 10. 等待自动下载、安装和设置基本系统。 11. 安装启动引导器(boot loader) ,它负责启动 Debian GNU/Linux 和(或)已有的其他 系统。 12. 第一次加载新安装的系统,做一些系统初始设定; 13. 选择安装您要使用的其他的软件 (程序单元和/或软件包); 如果您在安装过程中遇到问题,下面的信息可以帮助您找到每个步骤里涉及到那些软件包 。有关这场安装"戏剧"的"主角"的介绍: 安装软件,debian-installer,是本手册的关注焦点。她将探测硬件并挂载相应的驱动程 序,还要指导 dhcp-client 去设置网络连接,还将运行 debootstrap 去安装基本系统的 软件包。在这个过程中,还有许多其他程序扮演着各自的角色,而 debian-installer 将 一直到您第一次启动新系统时才完成她的使命。 在加载新装的基本系统时,base-config 指导您添加用户、设置时区(通过 tzsetup),并 进行软件包安装系统的配置(使用 apt-setup)。然后,它将启动 tasksel 程序来安装以相 互关系分成的几个大组软件,或者 aptitude 程序来让您挑选单独的软件包。 当 debian-installer 程序运行结束,系统首次加载之前,您只有一个非常简单的基于命 令行的系统。除非您在最后一个步骤里用 tasksel 或 aptitude 选择安装了能在您的显示 器上显示窗口的图形界面,否则它将不会被自动安装。因为许多 Debian GNU/Linux 系统 是被用作服务器,它们的工作根本不需要任何图形化的用户界面,所以它在这里只是一个 可选项。 要知道,X 系统是与 debian-installer 完全分开的,实际上它的使用要复杂得多。X 窗 口安装系统的安装和问题解答不在本手册所关注的范围之内。 3.2. 记得备份您的所有数据! 开始安装之前,请确定您已经把系统中所有数据都进行了备份。除了购买机器时预装的操 作系统以外,如果这是您计算机上的第一个其他操作系统,很可能您得对硬盘进行重新分 区,来给 Debian 腾出安装的空间。不管您用什么程序,分区都会使硬盘上的所有数据全 部丢失。在我们的安装过程中使用的分区程序经过多年使用,被证明非常可靠,但它的功 能也非常强大,您可能会为一次错误操作而付出代价。即使是已经备份过数据,您也要谨 慎使用,最好在每次操作之前先认真考虑一下:两分钟的思考可能会为您节省几个小时的 不必要的恢复工作。 如果您是想把电脑做成多重引导的系统,请先确定您手头上有电脑里已经存在的这些操作 系统的安装介质。特别是当您把启动盘重新分区以后,您可能会发现必须重新安装原有操 作系统的启动引导程序,某些情况下,还得重新安装该操作系统并恢复受影响分区上的文 件。 3.3. 一些有用的信息 3.3.1. 文档 3.3.1.1. 安装手册 您正在阅读的文档,是 Debian sarge 发行版安装指南的正式版本; 还有各种文件格式和 不同语种的翻译。 3.3.1.2. 硬件文档 通常包含设置和使用您硬件的有用信息。 3.3.2. 提供硬件信息的资源 许多情况下,安装程序能自动检测您的硬件。但作为预备,我们建议您还是在安装之前熟 悉一下您的硬件比较好。 获取硬件信息的途径有: ● 每个硬件附带的手册。 ● 您计算机的 BIOS 配置画面。在计算机启动时,您可以通过按组合键查看这些画面。 请从您的手册确认组合键。通常,它是 Delete 键。 ● 每个硬件的包装盒。 ● 其他操作系统里面的系统命令或工具,包括文件管理器的显示。该资源对了解 RAM 和 硬盘特别有用。 ● 您的系统管理员或者互联网服务提供商。他们可以告诉您所需的网络和 e-mail 配置 信息。 表 3.1. 安装所需的硬件信息 ┌──────┬──────────────────────────────────────────────┐ │ 硬件 │ 您需要了解的信息 │ ├──────┼──────────────────────────────────────────────┤ │ │拥有的容量 │ │ ├──────────────────────────────────────────────┤ │ │它们在系统上的次序 │ │ ├──────────────────────────────────────────────┤ │ │是 IDE 还是 SCSI(大多数计算机上是 IDE) │ │硬盘 ├──────────────────────────────────────────────┤ │ │可用空间 │ │ ├──────────────────────────────────────────────┤ │ │分区。 │ │ ├──────────────────────────────────────────────┤ │ │安装有其他操作系统的分区。 │ ├──────┼──────────────────────────────────────────────┤ │ │型号与制造商。 │ │ ├──────────────────────────────────────────────┤ │ │支持的分辨率。 │ │ ├──────────────────────────────────────────────┤ │ │水平扫描频率。 │ │显示器├──────────────────────────────────────────────┤ │ │垂直扫描频率。 │ │ ├──────────────────────────────────────────────┤ │ │支持的颜色深度(颜色数) │ │ ├──────────────────────────────────────────────┤ │ │屏幕尺寸。 │ ├──────┼──────────────────────────────────────────────┤ │ │类型:串口、PS/2 或 USB。 │ │ ├──────────────────────────────────────────────┤ │ │端口。 │ │鼠标 ├──────────────────────────────────────────────┤ │ │制造商。 │ │ ├──────────────────────────────────────────────┤ │ │按键数。 │ ├──────┼──────────────────────────────────────────────┤ │ │型号与制造商。 │ │网络 ├──────────────────────────────────────────────┤ │ │适配器类型。 │ ├──────┼──────────────────────────────────────────────┤ │ │型号与制造商。 │ │打印机├──────────────────────────────────────────────┤ │ │支持的打印分辨率。 │ ├──────┼──────────────────────────────────────────────┤ │ │型号与制造商。 │ │ ├──────────────────────────────────────────────┤ │视频卡│可用显存 │ │ ├──────────────────────────────────────────────┤ │ │支持的分辨率和颜色数(还需检验您显示器的能力)。│ └──────┴──────────────────────────────────────────────┘ 3.3.3. 硬件兼容性 多数品牌的产品在 Linux 上运行不会遇到麻烦。而且,对 Linux 的硬件支持每天都在改 善。然而,Linux 仍然不能像某些操作系统那样可以在各种不同的硬件上运行。 您可以通过以下方式检验硬件兼容性: ● 检查制造商的网站来得到新的驱动程序。 ● 查看关于仿真信息的网站或者手册。不常见的品牌有时可以使用常见品牌设备的驱动 程序或者设置。 ● 检查您计算机体系的 Linux 兼容性列表网站。 ● 搜索互联网查找其他用户的经验。 3.3.4. 网络设置 如果您的计算机一天 24 小时都连在网上(即,以太网或等价的连接 -- 而不是拨号连接) ,您需要向您的网络系统管理员咨询这项信息。 ● 您的主机名(您也许可以自己决定)。 ● 您的域名。 ● 您的计算机 IP 地址。 ● 您网络的网络掩码。 ● 路由经过的默认网关的 IP 地址,如果您的网络有网关的话。 ● 您的网络中作为 DNS(域名服务) 服务器的系统。 另一方面,如果您的系统管理员告诉您有 DHCP 服务器可用,并且推荐使用,那么您不需 了解这项信息,因为 DHCP 服务器会在安装过程中直接提供。 如果您有一个无线网络,您应该找出: ● 您的无线网络的 ESSID。 ● WEP 安全 key(如果可用)。 3.4. 满足最低的硬件要求 一旦您收集好您的计算机上硬件配置的相关信息,再复查一下您的硬件,就可以让您如愿 以偿,安装上系统。 基于您的需求,您也许可以用低于下面表格所列的配置装上系统。但是,如果无视这些建 议的话,多数用户会安装失败。 表 3.2. 推荐的最低系统配置 ┌─────────────┬─────┬─────┐ │ 安装类别 │内存 │硬盘 │ ├─────────────┼─────┼─────┤ │无桌面的系统 │24 M │450 M│ ├─────────────┼─────┼─────┤ │桌面系统 │64 M │1 G │ ├─────────────┼─────┼─────┤ │服务器 │128 M│4 G │ └─────────────┴─────┴─────┘ 这里有些常规 Debian 系统配置的样本。要了解各类软件需要占多大的硬盘空间,请参考 第 C.3 节 "各软件集所需的磁盘空间"。 常规服务器 这里有一台小型服务器范例,它适用于精简型服务器,即没有为 shell 的用户安装过 多合用称手的软件。这类服务器安装有:一个 FTP 服务、一个 web 服务、DNS、NIS 以及 POP 服务。这些服务总共需要用掉 100MB 的磁盘空间,您还需要另外算上服务 所需的数据占用的空间。 桌面 标准的桌面用机安装有 X 窗口系统、完整的桌面环境、音频软件、编辑器等。这些软 件包将总共需要约 2G 空间,尽管也可以不用这么多。 工作控制台 这是被高度精简的用户机器,它没有安装 X 窗口系统或者 X 软件。可能适用于笔记 本电脑或者手持计算机。其所需空间约为 140MB。 开发人员 这是包括所有开发软件包的桌面设置,例如 Perl、C、C++ 等。其所需空间约为 475MB。若是您为了其它用途,而另行安装了 X11 和其它的软件包,那么您需要为这 类机器规划出约 800MB 空间。 要提醒您的是上面说的空间大小并没有把其它任何资料数据包含在内。这通常包含用户的 文件、信件或者用户的数据。一般来说,最好在为您自己的文件和数据分配空间时,规划 得宽裕一些。尤其是 /var 分区里装有许多 Debian 的特定状态信息和类似日志文件这样 普通内容。dpkg所用的文件(含有所有已安装软件包的信息)很容易就会消耗掉 20MB。另外 ,apt-get 会在安装前将下载的软件包放在这里。您应当最少分配 100MB 的空间给 /var 。 3.5. 为多重启动系统事先分区 为您的硬盘分区仅仅指的是将您的硬盘空间切分成几块。分区之后,每一块都是独立于其 余部分的单独空间。这和在一个大房子里砌几堵墙有几分相似,如果您在其中一间房间里 安置家具,那么这不会对其它房间有任何影响。 如果您已经在您的机器中安装有操作系统同时也希望把 Linux 装在同一块硬盘上,那么您 就必须重新对硬盘分区。Debian 需要它自己专用的硬盘分区。它不能被安装在 Windows 或者 MacOS 的分区上。它可以与其它 Linux 系统共享一些分区,但是我们在这里不会对 此进行说明。最起码,您要为 Debian 的根目录准备一个专用的分区。 您可以通过当前的操作系统中的分区工具软件来获知您现在的分区状况分区工具软件总会 提供一种办法让您查看现有的分区情况,而不作任何改动。 通常情况下,改动一个已经建立文件系统的分区,会导致其中的数据信息遭到损毁。因而 ,您应当在重新分区之前总是先做一下备份。继续拿房子作比喻,在移动墙壁时,您最好 在把挡路的家具都移开,否则就要冒家具被毁坏的危险。 如果您的计算机配有不只一块硬盘,您或许可以考虑把其中一块硬盘专门分配给 Debian 使用。这样的话,您就不用在启动安装系统前再对那块硬盘进行分区了,安装程序自带的 分区程序会漂亮地完成这个任务。 若是您的机器只有一块硬盘,而且您愿意把原来的操作系统全盘替换成 Debian GNU/Linux ,那么您可以在启动安装系统后,待到安装时再进行分区(第 6.3.2.1 节 "硬盘的分区") 。但是,只有当您使用存储于磁带、CD-ROM 或者联网的机器上的安装系统,并从它们启动 安装程序时,上面的话才适用于您的情形。试想一下:假如您用放在硬盘上的文件启动, 再在安装系统中对同一块硬盘进行分区,这就会擦除那些启动文件,这时恐怕您只能祈求 上苍保佑第一次就安装成功吧。在这种情况下,若要让您的机器恢复正常,至少您还可以 有几个办法可选,比如原先系统的安装磁带或 CD。 倘若您的机器已经有多个分区,并且通过删除或替换它们中的一个或多个就能为安装提供 足够的空间,那么您一样也可以把分区操作延后,到安装时再使用 Debian 安装程序自带 的分区工具。不过,您还是应当继续读完下面的文档,因为可能会存在一些特殊的情形。 比如,分区表中现有分区的顺序问题,这也许会令您不得不在安装前先分好区。 如果您的情况不属于上面任何一种,那么您需要在开始安装之前,事先为 Debian 腾出可 用于分区的空间。要是有分区是为其它操作系统准备的,您最好用该操作系统自己的分区 软件来新建这些分区。我们建议您不要用其它操作系统里的工具为 Debian 创建 Linux 分 区。也就是说,您应当仅仅创建要保留的操作系统自身的分区。 倘若您打算在同一台机器上安装多个操作系统的话,您应当在安装 Linux 之前,先把所有 其它系统都装好。Windows 和其它操作系统的安装过程可能会让您无法启动 Linux,也可 能会怂恿您重新格式化不属于它们自己的分区。 尽管您可以在这些操作之后再恢复回来,也可以避免它们,但是首先安装原有的系统就能 够帮您免除这些烦恼。 如果您现在有一块硬盘,这块硬盘上仅有一个分区(这是桌面电脑的通常设置),同时您希 望能多重启动原有的操作系统和 Debian,那么您就需要: 1. 备份计算机里所有的数据。 2. 从原有操作系统的安装介质(如 CD-ROM 和磁带)启动。 3. 使用原有系统里的分区工具来新建属于原来系统的分区。为 Debian GNU/Linux 或者 预留一个分区,或者腾出一块空闲空间。 4. 把原有的操作系统安装到属于它的新分区上。 5. 启动到原有的操作系统,以确保一切正常,再下载 Debian 安装程序的启动文件。 6. 启动 Debian 安装程序,并继续安装 Debian。 3.6. 安装前的硬件和操作系统的相关设置 在本节中,我们将讨论安装之前有关硬件设置的一些问题。如果这些问题的确存在的话, 您就需要在安装 Debian 前先做一些准备工作了。一般来说,准备工作包括:检查固件 (firmware) 以及为您的系统修改固件中的设定。所谓"固件"就是硬件运行所需的核心软件 。它在系统引导过程(即开机之后)中起到了至关重要的作用。我们同时也会着重提出一些 硬件问题,您系统上这些硬件问题在将会影响到 Debian GNU/Linux 的可靠性。 3.6.1. 需要留心的硬件问题 有很多人曾试过把他们的 90 MHz 的 CPU 超频到 100 MHz 使用,以及其他诸如此类的做 法。这有时可行,但是它有赖于外界的温度和其他因素,而且超频可能会损毁您的系统。 这个文档的作者之一曾把他的系统超频使用了有一年,从那以后他的系统在编译操作系统 的内核时,总是发现 gcc 的运行被意外的信号中止了。后来,当把 CPU 的频率调回它的 标称速度后,问题迎刃而解。 如果内存模块有故障的话(或者出现其他会使数据发生异变的硬件故障),gcc 编译器经常 是第一个停止工作的程序。因为它会生成庞大的数据结构,并把它们在内存中频繁移动。 一旦这些数据结构中有错,就会导致程序执行非法指令或者访问不存在的地址空间。表现 出症状就是gcc 被一个意外的信号中止运行。 3.6.1.1. 大于 64 MB 内存 Linux 内核有时不能检测出您系统中的内存大小。如果这正符合您的情况,请参阅一下第  5.2 节 "引导参数"。 第 4 章 获取系统安装介质 目录 4.1. 官方的 Debian GNU/Linux 光盘套装 4.2. 从 Debian 镜像服务器下载文件 4.2.1. 在哪里能找到安装映像 4.3. 为使用 TFTP 网络引导准备文件 4.3.1. 设置 RARP 服务器 4.3.2. 设置 BOOTP 服务器 4.3.3. 设置 DHCP 服务器 4.3.4. 开启 TFTP 服务器 4.3.5. 将 TFTP 映像放到适当的位置 4.4. 自动化安装 4.4.1. 使用 Debian 安装程序进行自动安装 4.1. 官方的 Debian GNU/Linux 光盘套装 目前安装 Debian GNU/Linux 最容易的方法是使用一个官方的 Debian CD 盘套件。您可以 从一个销售商处购买 (参见光盘销售商)。如果您有快速的网络连接和光盘刻录机的话,也 可以从 Debian 镜像站点下载光盘映像然后自行刻录光盘 (具体参见 Debian CD 页)。如 果您有一套 Debian 的 CD 盘套件并且能在您的机器上引导这些 CD 盘,您可以直接跳至 第 5 章用安装系统启动。我们已经做了很多努力来确保 CD 中已经包含了大多数人所需要 的文件。尽管一整套预编译的二进制软件包需要好几张 CD 盘,但是您可能不会用到第三 张 CD 盘以后的内容。您也可以可以考虑使用 DVD 版本,这将为您的书架节约很多光盘存 放空间,并且您可以避免沉闷地 CD 盘切换。 如果您的机器不支持 CD 盘引导,但是您有一套 CD 光盘套件,您可以使用其他的方法比 如:网络引导,或者从 CD 盘中手工装载内核来初始化系统安装程序。CD 盘已经包含了通 过其他方法引导所需要的文件; Debain 的网络存档和 CD 盘的文件夹组织方式是一致的 。因此如果后面有给出的用于引导的特定存档文件路径时,请在 CD 盘中同样的文件目录 和子目录下查找它们。 一旦安装程序被引导,它将能够获得 CD 盘中其他所有必需的文件。 如果您没有一套 CD 光盘套件,则您需要下载安装系统文件并且把他们放到:一台连网的 计算机上然后他们可以被用来引导安装程序。 4.2. 从 Debian 镜像服务器下载文件 选择离您较近的(因此很可能也是最快的)镜像服务器,请参见 Debian 镜像列表。 当从 Debian 镜像服务器下载文件的时候,请确认下载的文件是处于二进制模式,而不是 文本或者自动模式。 4.2.1. 在哪里能找到安装映像 安装映像位于每一个 Debian 镜像的 debian/dists/sarge/main/installer-arm/current/ images/ -- MANIFEST 文件列出了每一个映像及其用途。 4.2.1.1. RiscPC 的安装文件 RiscPC 安装程序最初是从 RiSC OS 引导的。所有必需的文件都由一个名为 .../current/ riscpc/dinstall.zip 的档案所提供,请将此文件下载到 RISC OS 机器中,将 linloader.!Boot 拷贝到合适的位置,然后运行 !dInstall。 4.2.1.2. NetWinder 的安装文件 启动一台 NetWinder 最轻松的途径是使用所提供的 TFTP 映象文件 .../current/ netwinder/tftpboot.img 进行网络引导。 4.2.1.3. CATS 的安装文件 在 CATS 上唯一被支持的引导方法是使用组合映像 .../current/cats/tftpboot.img 。它 能从任何 Cyclone 启动引导器可以访问的设备上被装载。 4.3. 为使用 TFTP 网络引导准备文件 如果您的机器连接到了一个局域网,您可以从网络上的另外一台机器上面通过 TFTP 来引 导它。如果您倾向从另外一台机器上面引导安装系统,则引导文件需要放在那台机器上面 的某个特殊地方,并且配置好能够能够支持对您的机器进行引导。 您需要设置一台 TFTP 服务器,并且对于很多机器来说,还需要一台 BOOTP 服务器,或 RARP 服务器,又或 DHCP 服务器。 反向地址解析协议( The Reverse Address Resolution Protocol (RARP)) 是一种告诉您 的客户它自己 IP 地址的方法。另外一种方法是采用 BOOTP 协议。 BOOTP 是一种 IP 协 议,用来告诉一台计算机它自己 IP 地址以及从网络何处获得启动映像。 DHCP (动态主机 配置协议 Dynamic Host Configuration Protocol) 是一个更灵活,向后兼容的 BOOTP 拓 展。有一些系统只能通过 DHCP 来配置。 普通文件传输协议(Trivial File Transfer Protocol (TFTP))被用于为客户提供引导映像 。理论上,任意服务器,在任意平台上只要实现了这些协议就都能够被应用。在这一节的 一些例子里面,我们将提供在 SunOS 4.x、SunOS 5.x (即 Solaris) 和 GNU/Linux 上面 的一些操作例子。 4.3.1. 设置 RARP 服务器 为了设置 RARP ,您需要知道需要安装系统的客户机的以太网卡地址(网卡 MAC 地址)。如 果您还不知道这个信息,可以启动进入"Rescue"模式(例如使用回复软盘)并且使用 /sbin/ ifconfig eth0 命令。 在使用 Linux 2.2.x 内核的 RARP 服务器系统上,您需要通以下的命令来植入内核 RARP 表: # /sbin/rarp -s client-hostname client-enet-addr # /usr/sbin/arp -s client-ip client-enet-addr 如果看到 SIOCSRARP: Invalid argument 您可能需要加载 RARP 内核模块或重新编译内核并使之支持 RARP。试试在运行 modprobe rarp 命令后再尝试一遍 rarp 命令。 使用 Linux 2.4.x 内核的 RARP 服务器系统上并没有 RARP 模块,您应该使用 rarpd 程 序替代。操作过程很类似下面将提到的在 SunOS 上的用法。 在 SunOS 里, 您需要确定客户机的以太网硬件地址已经列在"ethers"数据库(在 /etc/ ethers 文件中或者通过 NIS/NIS+)和"hosts"数据库中,然后您需要启动 RARP 守护程序 ,在 SunOS 4 里,使用(以 root 身份): /usr/etc/rarpd -a 命令;在 SunOS 5 里,则 使用 /usr/sbin/rarpd -a 命令。 4.3.2. 设置 BOOTP 服务器 在 GNU/Linux 下面有两种 BOOTP 服务器。他们是 CMU bootpd和另外一种实际上是 DHCP 服务器的程序 ISC dhcpd,他们被包含在 Debian GNU/Linux 的 bootp 和 dhcp 软件包中 。 为了使用 CMU bootpd,您必须首先将 /etc/inetd.conf 中相关的注释标记去掉(或者加入 一些新行)。在 Debian GNU/Linux 里,您可以运行 update-inetd --enable bootps,然 后执行 /etc/init.d/inetd reload 来实现此任务。在其它系统中,这个行应该看起来像 这样: bootps dgram udp wait root /usr/sbin/bootpd bootpd -i -t 120 现在,您必须创建一个 /etc/bootptab 文件。它具有和一些老 BSD 文件很相似并使用相 同的加密格式。这些文件包括 printcap、termcap,和 disktab。参见 bootptab 的手册 页以获得更多的信息。对于 CMU bootpd,您将需要知道客户机硬件的(MAC)地址。这里有 一个示例 /etc/bootptab: client:\\ hd=/tftpboot:\\ bf=tftpboot.img:\\ ip=192.168.1.90:\\ sm=255.255.255.0:\\ sa=192.168.1.1:\\ ha=0123456789AB: 您至少需要修改"ha"选项,它指定了客户机的硬件地址。"bf"选项则指定了一个客户机应 该通过 TFTP 取得的文件名称。请从第 4.3.5 节 "将 TFTP 映像放到适当的位置" 处获得 更多的信息。 相反,通过 ISC dhcpd 设置 BOOTP 就非常容易。因为它把 BOOTP 客户程序看成一个特殊 的 DHCP 客户端。部分体系结构需要经过复杂的设置才能从 BOOTP 启动客户端。如果您的 机器属于这种情况,请阅读第 4.3.3 节 "设置 DHCP 服务器"。否则,您大概只需要将 allow bootp 指令添加到包含客户机的子网的配置部分,并重新启动 dhcpd 就可以了,重 启的命令是:/etc/init.d/dhcpd restart。 4.3.3. 设置 DHCP 服务器 ISC dhcpd 是一种自由软件 DHCP 服务器。在 Debian GNU/Linux 里,它被包含在 dhcp 软件包中。这里有它的一个配置文件的范例(通常是 /etc/dhcpd.conf): option domain-name "example.com"; option domain-name-servers ns1.example.com; option subnet-mask 255.255.255.0; default-lease-time 600; max-lease-time 7200; server-name "servername"; subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.200 192.168.1.253; option routers 192.168.1.1; } host clientname { filename "/tftpboot/tftpboot.img"; server-name "servername"; next-server servername; hardware ethernet 01:23:45:67:89:AB; fixed-address 192.168.1.90; } 注意:新的(并且是推荐的) dhcp3 软件包使用 /etc/dhcp3/dhcpd.conf作为其配置文件。 在这个例子中,一台服务器 servername 负责执行包括 DHCP 服务器、TFTP 服务器和网关 在内的所有工作。您需要修改域名选项,以及服务器名和客户端硬件地址。filename 选项 应该是将要从 TFTP 获取的文件名。 在编辑了 dhcpd 配置文件后,您需要使用下面的命令重新启动它:/etc/init.d/dhcpd restart作为其配置文件。 4.3.4. 开启 TFTP 服务器 要准备好 TFTP 服务器,您首先需要确定 tftpd 已经启动。这通常可以在 /etc/ inetd.conf添加如下字句来实现: tftp dgram udp wait nobody /usr/sbin/tcpd in.tftpd /tftpboot Debian 包通常在安装后会自动把这条设置好。 检查那个文件并且记住被用作 in.tftpd 的参数的目录,您接下来将会需要它。-l 参数能 够让某些版本的 in.tftpd 将所有的请求记录到系统日志中。这将在检查错误的时候会很 有用。如果您必须修改 /etc/inetd.conf,您将必须提醒正在运行的 inetd进程该文件已 经被改变。在 Debian 系统中,您应该执行 /etc/init.d/inetd reload;而在其它系统中 ,找到 inetd 所对应的进程 ID,并且运行 kill -HUP inetd-pid。 4.3.5. 将 TFTP 映像放到适当的位置 接下来,将在第 4.2.1 节 "在哪里能找到安装映像"中找到的 TFTP 启动映像放置到tftpd 引导映像目录中。一般来说,这个目录将是 /tftpboot。您必须将该文件链接到 tftpd 所 使用的引导特定客户端的文件名。不幸的是,这个文件名完全决定于 TFTP 客户程序,并 且没有一个强制的标准。 4.4. 自动化安装 对于有多台需要安装的计算机的情况,可以采用全自动安装的方式。用于此项任务的 Debian 软件包有 fai(需要使用一台安装服务器),replicator、systemimager、 autoinstall,以及 Debian 安装程序本身。 4.4.1. 使用 Debian 安装程序进行自动安装 Debian 安装程序支持使用预先配置的文件进行自动安装。预配置文件可以从网络或移动介 质上加载,并自动回答安装过程中的问题。 虽然大多数 debian-installer 使用的对话框可以用这种方法预置,但还是有明显的例外 。您可以(重新)分区整个硬盘或使用磁盘上可用的闲置空间; 但无法使用已存在的分区。 当前还无法预先设置 RAID 和 LVM。还有,除了网络驱动模块,也无法预先设置内核模块 参数。 预配置文件是按照 debconf-set-selections 命令的格式写成的。这里有一个具有详尽注 释并能正常工作的预配置文件例子:第 C.1 节 "预设置文件实例"。 除此之外,要得到一个包含所有可被预设置的项目的完整文件,您可以进行手动安装,然 后使用 debconf-get-selections 命令(它来自 debconf-utils软件包)将 debconf 数据库 和位于 /var/log/debian-installer/cdebconf 的 cdebconf 数据库的内容导出至一个单 一的文件: $ debconf-get-selections --installer > 文件 $ debconf-get-selections >> 文件 但是,按照这些方法生成的文件将会包含一些不应该被预设置的项目,因此第 C.1 节 "预 设置文件实例" 中的文件对于大多数用户来说是一个更好的起点。 一旦您有了一个预配置文件,可以在需要时编辑它,并且上传至一个 web 服务器,或者拷 贝至安装程序的启动引导介质。无论您将此文件放置在哪里,都需要在启动安装程序时向 它传递一个参数来告诉它使用这个文件。 要让安装程序使用一个从网络下载的预配置文件,请将 preseed/url=http://url/to/ config 加入内核启动参数。当然这个预配置文件,只有安装程序能够管理网络并下载文件 后才能起作用,因此如果安装程序能够通过 DHCP 设置网络而不需要询问任何问题的话, 此方法会更有用。如果您已经被设置好了网络,可能还会想将安装优先级调至关键来避免 任何提问。请参见第 5.2.1 节 "Debian 安装程序的参数"。 要将预配置文件放置在光盘中,您将需要重新生成 ISO 映像以包括您的预配置文件。请阅 读 mkisofs 的手册来获得细节信息。另外,您也可以将预配置文件放置在一张软盘中,然 后使用 preseed/file=/floppy/preseed.cfg 参数。 第 5 章 用安装系统启动 目录 5.1. 在 ARM 上引导安装程序 5.1.1. 从 TFTP 引导 5.1.2. 从 CD 光盘上引导 5.2. 引导参数 5.2.1. Debian 安装程序的参数 5.3. 安装过程中的故障修复 5.3.1. 引导配置 5.3.2. 内核起始信息注解 5.3.3. Bug Reporter 5.3.4. 提交缺陷报告 5.1. 在 ARM 上引导安装程序 5.1.1. 从 TFTP 引导 从网络引导需要您已经具备网络的连接和一台 TFTP 网络引导服务器(DHCP, RARP 以及 BOOTP)。 支持的网络引导安装方法在第 4.3 节 "为使用 TFTP 网络引导准备文件"。 5.1.1.1. 从在 NetWinder 的 TFTP 上引导 NetWinders 具有两个网络界面: 10Mbps NE2000 兼容的网卡作为 eth0 以及 100Mbps Tulip 网卡作为 eth1。 注意 您需要 NeTTrom 2.2.1 或者较高的版本来引导安装系统。推荐使用 NeTTrom 2.3.3:请从 下面地址获得 ftp://ftp.netwinder.org/pub/netwinder/firmware/: ● nettrom-2.3-3.armv4l.rpm ● nettrom-2.3.3.bin ● nettrom-2.3.3.bin.md5sum 在重新引导后,在倒计时中断引导过程后,您必须配置静态网络: NeTTrom command-> setenv eth0_ip 192.168.0.10/24 这里 24 是网络掩码的设置位,您也可以配置一个动态地址: NeTTrom command-> boot diskless 如果 TFTP 服务器并不在子网内,您也可能需要配置 route1 设置。其他的配置方法是非 常标准的(save-all 这步是可选的): NeTTrom command-> setenv kerntftpserver 192.168.0.1 NeTTrom command-> setenv kerntftpfile tftpboot.img NeTTrom command-> save-all NeTTrom command-> setenv netconfig_eth0 flash NeTTrom command-> setenv kernconfig tftp NeTTrom command-> setenv rootdev /dev/ram NeTTrom command-> setenv cmdappend root=/dev/ram 只有最后四项干扰正常的磁盘引导,所以在此之前选择 save-all 以保证其安全,此命令 将保存从网络再一次引导的设置。如果您想用串口控制台安装 netWinder,您需要如下设 置: NeTTrom command-> setenv cmdappend root=/dev/ram console=ttyS0,115200 使用 printenv 可以检查您的环境设置。最后,如果您的 cmdappend NeTTrom 变量具有 noinitrd 选项,您必须删除它以确保下载的内核可以用其附带的内存虚拟磁盘引导。 5.1.1.2. 在 CATS 上的 TFTP 引导 在 CATS 机器上,可以使用命令 boot de0: 或者在 Cyclone 引导符下类似的命令。 5.1.2. 从 CD 光盘上引导 对于大多数人来说,最快的途径是使用一套 Debian CD 光盘套件。如果您有此套件,并且 如果您的机器支持直接 CD 引导,太棒了!只需要插入您的 CD,重启,然后继续下一章。 注意某些特定的 CD 驱动器需要一些特殊的驱动程序,由此他们可能在安装的早期不能被 访问。如果标准的从 CD 引导的方法不能用于您的硬件,阅读本章中关于其他种类的内核 以及安装方法,它们有可能能解决问题。 即便您不能从 CD 光盘引导,依然可以安装 CD 光盘上面的 Debian 系统组件和所有软件 包。只需要使用不同的媒介,比如软盘引导系统。当安装操作系统,基础系统和任意附加 的软件包时只需指向安装系统至光盘驱动器即可。 如果您遇到引导方面的问题,请参见第 5.3 节 "安装过程中的故障修复"。 如果需要在 Cyclone 控制台提示符下从 CD 光盘下引导,请使用命令 boot cd0:cats.bin 5.2. 引导参数 引导参数是 Linux 内核的参数。一般用于确保外围设备能够正确地运行。对于其中的大多 数部分来说,内核可以自动检查外围设备的相关信息。但是在某些情况下,您可能需要给 内核一点小小的帮助。 如果这是您第一次引导系统,尝试缺省的引导参数(即:不要输入任何参数)并且检查是否 工作正确。大部分情况下应该是这样,如果不是,可以重新启动,并且检查需要告诉系统 什么样的特定参数。 有关很多引导参数的信息可以查看 Linux BootPrompt HOWTO,其中包括一些老旧硬件的解 决方法。这一节只描述一些最常用的基本参数。一些常见的问题描述见第 5.3 节 "安装过 程中的故障修复"。 当内核引导的时候,有一条消息 Memory:availk/totalk available 应该显示在引导过程的早期。其中 total 应该符合您内存的总量,单位为千字节。如果此 参数不符合您实际的内存总数,需要使用 mem=ram 参数。这里 ram 被设置为内存的数量 。如是"k"则为千字节,"m"为兆字节。例如,mem=65536k 和 mem=64m 标明 64MB 内存。 如果您通过一个串行控制台引导,一般来说内核将自动检测。如果您有一块显示卡 (framebuffer)和一块键盘,通过串口附加于想引导的计算机上面,也许需要传递 console =device 参数给内核,这里 device 是串口设备。通常类似于 ttyS0。 5.2.1. Debian 安装程序的参数 安装系统能识别一些比较有用的附加引导参数 ^[2],也许比较有用。 debconf/priority 这些参数设置将设置显示的信息为最低的级别。 缺省安装使用 debconf/priority=high 。这意味着高优先的和至关重要的信息将被显 示,但是中级和低级信息将被跳过。如果其间出现了问题,安装程序将按照要求调整 优先级别。 如果您加入 debconf/priority=medium 作为引导参数,将看到安装菜单以及安装过程 中更多的控制。当使用 debconf/priority=low,将显示所有的消息(这相当于采用专 家级引导方法)。通过 debconf/priority=critical,安装系统只会显示至关重要的信 息,并且尝试正确无误地执行各项事宜。 DEBIAN_FRONTEND 这个引导参数控制用于安装程序的用户界面的类型。当前可能参数设置可以是: ● DEBIAN_FRONTEND=noninteractive ● DEBIAN_FRONTEND=text ● DEBIAN_FRONTEND=newt ● DEBIAN_FRONTEND=slang ● DEBIAN_FRONTEND=ncurses ● DEBIAN_FRONTEND=bogl ● DEBIAN_FRONTEND=gtk ● DEBIAN_FRONTEND=corba 缺省的前端是 DEBIAN_FRONTEND=newt。DEBIAN_FRONTEND=text 可以用于串口控制台 的安装。一般来说在缺省安装介质上只有 newt 前端,因此目前这个并非很有用。 BOOT_DEBUG 设置引导参数为 2 会使记录更冗长一些。设置为 3 会在引导过程的特定位置调出 debug shell。(退出 shell 以后会继续引导过程。) BOOT_DEBUG=0 此为默认。 BOOT_DEBUG=1 更多的信息。 BOOT_DEBUG=2 大量的调试信息。 BOOT_DEBUG=3 在引导过程中,安装程序将在多处不同地方运行 Shell,以进行细节上的调试。 退出 Shell 将继续引导过程。 INSTALL_MEDIA_DEV 参数的值将为用来装入 Debian 安装程序的设备路径,例如: INSTALL_MEDIA_DEV=/ dev/floppy/0 引导映像通常会扫描所有的软盘和 USB 存储设备来找到根软盘。它也可以通过此参数 来只查找一个设备。 debian-installer/framebuffer 一些体系使用内核帧缓存以提供不同的语言安装。如果帧缓存在您的系统上面有问题 ,您可以通过参数 debian-installer/framebuffer=false 关闭这个特性。这方面问 题的特征是有关 bterm 或者 bogl 的错误信息,一个空白的屏幕,或者在开始安装几 分钟后停止。 debian-installer/probe/usb 设置成 false 可以阻止在引导的时候进行 USB 探测来杜绝引起的问题。 netcfg/disable_dhcp 缺省情况下,debian-installer 会通过 DHCP 来自动检测网络。如果检测成功的话, 您将不需要审视并且改变其获得的设定。您可以在 DHCP 检测失败的情况下手工配置 网络。 如果您的网络上面具备一台 DHCP 服务器,但是不想使用它,比如,因为它给出错误 的答案。您可以使用参数 netcfg/disable_dhcp=true 来通过 DHCP 来配置网络并且 手工输入参数。 hw-detect/start_pcmcia 设置成 false 来阻止启动 PCMCIA 服务,如果其引起各种问题。有些笔记本电脑对此 会有错误的行为。 preseed/url 指定 url 到预设文件,在安装中自动下载和使用。参阅第 4.4 节 "自动化安装"。 preseed/file 指定路径至预设文件,加载自动化安装。参阅第 4.4 节 "自动化安装"。 ramdisk_size 如果您在使用 2.2.x 内核,也许需要设置 ramdisk_size=13000 。 5.3. 安装过程中的故障修复 5.3.1. 引导配置 如果在引导过程中您遇到了问题或者内核挂起,不识别实际拥有的外围设备,或者驱动是 一个不被正确识别,首先要做的事情是检查引导参数,在第 5.2 节 "引导参数"。 如果引导的是您自己的内核,而不是安装程序提供的内核,请确定 CONFIG_DEVFS 已被设 置到内核。安装程序需要 CONFIG_DEVFS。 通常,可以通过移除外挂硬件或者外围设备来解决问题,然后再次重新引导 如果您的机器上装有多于 512M 的大容量的内存,并且安装程序在引导内核时停止,您可 能需要加入一个引导参数,来限制内核能够看的的内存数量,比如 mem=512m。 5.3.2. 内核起始信息注解 在引导期间,您可以看到很多信息类似 can't find something ,或者 something not present,can't initialize something ,或者甚至 this driver release depends on something 。大多数这些信息都是无害的。您之所以看到它们,是因为安装系统内核被设 计成为可以运行在不同的计算机,并且拥有不同的外围设备。显然地,没有一个计算机可 能拥有所有的外围设备,因此操作系统可能在查找一些您没有的设备上有一些报怨。有时 可以看到系统暂停了一段时间。这是由于它在等待一台设备的回应,但是这台设备并没有 安装在您的系统上。如果您发现这个时间非常长,您可以一会创建一个自己的内核(参见第  8.4 节 "编译新内核")。 5.3.3. Bug Reporter 如果您过了初始化引导,但还是不能安装,Bug Reporter 菜单选项可能会很有用。它复制 系统的错误记录和配置信息到一张用户提供的软盘。这个信息可能提供了一些关于错误的 起因和如何解决它的线索。如果您正在提交一个 bug 报告,您可以附上这个信息。 其他相关安装期间的安装信息可以在 /var/log/ 找到,以及在计算机已经引导至安装后的 系统的 /var/log/debian-installer/ 中。 5.3.4. 提交缺陷报告 如果仍有问题,请提交安装报告。即使安装成功,我们也鼓励您发一份安装报告,这让我 们可以尽可能多的了解硬件的配置数量。 请采用下列模板填写安装报告,并发邮件到 给 installation-reports 伪软件包发送 bug 报告。 Package: installation-reports Boot method: Image version: Date: Machine: Processor: Memory: Partitions: Output of lspci and lspci -n: Base System Installation Checklist: [O] = OK, [E] = Error (please elaborate below), [ ] = didn't try it Initial boot worked: [ ] Configure network HW: [ ] Config network: [ ] Detect CD: [ ] Load installer modules: [ ] Detect hard drives: [ ] Partition hard drives: [ ] Create file systems: [ ] Mount partitions: [ ] Install base system: [ ] Install boot loader: [ ] Reboot: [ ] Comments/Problems: 在 bug 报告内,请说明问题所在,包括内核挂起后最后见到的内核消息。说明进入问题状 态时您进行的步骤。 ━━━━━━━━━━━━━━ ^[2] 注意,内核最多可以接受 8 个命令行参数和 8 个环境变量选项(包括安装程序默认 使用的选项)。如果超出,2.4 内核会丢弃过多的选项,2.6 内核则会崩溃。 第 6 章 使用 Debian 安装程序 目录 6.1. 安装程序如何工作 6.2. 组件介绍 6.3. 使用单独的组件 6.3.1. 启动 Debian 安装程序与配置硬件 6.3.2. 分区与选择挂载点 6.3.3. 安装基本系统 6.3.4. 创建启动系统 6.3.5. 完成第一阶段 6.3.6. 杂项 6.1. 安装程序如何工作 Debian 安装程序由一些特定功能的组件组成,它们完成各自的安装任务。每一组件执行任 务时,会询问一些任务相关的问题。每个任务又有各自的优先级,可以在安装程序开始时 设置优先级决定哪些问题会问到。 执行默认安装时,只有必要的(高优先级)的问题会被问到。使得安装过程可以高度自动化 ,几乎不需用户干预。组件按次序字典执行;至于哪些组件会执行,这取决于您使用的安 装方法,以及您的硬件。对于没有询问的问题,安装程序将采用默认值。 如果遇到麻烦,用户会看到错误画面,并且显示安装菜单供选择其它替代操作。如果没有 问题,用户将不会碰到安装菜单,只需依此回答每个组件的提问。严重错误提示的优先级 为"critical",因此用户总会注意到。 如果在 debian-installer 开始的时候,给启动加上一些参数,它将会影响安装程序使用 的默认值。例如,假设您希望指定静态网络连接配置(如果存在 DHCP,将会被采用),您可 以为启动参数加上 netcfg/disable_dhcp=true。参阅第 5.2.1 节 "Debian 安装程序的参 数" 了解有效的选项。 熟练的用户也许更习惯菜单驱动的交互方式,安装中的每一步都可以被用户控制,而不是 让安装程序自动依此执行。要使用菜单驱动的手动安装方式,添加启动参数选项 debconf/ priority=medium。 如果您的硬件要求给出内核模块设置选项才能安装,您就需要使用 "expert" 模式启动安 装程序。可以通过使用 expert 命令或者添加 debconf/priority=low 启动参数。专家模 式赋予您对 debian-installer 完全的控制力。 正常的安装程序是基于字符界面的(相对于常见的图形界面)。在此环境下,用户无法使用 鼠标。以下是操作各种对话框所需要使用的按键。Tab 或右箭头键向"前"移动,Shift-Tab 或左箭头键向"后"移动,它们用于按钮和选择之间。上与下箭头键用于选择可以滚动的列 表,也能滚动列表本身。另外,对于长的列表,您可以按下一个字母,让列表直接移动到 该字母开头的列表项,使用 Pg-Up 和 Pg-Down 滚动列表的不同段。空格键选择复选框的 选项。用 Enter 激活选择。 错误信息被重定向到第三个控制台。您可以访问该控制台通过按下左 Alt-F3 (按住左 Alt 键同时按下 F3 功能键);返回主安装进程使用左 Alt-F1。 这些信息还可以在 /var/log/messages 里找到。完成安装之后,该 log 会被复制到 /var /log/debian-installer/messages 您的新系统中。其它的安装信息安装时可以在 /var/ log/ 找到。在 /var/log/debian-installer/ 是系统重新启动后的记录地方。 6.2. 组件介绍 下面列出安装程序使用的组件,和各个组件目的的简要说明。如果您需要了解各组件详细 的信息,见第 6.3 节 "使用单独的组件"。 main-menu 在安装进行中,显示组件列表,并执行选中的组件。主菜单的优先级设为中,如果您 的优先级设为高或紧急(默认为高),您不会看的菜单。另一方面,假如出现问题需要 您干预,询问的优先级会临时调低,而让您解决该问题,菜单可能在这种情况下出现 。 您可以通过不断地按"返回"按钮,从当前运行的组件回到主菜单。 languagechooser 显示语言与方言的列表。除非选中的语言没有被翻译,安装程序将以您选择的语言显 示信息。对于没有翻译的语言,将显示英文信息。 countrychooser 显示国家列表。用户可以选择自己生活的国家。 kbd-chooser 显示键盘列表,用户在其中选择与自己匹配的模式。 hw-detect 自动识别绝大多数系统硬件,包括网卡、硬盘和 PCMCIA。 cdrom-detect 寻找并挂载 Debian 安装 CD。 netcfg 配置计算机网络连接,使它能连上互联网。 iso-scan 寻找 ISO 文件系统,它可能存在于 CD-ROM 或者硬盘上。 choose-mirror 列出 Debian 软件包镜像。用户可以选择从哪里安装软件包。 cdrom-checker 检验 CD-ROM。这种方法确保用户使用的安装 CD-ROM 没有损坏。 lowmem 它会检测小内存容量的系统,并采用一些技巧从内存中删除 debian-installer 不需 要的部分 (代价是丧失一些特性)。 anna Anna's Not Nearly APT。安装软件包从选择的镜像或 CD 获取。 partman 让用户为系统安排磁盘分区,创建文件系统,并分配挂载点。它包括一些有趣的特性 ,如自动模式或 LVM 支持。在 Debian 里这是推荐的分区工具。 autopartkit 根据用户预设,自动为整个硬盘分区。 partitioner 允许用户为系统安排磁盘分区。根据用户计算机的体系选择和善的分区工具。 partconf 显示分区列表,按用户指令为选择的分区创建文件系统。 lvmcfg 帮助用户配置 LVM (Logical Volume Manager)。 mdcfg 让用户设置 Software RAID (Redundant Array of Inexpensive Disks)。Software RAID 是新主板提供的廉价 IDE (虚拟硬件) RAID 控制器的高级管理。 base-installer 安装一些基本的包,让计算机重起后能在 Linux 下运行。 os-prober 检测当前计算机上安装的操作系统,将信息传递给 bootloader-installer,使它能将 检测到的操作系统添加到 bootloader 的启动菜单里面。方便用户选择启动哪个操作 系统。 bootloader-installer 在硬盘上安装启动引导程序,这是必须的一步,使得计算机不必依靠软盘和 CD-ROM 启动。许多引导程序都允许用户在启动的时候选择使用哪个操作系统。 base-config 根据用户设置提供配置系统软件包的对话框。它通常在新 Debian 系统"首次运行"时 工作。 shell 让用户能从菜单或者第二控制台执行 shell。 bugreporter 当用户遇到麻烦时,提供一种方式记录信息到软盘,用于以后给 Debian 开发人员精 确报告安装程序的问题。 6.3. 使用单独的组件 本节将会描述各个安装组件的详细信息。各组件按用户可以识别的阶段分组。它们在安装 过程中按次序显示出来。注意,每次安装并不会使用所有的模块;至于使用哪些模块,取 决于您的安装方法和您的硬件。 6.3.1. 启动 Debian 安装程序与配置硬件 假设 Debian 安装程序已经启动,然后您看到了初始画面。此时,debian-installer 的能 力还很有限。它还不了解您的硬件,首选的语言,甚至不知道要执行什么任务。不用担心 ,因为 debian-installer 相当聪明,它能自动探测您的硬件,定位其余的组件,并更新 自己以具备安装系统的能力。但您仍然要协助 debian-installer,提供给它不能自动决定 的内容 (比如选择您首选的语言,键盘布局或网络镜像)。 您会留意到 debian-installer 在本阶段执行硬件侦测多次。第一次目的是指定哪些硬件 需要安装(比如,您的 CD-ROM 或者网卡)。在第一次运行的时候并不是所有的驱动程序都 就绪,硬件侦测会在后续过程里面多次重复。 6.3.1.1. 检测有效的内存 debian-installer 首先要做的一件事是检测有效的内存。如果内存有限,该组件将修改后 续的安装进程,使您可以将 Debian GNU/Linux 安装到您的系统上。 在小内存的安装下,只有部分组件有效。其中的一个限制是您无法在安装过程中选择语言 。 6.3.1.2. 选择语言 安装的第一步,选择您希望安装过程使用的语言。语言名称列表使用英文(左侧)和该语言 本身(右侧)显示;右侧的语言可以用正确的形态表现出来。该列表以英文名称排序。 您选择的语言将用于紧接着的安装过程,对话框已经有各种语言翻译的版本。如果选择的 语言没有对应翻译的版本,安装将默认使用英文。选择的语言也将助于选择一个合适的键 盘布局。 6.3.1.3. 选择国家 如果您选择的语言第 6.3.1.2 节 "选择语言"与多个国家关联(存在于中文,英文,法文, 以及其它语言),您可以在这里选择国家。如果您从列表的底部选择其它,您将看到按大洲 分组的全部国家。 在安装过程的后面,这个选择还会被用于设置默认的时区和您所处地理位置的 Debian 镜 像。如果安装程序默认的建议不合适,您可以做其它选择。选择国家,还有选择语言,都 会影响您新 Debian 系统的本地化设置。 6.3.1.4. 选择键盘 键盘经常按照不同语言使用的字符裁剪。选择一个您的键盘使用的合适布局,或者为没有 的布局选择一个接近的。一旦系统安装完毕,您可以从更大范围内您选择键盘的布局 (在 安装完之后用 root 执行 kbdconfig)。 将高亮显示部分移到您选择的键盘,然后按下 Enter。用箭头健移到高亮显示 -- 它们位 于所以国家键盘布局相同的地方,因此独立于键盘配置。'扩展的'键盘是有 F1到F10 健, 沿着上箭头。 6.3.1.5. 寻找 Debian 安装程序 ISO 映像 当安装是使用 hd-media 方式,将会有一个动作,是寻找和挂载 Debian 安装程序 iso 映 像,用于获取其它的安装文件。组件 iso-scan 正是用来完成此任务。 首先,iso-scan 自动挂载具有已知文件系统的块设备(比如,分区),然后顺次搜索文件名 结尾是 .iso (或 .ISO 之类)。注意,首次只扫描位于根目录的文件,和第一层子目录 (例如,它找到 /whatever.iso, /data/whatever.iso,而不是 /data/tmp/whatever.iso) 。在 iso 映象文件找到后,iso-scan检查它包含的内容,确定该映象文件是不是有效的 Debian iso 映象。如为前者,任务结束;如果是后者,iso-scan 搜索其它的映象。 万一前面尝试寻找 iso 映象失败,iso-scan 会询问您是否原意进行完整的搜索。这次不 只查看最上级目录,而是真正地贯串整个文件系统。 如果 iso-scan 找不到您的安装 iso 映象,请重新启动返回到您以前的操作系统,检查映 象文件名是否正确(以 .iso结尾),是否放在一个能被 debian-installer 识别的文件系统 上,是否损坏(用 checksum 校验)。有经验的 Unix 用户可以在第二个控制台上完成这些 动作,而毋须重新启动。 6.3.1.6. 配置网络 进到这一步,如果系统检测到您有多于一个的网络接口,您将被要求选择哪个设备是您的 主网络接口,比如,您在安装中要用的那个。其他的网络接口这时不会配置。您可以在安 装完毕之后去配置额外的接口;参考 interfaces(5) man 页。 默认情况下,debian-installer 会自动尝试使用 DHCP 配置您的计算机网络。如果 DHCP 侦测成功,这一步就完成。如果失败,造成的原因会有多种因素,从没有接网线到错误设 置的 DHCP。或者您的局域网里面根本就没有 DHCP 服务器。检查第三个控制台了解更多的 解释。不管怎样,您将被要求选择再试还是手动配置。DHCP 服务器有时候响应很慢,因此 ,如果您确定都正常,再试一次。 手动配置网络会依次询问一些您网络的问题,值得注意的是 IP 地址,网络掩码,网关, 域名服务器地址,和主机名。此外,如果您有无线网络接口,您会被要求提供您的 Wireless ESSID 和一个 WEP key。填写答案第 3.3 节 "一些有用的信息"。 注意 一些技术细节您也许需要,或者不需要,放在手边:程序假定网络 IP 地址是按位与您的 系统 IP 地址和网络掩码。它还会猜测广播地址是按位或您的系统 IP 地址和按位反网络 掩码。它也会猜测您的网关。如果您不能回答这些问题,让系统猜测 -- 您可以在系统安 装完毕之后来修改它们,如果需要,编辑 /etc/network/interfaces。另外一种选择,您 可以安装 etherconf,它用来一步步进行网络配置。 6.3.2. 分区与选择挂载点 现在,经过最后的硬件检测,debian-installer 已经充满活力,按照用户定制,准备就绪 。正如本节标题指明,接下来组件的主要任务是为您的硬盘分区,创建文件系统,安排挂 载点,并为近似选项进行配置,比如 LVM 或 RAID 设备。 6.3.2.1. 硬盘的分区 现在是时候对您的硬盘进行分区了。要是您对分区还有心存疑虑,或者只是想了解更多的 细节,请参阅附录 B, 为 Debian 准备分区。 首先您可以选择对整块硬盘或是其上的空闲空间进行自动分区。这也被称为 "向导式" 分 区。倘若您不愿自动分区,那么也可以选择菜单中的手动编辑分区表。 倘若您选择了向导式分区,那么就要从下表所列的几个方式中选择其一。每个方式都各有 利弊。在附录 B, 为 Debian 准备分区中对它们中的几个有些评价。如果您没有把握,请 选择第一个选项吧。有一点要记住,就是使用向导式分区至少需要一定大小的空闲空间才 能正常运作。如果您没有给它 1GB 以上的空间(具体大小示所选的方式而不同),那么向导 式分区将以失败告终。 ┌──────────────────┬────────────┬────────────────────────────────┐ │ 分区方式 │所需最小空间│ 所新建的分区 │ ├──────────────────┼────────────┼────────────────────────────────┤ │所有文件在同一分区│600MB │/, swap │ ├──────────────────┼────────────┼────────────────────────────────┤ │桌面用机 │500MB │/, /home, swap │ ├──────────────────┼────────────┼────────────────────────────────┤ │多用户工作站 │1GB │/, /home, /usr, /var, /tmp, swap│ └──────────────────┴────────────┴────────────────────────────────┘ 在选定了分区方式后的下一个界面,您会看到关于自己分区的一张表格,上面标明了分区 是否将被格式化,将以何种方式格式化,以及它们将被挂载到哪里的相关信息。 分区表格的格式如下: IDE1 master (hda) - 6.4 GB WDC AC36400L #1 primary 16.4 MB ext2 /boot #2 primary 551.0 MB swap swap #3 primary 5.8 GB ntfs pri/log 8.2 MB FREE SPACE IDE1 slave (hdb) - 80.0 GB ST380021A #1 primary 15.9 MB ext3 #2 primary 996.0 MB fat16 #3 primary 3.9 GB xfs /home #5 logical 6.0 GB ext3 / #6 logical 1.0 GB ext3 /var #7 logical 498.8 GB ext3 #8 logical 551.5 GB swap swap #9 logical 65.8 GB ext2 本例中有两块硬盘,它们分别被分割成了几个分区。其中,第一块硬盘上还有些空闲空间 。表中,每行列出了分区编号、其类型、分区大小、可选的标志、采用的文件系统,及其 挂载点(如果有的话)。 接下来,向导式分区就要完成了。如果您对上面生成的分区信息表感到满意,那么请在菜 单中选择分区设定结束并将修改写入磁盘一项,这样,新的分区表就创建了(本节节末将会 对此进行解释)。如果您认为分区设置不如愿,那么可以选择撤销对分区设置的修改,之后 就可以再次进行向导式分区,或者按照下面将要介绍的手动分区的办法来完成自己所设想 的分区规划。 如果您选择了手动分区的话,它的界面和上面介绍的向导式分区大体上相同。不同之处在 于,界面上显示的是您当前的分区列表,而且其中并没有挂载点的信息。关于如何手动设 置您的分区表,以及新安装的 Debian 系统将如何使用这些分区,这些内容将会在本节的 后面谈到。 倘若您选用的是一块全新的硬盘,它还没有被分过区,上面也没有空闲空间。那么系统会 要求您新建一个分区表(只有这样,您才能创建新的分区)。分区表建好之后,在被选中的 磁盘条目下会出现一个新行,上面写着 "空闲空间"。 如果您选中了某块空闲空间,那么就可以在上面新建分区了。接着需要回答一系列简短的 问题,它们会就分区大小、类型(主分区还是逻辑分区)、以及分区的位置(在空闲空间的开 始部分还是在结束部分)向您询问。回答完毕后,您会看到一个小结,它详尽地总结了这个 新分区的各种参数和设置,包括挂载点、挂载选项、启动标志或者分区的用途。如果您不 喜欢预设的缺省设置的话,尽可以按照自己的喜好更改它们。比如说,选中 Use as: 选项 ,然后您可以让这个分区改用其他的文件系统,比如把它用作交换分区、软 RAID、LVM, 或者根本就放着不用。另外还有个不错的功能,就是可以把现有分区的数据拷贝到新分区 上。一旦您对新分区的设置感到满意了,就可以选择 Done setting up the partition, 然后会自动退回到 partman 的主界面。 若是您希望修改分区的设置,只要选中该分区,分区的配置菜单就会出现在您的面前。由 于这个界面和新建分区时使用的界面是相同的,所以您可以像以前那样修改那些设置项。 有一件事,可能第一眼看不大出来,就是您还可以通过选中显示分区大小的项目来调整分 区的大小。已知适用的文件系统至少有 fat16、fat32、ext2、ext3 和 swap。在这个菜单 中,您还可以删除分区。 请确保至少分出两个分区:其中一个作为 root 文件系统(它必须挂载到 /)另一个用于 swap。若是您忘记了挂载根(root)文件系统的话,partman 会拒绝让您继续下面的步骤, 直到您改正了这个错误。 由于 partman 的功能是通过安装本套件的各模块功能得以延伸和扩展的,但是具体又因您 的系统的体系架构而有所区别。因此,如果您发现安装的实际情况与我们所言不符,缺少 了某些功能特性,那么请检查一下,确保已加载了所有必须的模块(比如,partman-ext3, partman-xfs 或者 partman-lvm)。 在您对分区设置感到满意后,就可以选择分区菜单中的分区设定结束并将修改写入磁盘一 项。在这之后,会出现一个清单,它列出了即将在硬盘上进行的所有操作。此时,安装程 序会让您确认是否就照此分区。 6.3.2.2. 配置逻辑卷管理(LVM) 如果您做计算机系统管理员工作或者 "高级" 用户,您一定遇到过磁盘分区(经常是最重要 的那个)空间不足,同时其他的分区却不能平衡使用,然后您不得不靠移到或符号链接等方 法来折腾。 为了避免上面描述的情况,您可以采用逻辑卷管理(LVM)。简而言之,使用 LVM 您可以组 合您的分区(物理卷,LVM 术语) 形成一个虚拟盘(称为卷组),它可以被分割成虚拟分区( 逻辑卷)。逻辑卷(当然下面是卷组)的亮点在于它可以跨越多个物理磁盘。 当您认识到需要给更多的空间给您已有的 160 GB /home 分区时,您只需加一个新的 300GB 磁盘到计算机,添加进您已经存在的卷组,然后为 /home 分区的逻辑卷重新设置尺 寸,然后 voila -- 您的用户在更新的 460GB 分区上又有了空间。这个例子当然过于简单 。如果您还还没有读过,您应该查阅 LVM HOWTO。 在 debian-installer 里面设置 LVM 很简单。首先,您必须为 LVM 标记您的分区为物理 卷。(这由 partman 在分区设置菜单完成,那里您应该选择用做:->LVM 物理卷。)接着开 始 lvmcfg 模块(可以直接从 partman 或从 debian-installer 的主菜单) 然后组合物理 卷到卷组,它位于修改卷组(VG)菜单。之后,您应该为卷组创建逻辑卷,这是从菜单修改 逻辑卷(LV)。 从 lvmcfg 返回 partman之后,您可以看到新建的逻辑卷与其他普通的分区一样(您也应该 这样对待它们)。 6.3.2.3. 配置多磁盘设备(Software RAID) 如果您有多于一个的硬盘^[3] 安装在您的计算机上,您可以用 mdcfg 配置硬盘以提升效 能和/或更好的数据可靠性。这种结果称为多磁盘设备 MD(或者更有名的 software RAID) 。 MD 本质上是一束位于部分磁盘上的分区,组合在一起形成一个逻辑设备。该设备可以像正 常的分区一样使用(比如可以用 partman 格式化,分配挂载点,等等)。 您得到的好处取决于您创建的 MD 类型。当前支持: RAID0 它的主要目标是效能。RAID0 将进来的数据分割成 stripes 然后平均分配到组里面的 每个硬盘上。这样可以提升读/写操作速度,但是一旦其中的一个硬盘损坏,您将丢失 一切 (部分信息在好盘上,其他的曾经在坏盘上)。 典型的 RAID0 应用是视频编辑分区。 RAID1 适用于可靠性作为优先考虑的场合。它由多个(通常两个)相同尺寸的分区组成,每个 分区容纳相同的数据。这意味着三件事。第一,如果其中的一个损坏,您仍然有数据 镜像在其余的磁盘上。第二,您只能使用现有容量中的碎片 (更准确的说,它是 RAID 中尺寸最小的磁盘分区)。第三,文件读取在磁盘间负载平衡,这可以提升服务器的性 能,如文件服务器,它倾向于读的负载大于写。 可选择的是,您可以用备用的磁盘放在组中,用于顶替事故中损坏的磁盘。 RAID5 这是一个速度、可靠性和数据冗余都不错的折衷方案。RAID5 将进来的数据分割成 strips (类似于RAID0)但只平均分配到一个磁盘上。与 RAID0 不同,RAID5 还会计算 奇偶校验信息,这将会写入其他磁盘。奇偶检验磁盘不是静态的(那被称为 RAID4), 会周期性的修改,所以奇偶校验信息平均分配到所有磁盘。当其中的一个磁盘损坏, 丢失信息的部分可以从其他数据以及奇偶校验计算出来。RAID5 最少需要三个活动的 分区。作为选项,您可以用备用的磁盘放在组中,用于顶替事故中损坏的磁盘。 如您所见,RAID5 近于 RAID1 的可靠性并具有较少冗余。另一方面,它只比 RAID0 在写入的时候慢,这是因为要计算校验信息。 总结: ┌─────┬────────┬────────┬────────────────┬────────────────────────────────────┐ │类型 │最少设备│备用设备│幸免于磁盘损坏?│ 可用空间 │ ├─────┼────────┼────────┼────────────────┼────────────────────────────────────┤ │RAID0│2 │否 │否 │容量为最小分区乘以 RAID 设备数 │ ├─────┼────────┼────────┼────────────────┼────────────────────────────────────┤ │RAID1│2 │可选 │是 │容量为 RAID 最小分区 │ ├─────┼────────┼────────┼────────────────┼────────────────────────────────────┤ │RAID5│3 │可选 │是 │容量为最小分区乘以(RAID 设备数量减 │ │ │ │ │ │一) │ └─────┴────────┴────────┴────────────────┴────────────────────────────────────┘ 如果您想真正全面了解 Software RAID,看一下 Software RAID HOWTO。 为了创建 MD 设备,您需要将期望的分区标记为供 RAID 使用。(通过 Partition settings 菜单的 partman 完成,您应该选择 Use as:->physical volume for RAID。) 警告 在安装程序中支持 MD 是相对新的功能。如果您尝试结合一些 RAID 类型与启动引导器并 将 MD 用于根(/)文件系统,您也许会经历一些挫折。对有经验的用户,从 shell 手动地 处理一些配置和安装步骤,也许会绕开这些问题 下一步,您应该从 partman 主菜单选择 Configure software RAID。在 mdcfg 第一个画 面选择 Create MD device。您将看到被支持的 MD 设备列表,您应从其中选择一项(如 RAID1)。后续操作会根据您选择的 MD 类型而定。 ● RAID0 是简单的 -- 您会看到可用的 RAID 分区,然后您的任务仅是选择那些想要组 成 MD 的分区。 ● RAID1 需要一些技巧。首先,您将要求输入组成 MD 的活动设备和备用设备数量。其 次,您需要从 RAID 可用分区列表中选择哪些是活动分区,哪些是备用的。选择的分 区总数必须与之前提供的数目相同。不必担心,如果您出错选择了不同的分区数, debian-installer 将不会允许您继续下去,直到纠正错误。 ● RAID5 的配置过程类似于 RAID1,只是您至少需要三个活动分区。 完美的解决方案或许是同时使用不同的 MD 类型。例如,您有三块 200 GB 的硬盘打算用 于 MD,没块包含两个 100 GB 的分区,您可以将三块硬盘上的第一组分区组成 RAID0 (高 速的视频编辑分区),其余的三个分区(2 个活动 1 个备用) 用于 RAID1 (相当可靠的 100 GB 分区用于 /home)。 按您需要配置 MD 设备之后,您可以结束 mdcfg 返回到 partman 去创建文件系统到您的 新 MD 设备并分配挂载点这样的属性。 6.3.3. 安装基本系统 尽管这一阶段少有问题,但却需要大量时间用于整个基本系统的下载、校验和解包。如果 您用较慢的计算机或网络连接,这要花费好一会儿时间。 6.3.3.1. 基本系统安装 在基本系统安装期间,软件包解包和配置信息重定向到 tty3。您可以访问该终端通过按下 左 Alt-F3;返回主安装进程使用左 Alt-F1。 基本系统安装时解包/配置信息保存在 /var/log/messages 这是在安装程序通过串口控制 台执行的情况下。 作为安装的一部分,Linux 内核也要安装。在默认的优先级下,安装程序会选择一个与您 硬件最匹配的内核。在较低的优先级下,您可以从列表中选择一个有效的内核。 6.3.4. 创建启动系统 如果您是安装无盘工作站,显然,从本机启动是没有意义的选项,这一步可以跳过。 注意,从单机上启动多个操作系统仍然是黑色艺术。本文档无意描写各种启动引导器,它 们会依系统甚至是子系统而变化。您应该参考启动引导器的文档了解更多信息。 6.3.4.1. 检测其他的操作系统 在启动引导器安装之前,安装程序会试着侦测已经安装到计算机上的其他操作系统。如果 它找到支持的操作系统,您将在启动引导器安装步骤里得到提示,与 Debian 一起,计算 机也将配置为可以启动其他操作系统。 注意,从单机上启动多个操作系统仍然是黑色艺术。自动支持检测和设置启动引导器启动 其他操作系统,会依系统甚至是子系统而变化。如果它不能工作,您应该参考启动管理器 的文档了解更多信息。 注意 当安装程序检测操作系统的时候,如果分区已经挂载,检测可能会失败。这可能是由于您 使用 partman 选择的挂载点(如 /win)包含其他操作系统,或者通过控制台手动挂载一个 分区。 6.3.4.2. 不使用启动引导器继续进行 该选项用于完成安装而不安装引导器,这种情况要么是体系/子体系不支持,要么是因为不 想要(比如,您想使用已经存在的引导器) 如果您打算手动设置 bootloader,需要检测安装的内核,它位于 /target/boot。您还需 要检测 initrd 存在的目录;如果有,也许需要指导 bootloader 使用它。其他需要的信 息,包括您为 / 文件系统选择的磁盘和分区,并且,如果您打算安装 /boot 到一个独立 的分区,还需要 /boot 文件系统。 6.3.5. 完成第一阶段 这是在您启动新 Debian 之前的最后一些工作。主要进行一些 debian-installer 之后的 清理。 6.3.5.1. 完成安装并重启 这是安装 Debian 进程的最后一步。您会被提醒拿出用于安装启动的媒介(CD,软盘等)。 安装程序将做最后几分钟的任务,然后启动到您的新 Debian 系统。 6.3.6. 杂项 这里的组件通常不在安装进程之内,但会在后台待命,以帮助用户遇到麻烦时处理问题。 6.3.6.1. 保存安装记录 如果安装成功,安装过程中创建的记录文件会被自动保存到 /var/log/debian-installer/ 在您的新 Debian 系统上。 从主菜单上选择保存调试记录允许您将记录文件保存到软盘上。这是用于安装过程中遭遇 严重错误的时,您想在其它系统上研究记录,或者用于报告的附件。 6.3.6.2. 使用 Shell 查看记录 有一个 Execute a Shell 菜单项。如果没有菜单,想使用 shell 要按左 Alt-F2 (在 Mac 键盘上,Option-F2) 切换到第二个虚拟控制台。就是同时按下 Alt 健,它位于空格健的 左手边,和 F2 功能键。另外一个单独的窗口运行着 Bourne shell 的克隆 ash。 因为这时您是从 RAM 盘启动,只有有限的 Unix 工具可以使用。您可以通过命令 ls /bin /sbin /usr/bin /usr/sbin 和键入 help 查看哪些程序可以使用。文本编辑器是 nano。 该 shell 有一些好用的特性,如自动完成与历史纪录。 使用菜单完成它们能完成的工作 -- shell 和命令只在出错的时候使用。尤其要使用菜单 ,而不是 shell 去激活您的交换分区,因为菜单软件无法检测到您在 shell 做的工作。 如果您用菜单打开的 shell,按下左 Alt-F1,或者键入 exit 返回菜单。 6.3.6.3. 通过网络安装 更好玩的一个组件是network-console。它可以让您使用 SSH 通过网络完成大部分安装工 作。使用网络也就是您要用控制台完成第一阶段,或者至少先建立网络。(您可以使用第  4.4 节 "自动化安装" 做这部分工作。) 该组件默认不会加载到安装主菜单,因此必须单独指定。如果使用 CD,您需要使用 medium 优先级或者打开安装主菜单并选择 Load installer components from CD,在额外 的组件列表里面选择 network-console: Continue installation remotely using SSH。 加载成功后会出现一个新的菜单项,名为 Continue installation remotely using SSH。 选择新菜单项之后,您会被问到新密码用于连接到安装系统,以及确认。就这些。现在您 应该看到一个画面,提示您使用 installer 用户远程登录,密码就是刚才您提供的。另外 一个需要留意的重要细节,是屏幕上显示的该系统的 fingerprint。您需要安全地传输该 fingerprint 给"那些要继续远程安装的人"。 当您决定继续本地安装时,不断地按 Enter,就可以返回主菜单,之后可以选择其他的组 件。 现在转到网线的另一端。有一个先决条件,您需要配置您的终端使用 UTF-8 编码,因为安 装系统使用这种编码。如果您不这样做,远程安装也可以进行,但是您可能看到奇怪的显 示,比如破碎的对话框边界,或者不可读的非 ASCII 字符。与安装系统建立连接只需键 入: $ ssh -l installer install_host 其中 install_host 是安装计算机的名字或 IP 地址。正式登录之前,会显示远程系统的 fingerprint,您需要确认是否正确。 注意 如果您依次安装多台电脑,他们碰巧使用相同的 IP 地址或主机名,那么 ssh 将拒绝连接 。造成的原因是它具有不同的 fingerprint,这通常是欺骗攻击的标志。如果您确信不是 那种情况,需要删除 ~/.ssh/known_hosts 里面相关的行,再重新来过。 登录之后您将看到一个初始画面,显示有两个可能,Start menu 和 Start shell。前一个 将带您到安装主菜单,那么您可以像普通方式一样安装。后一个打开一个 shell,您可以 检查修复远程的系统。在安装菜单只能打开一个 SSH 会话,但 shell 可以打开多个。 警告 使用 SSH 开始远程安装之后,您不该返回本地控制台运行的安装会话。这将破坏新系统配 置的数据库。结果可能导致安装失败或者安装完成的系统出现问题。 另外,如果您在 X 终端下运行 ssh 会话,也不要改变窗口大小,它可能会造成连接中止 。 6.3.6.4. 在 debian-installer 之内运行 base-config 在安装程序的第一阶段(从硬盘启动之前),chroot 环境下执行 base-config,也可以配置 基本系统。但这主要是用来测试安装程序,通常应该避免使用。 ━━━━━━━━━━━━━━ ^[3] 其实,您可以从单个物理硬盘上不同分区创建 MD 设备,但这样做不会给您带来任何 用处。 第 7 章 启动进入新 Debian 系统 目录 7.1. 关键时刻 7.2. Debian 启动之后(基本)设置 7.2.1. 配置您的时区 7.2.2. 设置用户和密码 7.2.3. 设置 PPP 7.2.4. 配置 APT 7.2.5. 软件包安装 7.2.6. 软件安装过程中的命令 7.2.7. 配置您的邮件传输代理(MTA) 7.3. 登录 7.1. 关键时刻 当您系统首次依靠自己启动,这在电子工程师圈子里面称为 "冒烟测试"。 如果您直接从 Debian 启动,但系统没有起来,这时要么使用原来的安装启动媒介,要么 用您拥有的自定义启动软盘,然后重新启动系统。这种情况下,您也许需要添加一些启动 参数,像 root=root,其中 root 是您的根分区,例如 /dev/sda1。 7.2. Debian 启动之后(基本)设置 启动之后,您将被提示去完成基本系统的设置,然后选择您希望安装的额外软件包。指导 您完成此过程的应用程序称为 base-config。它的概念类似于 debian-installer 的第一 阶段。事实上,base-config 由一些特殊的元件组成,每个元件完成一项设置任务,包括 "在后台隐藏菜单" 并使用同样的导航系统。 如果您希望在完成安装之后重新运行 base-config,请以 root 身份执行 base-config。 7.2.1. 配置您的时区 欢迎画面之后,您将看到提示要求设置您的时区。首先选择设置您的系统硬件时钟为本地 还是格林威治时间(GMT或UTC)。对话框里面显示的时间可以帮您做出正确的选择。 基于安装开始时选择的地理位置,您将看到系统只列出与该位置相关的单一或者有限的时 区列表。如果只列出一个时区,选择是确认或者选择否从完整列表中去选择。当列表显示 出来,从其中选择您的时区,或者选择其他列出完整列表。 7.2.2. 设置用户和密码 7.2.2.1. 设置 root 密码 root 帐户也被称为超级用户系统中的所有的安全防护措施对超级用户身份登陆者都是无效 的。root 帐户应该仅用来进行系统管理,而且使用时间应该尽可能短。 您所创建的任何密码都应该包含至少 6 个字符,同时包含大小写字母,并且最好带有标点 符号等特殊字符。因为超级用户具有最高权限,因此在您设置 root 密码时尤其需要小心 。请避免采用能够在字典中查到的单词或者很容易猜测的个人信息。 如果他人向您索取您的 root 密码,您也需要特别谨慎。除非您所管理的系统有多位管理 员,否则您通常不应该将超级用户密码交给别人。 7.2.2.2. 创建一个普通用户 系统会询问您现在是否希望创建一个普通帐户。您将使用该帐户进行日常登陆操作。切记 ,平时不要使用 root 帐户登陆或者将其作为个人帐号使用。 为什么呢?避免使用 root 特权帐户的一个原因是,它很容易对系统造成无法挽回的破坏 。另一个原因是,您有可能被恶意诱使运行特洛伊木马程序 -- 这是一种利用您的超级用 户权限在您未知的情况下损害您的系统安全的程序。任何合格的 Unix 系统管理书籍中都 会涉及到这一主题 -- 如果您不是很了解这方面的内容,建议您找一本进行学习。 您首先会被要求输入用户的全名。然后要求输入用户帐号名;通常名或者类似的便满足要 求,并为缺省值。最后,您将要求输入该帐号的密码。 如果在安装完毕后您还希望建立其它新帐户,请使用 adduser 命令。 7.2.3. 设置 PPP 如果您的计算机没有连上网络,接下来您将会被问到是否希望使用 PPP 安装其余的系统。 PPP 是通过调制解调器建立拨号连接的协议。如果您现在需要配置调制解调器,安装系统 将下载一些额外的软件包,或者在安装的下一阶段从互联网安全更新。如果您的计算机没 有调制解调器,或者希望安装完之后再配置调制解调器,您可以跳过这一节。 为了配置 PPP 连接,您需要从互联网服务器提供商(ISP)那里了解一些信息,包括电话号 码,用户名,口令和 DNS 服务器(可选)。一些 ISP 为 Linux 发行版提供安装指引。您可 以使用这些信息,即使他们并不是针对 Debian,这是因为在 Linux 发行版之间,大多数 的配置参数(和软件)都类似。 如果您选择在现在配置PPP,应用程序 pppconfig 将帮助您完成后续工作。记住,当程序 提示您输入拨号连接名称时,您应该输入 provider。 如果顺利,pppconfig 能够引导您快速完成设置。否则,您需要继续查看下面的具体命令 介绍。 在开始之前,您需要了解在GNU/Linux中的文件查看和编辑的基础知识。要查看一个文件, 您可以使用 more,和 zmore 查看后缀为 .gz 的压缩档。例如:要察看 README.debian.gz,您可以键入命令 zmore README.debian.gz。最小安装的系统中带有一 个使用简单但功能略少的编辑器,叫 nano。您也可以后续安装其它功能强大的编辑器如 jed, nvi, less,和 emacs。 编辑 /etc/ppp/peers/provider 并替换 /dev/modem 为 /dev/ttyS# 其中 # 取决于您的 Modem串口号。在Linux下,串口是从0开始计数的,您的第一个串口就叫 /dev/ttyS0 。下 一步是编辑 /etc/chatscripts/provider 然后插入提供商的电话号码,您的用户与口令。 请勿删除 "\q" 它出现在口令后面。用来隐藏您的口令,而不出现在日志文件里面。 许多拨号提供商现在使用PAP或CHAP作为认证方法来取代最初的文本模式认证。部份ISP两 者都采用,如果您的ISP需要PAP或CHAP,您需要按如下步骤进行配置:将文件中拨号字串 下的所有内容注释掉(即从 "ATDT") 在 /etc/chatscripts/provider同样也注释掉 /etc/ ppp/peers/provider 文件中拨号字串下的内容,并添加 user name 其中 name 指的是您 在ISP的拨号用户。然后编辑 /etc/ppp/pap-secrets 或 /etc/ppp/chap-secrets在其中填 入您的密码。 您还需要编辑 /etc/resolv.conf,将您的ISP的域名服务器 (DNS) 的 IP 地址填写进去。 /etc/resolv.conf 里面内容的填写格式应该是: nameserver xxx.xxx.xxx.xxx 这里的 x 是DNS的 IP 地址。作为可选项,您也可以在 usepeerdns 中添加 /etc/ppp/peers/ provider ,这样系统能够在必要的时候选择适当的 DNS 服务器。 除非您的 ISP 的登陆方式与其它主要 ISP 有极大的差异,否则这样就配置完成了。以 root的身份键入 pon 就能打开 PPP 连接,plog 能够监控当前连接,要断开连接,则同样 是以root身份执行 poff。 阅读 /usr/share/doc/ppp/README.Debian.gz 可以获取更多Debian上的PPP配置信息。 对于静态SLIP连接来说,您需要加上 slattach 命令(从 net-tools 软件包)到 /etc/ init.d/network。动态 SLIP 要求 gnudip 软件包。 7.2.3.1. 配置 PPP over Ethernet (PPPOE) PPPOE 是与 PPP 相关的协议,用于宽带连接。当前基本系统里面不会帮您配置建立。然而 ,相应的软件包已经安装,也就意味着您可以在本阶段手动配置 PPPOE,只需切换到 VT2 ,然后执行 pppoeconf。 7.2.4. 配置 APT 本节的重点是 apt-get,这是一个人们用来安装各种软件的程序,它被包含在 apt 软件包 中。^[4] 其他的包管理前端程序,像 aptitude,synaptic 和较早的 dselect 也是使用 并依赖 apt-get。这些前端软件推荐新用户使用,因为它们在良好的用户界面下集成了一 些其他特性(搜索包与状态检验)。 您必须配置 APT,使它明白该从哪里获取软件包。有一个帮助您完成这一工作的程序叫 apt-setup。 然后该告诉 APT 其它软件包可以在什么地方获取。您可以在安装完毕后的任何时候重新运 行 apt-setup进行配置,或者手工编辑 /etc/apt/sources.list。 如果此时驱动器内放有官方发布的 CD-ROM,那么 CD-ROM 将会被自动配置为 apt 源,而 不会有提示。您可以发现系统会扫描您的光盘。 对于那些没有官方发布光盘的使用者,有一列选项会让您选择如果获取软件包: FTP、 HTTP、CD-ROM 或者本地文件系统。 您完全可以添加多个不同的 APT 源(甚至是同一 Debian 存档也可以)。apt-get 会自动挑 选出软件包中的最新版本。例如,如果您同时使用 HTTP 和 CD-ROM 的 APT 源,apt-get 会在有新版本的时候采用 HTTP 源,没有新版本时自动采用 CD-ROM 源。虽然 APT 非常智 能化,但仍然不建议您增加不必要的 APT 源,因为这会大降低检查网络存档中的新版本软 件的速度。 7.2.4.1. 配置网络软件包源 如果您计划通过网络安装系统的其它部分,通常的作法是选择 http 源。当然,ftp 源也 是可以的,只是在连接时会略慢一些。 接下来您需要告诉 apt-setup 您生活在哪个国家。Debian会为您选择最近的官方 Debian 网络镜像。根据您选择的国家,程序会列出一些可能的服务器列表。通常选择最上面的一 个,但所有服务器应该都是正常可用的。之后,进行测试,如果您发现任何问题,您应该 选择另外一个