Debian GNU/Linux 安装手册 版权 © 2004, 2005 Debian Installer 团队 本手册属于自由软件,您可以在 GNU 通用公共许可证(GPL)的协议下重新发布和(或)修改 它。请在附录 E, GNU General Public License(此许可证只有英文原文具有法律效力) 阅 读该许可证的内容。 摘要 本文是 Debian GNU/Linux 3.1 系统(代号 "sarge")在 PowerPC ("powerpc") 硬件架构下 的安装教程。还包括关于如何构建您的新 Debian 系统,以及指向更多信息的链接。 警告 本安装指南是基于一份为旧版 Debian 安装系统("boot-floppies") 而撰写的手册,并针 对新的 Debian 安装系统进行了增补和修订。但是,对于 powerpc 体系结构,本手册尚未 针对新版的安装程序进行完整的更新和实际检测。这使得本手册中可能会存在少量不完整 或过时的、或者仍然在讲述 boot-floppies 安装程序的内容。本手册的新版本,也许会更 好的用于本体系,您可以通过 Internet 在 debian-installer 主页找到它。您还可以在 那里找到另外一些翻译版。 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 目录 在 powerpc 上安装 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.1.4. 多处理器 2.2. 安装介质 2.2.1. 软盘 2.2.2. CD-ROM/DVD-ROM 2.2.3. 硬盘 2.2.4. U 盘 2.2.5. 网络 2.2.6. Un*x 或 GNU 系统 2.2.7. 受支持的存储系统 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.5.1. 在 MacOS/OSX 下分区 3.6. 安装前的硬件和操作系统的相关设置 3.6.1. 使用 OpenFireware 3.6.2. 需要留心的硬件问题 4. 获取系统安装介质 4.1. 官方的 Debian GNU/Linux 光盘套装 4.2. 从 Debian 镜像服务器下载文件 4.2.1. 在哪里能找到安装映像 4.3. 从软盘映像创建引导软盘 4.3.1. 从 Linux 或者 Unix 系统写软盘映像 4.3.2. 在 DOS、Windows、或者 OS/2 下写磁盘映像 4.3.3. 在 MacOS 上写磁盘映像 4.4. 为从 USB 闪盘引导准备文件 4.4.1. 复制文件 -- 轻松的途径 4.4.2. 复制文件 -- 灵活的方法 4.5. 为从硬盘引导准备文件 4.5.1. 在 OldWorld Macs 上引导硬盘安装程序 4.5.2. 在 NewWorld Macs 上启动硬盘安装程序 4.6. 为使用 TFTP 网络引导准备文件 4.6.1. 设置 BOOTP 服务器 4.6.2. 设置 DHCP 服务器 4.6.3. 开启 TFTP 服务器 4.6.4. 将 TFTP 映像放到适当的位置 4.7. 自动化安装 4.7.1. 使用 Debian 安装程序进行自动安装 5. 用安装系统启动 5.1. 在 PowerPC 上引导安装程序 5.1.1. 从 CD-ROM 启动 5.1.2. 从硬盘引导 5.1.3. 从 USB 闪盘引导 5.1.4. 用 TFTP 引导 5.1.5. 从软盘引导 5.1.6. PowerPC 引导参数 5.2. 引导参数 5.2.1. Debian 安装程序的参数 5.3. 安装过程中的故障修复 5.3.1. 软盘的可靠性 5.3.2. 引导配置 5.3.3. 内核起始信息注解 5.3.4. Bug Reporter 5.3.5. 提交缺陷报告 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.1.1. OldWorld PowerMacs 7.1.2. NewWorld PowerMacs 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. U 盘 A.2.4. 从网络启动 A.2.5. 从硬盘启动 A.3. 安装 A.4. 请给我们发一份安装报告 A.5. 末了...... B. 为 Debian 准备分区 B.1. 决定 Debian 分区以及大小 B.2. 目录树 B.3. 推荐的分区方案 B.4. Linux 里面的设备名称 B.5. Debian 分区程序 B.5.1. 为较新的 PowerMacs 分区 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. 推荐的最低系统配置 在 powerpc 上安装 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.1.4. 多处理器 2.2. 安装介质 2.2.1. 软盘 2.2.2. CD-ROM/DVD-ROM 2.2.3. 硬盘 2.2.4. U 盘 2.2.5. 网络 2.2.6. Un*x 或 GNU 系统 2.2.7. 受支持的存储系统 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/powerpc/ 以了解更多已被 Debian 测试过的 PowerPC 体系。 本章仅包含一些通用的信息以及在何处可以获得更多信息的指导,而不是试图列出支持 PowerPC 的所有不同硬件配置。 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 │ └────────────────────┴───────────┴───────────────────────────┴────────────┘ 本文档主要讲述的是 PowerPC 体系下的安装。如果您在寻找其他 Debian 所支持的体系的 信息,请浏览 Debian 移植页面。 2.1.2. CPU,主板和视频支持 有四个主要支持的 powerpc 子体系:PMac (Power-Macintosh),PReP,APUS (Amiga Power-UP System) 和 CHRP 机器。每种子体系都有各自的启动方式。并且,还有四种不同 的内核变种,以支持不同的 CPU。 移植到其它 powerpc 体系的工作,比如 Be-Box 与 MBX 体系,仍在进行中,还不为 Debian 支持。将来我们也许会有 64 位的移植。 2.1.2.1. 内核变种 在 Debian 中有四种基于 CPU 类型的 powerpc 内核: powerpc 绝大多数系统使用这种内核,它支持 PowerPC 601、603、604、740、750 与 7400 处 理器。所有 Apple Power Macintosh 以后的系统包括 G4 都使用这其中的处理器。 power3 POWER3 处理器用于早期的 IBM 64 位服务器系统:已知的型号包括 IntelliStation POWER Model 265、pSeries 610 与 640,以及 RS/6000 7044-170、7043-260 和 7044-270。 power4 POWER4 处理器用于最新的 IBM 64 位服务器系统:已知的型号包括 pSeries 615、 630、650、655、670 和 690。 Apple G5 是基于 POWER4 体系,也是使用这种内核。 apus 这种内核支持 Amiga Power-UP 系统。 2.1.2.2. Power Macintosh (pmac) 子体系 Apple (以及其它一些制造商 -- 比如 Power Computing) 生产了一系列基于 PowerPC 处 理器的 Macintosh 计算机。为体系支持的目的,它们被划分为 NuBus、OldWorld PCI 和 NewWorld。 使用 680x0 系列的 Macintosh 计算机不属于 PowerPC 家族,而是 m68k 机器。这些机器 的型号以 "Mac II" 开头或是使用 3 位数字的型号,如 Centris 650 或 Quadra 950。 Apple iMac PowerPC 之前的机型是 4 位数字。 NuBus 系统现在还不被 debian/powerpc 支持。单内核的 Linux/PPC 内核体系不支持这些 机器;而必须使用 MkLinux Mach 微内核,而这未被 Debian 支持。它们包括: ● Power Macintosh 6100, 7100, 8100 ● Performa 5200, 6200, 6300 ● Powerbook 1400, 2300 和 5300 ● Workgroup Server 6150, 8150, 9150 对这些机器提供有限支持的 linux 内核位于 http://nubus-pmac.sourceforge.net/ OldWorld 系统为大多数带软驱和 PCI 总线的 Power Macintosh。大多数基于 603、603e 、604 和 604e 的 Power Macintosh 是 OldWorld 机器。米色的 G3 系统也是 OldWorld 的。 被称做 NewWorld PowerMacs 是那些有半透明塑料外壳的机器。包括所有的 iBook、G4 系 统、蓝色的 G3 系统、和大多数 1999 年及以后生产的 PowerBook。NewWorld PowerMacs 也是 1998 下半年以后制造,使用 "ROM in RAM" MacOS 的系统。 Apple 硬件的规格说明位于 AppleSpec,另外,对于旧硬件,参见 AppleSpec Legacy。 ┌────────────────────────────────────────────────────────────────────┬────────┐ │ 型号名称/编号 │ 世代 │ ├─────────────────────────────────┬──────────────────────────────────┼────────┤ │ │iMac Bondi Blue, 5 Flavors, Slot │NewWorld│ │ │Loading │ │ │ ├──────────────────────────────────┼────────┤ │ │iMac Summer 2000, Early 2001 │NewWorld│ │ ├──────────────────────────────────┼────────┤ │ │iMac G5 │NewWorld│ │ ├──────────────────────────────────┼────────┤ │ │iBook, iBook SE, iBook Dual USB │NewWorld│ │ ├──────────────────────────────────┼────────┤ │ │iBook2 │NewWorld│ │ ├──────────────────────────────────┼────────┤ │ │iBook G4 │NewWorld│ │ ├──────────────────────────────────┼────────┤ │ │Power Macintosh Blue and White (B&│NewWorld│ │ │W) G3 │ │ │ ├──────────────────────────────────┼────────┤ │ │Power Macintosh G4 PCI, AGP, Cube │NewWorld│ │ ├──────────────────────────────────┼────────┤ │ │Power Macintosh G4 Gigabit │NewWorld│ │ │Ethernet │ │ │ ├──────────────────────────────────┼────────┤ │ │Power Macintosh G4 Digital Audio, │NewWorld│ │ │Quicksilver │ │ │ ├──────────────────────────────────┼────────┤ │ │Power Macintosh G5 │NewWorld│ │Apple ├──────────────────────────────────┼────────┤ │ │PowerBook G3 FireWire Pismo (2000)│NewWorld│ │ ├──────────────────────────────────┼────────┤ │ │PowerBook G3 Lombard (1999) │NewWorld│ │ ├──────────────────────────────────┼────────┤ │ │PowerBook G4 Titanium │NewWorld│ │ ├──────────────────────────────────┼────────┤ │ │PowerBook G4 Aluminum │NewWorld│ │ ├──────────────────────────────────┼────────┤ │ │Xserve G5 │NewWorld│ │ ├──────────────────────────────────┼────────┤ │ │Performa 4400, 54xx, 5500 │OldWorld│ │ ├──────────────────────────────────┼────────┤ │ │Performa 6360, 6400, 6500 │OldWorld│ │ ├──────────────────────────────────┼────────┤ │ │Power Macintosh 4400, 5400 │OldWorld│ │ ├──────────────────────────────────┼────────┤ │ │Power Macintosh 7200, 7300, 7500, │OldWorld│ │ │7600 │ │ │ ├──────────────────────────────────┼────────┤ │ │Power Macintosh 8200, 8500, 8600 │OldWorld│ │ ├──────────────────────────────────┼────────┤ │ │Power Macintosh 9500, 9600 │OldWorld│ │ ├──────────────────────────────────┼────────┤ │ │Power Macintosh (Beige) G3 │OldWorld│ │ │Minitower │ │ ├─────────────────────────────────┼──────────────────────────────────┼────────┤ │Power Macintosh (Beige) Desktop, │OldWorld │  │ │All-in-One │ │ │ ├─────────────────────────────────┼──────────────────────────────────┼────────┤ │PowerBook 2400, 3400, 3500 │OldWorld │  │ ├─────────────────────────────────┼──────────────────────────────────┼────────┤ │PowerBook G3 Wallstreet (1998) │OldWorld │  │ ├─────────────────────────────────┼──────────────────────────────────┼────────┤ │Twentieth Anniversary Macintosh │OldWorld │  │ ├─────────────────────────────────┼──────────────────────────────────┼────────┤ │Workgroup Server 7250, 7350, │OldWorld │  │ │8550, 9650, G3 │ │ │ ├─────────────────────────────────┼──────────────────────────────────┼────────┤ │ │PowerBase, PowerTower / Pro, │OldWorld│ │Power Computing │PowerWave │ │ │ ├──────────────────────────────────┼────────┤ │ │PowerCenter / Pro, PowerCurve │OldWorld│ ├─────────────────────────────────┼──────────────────────────────────┼────────┤ │UMAX │C500, C600, J700, S900 │OldWorld│ ├─────────────────────────────────┼──────────────────────────────────┼────────┤ │APS │APS Tech M*Power 604e/2000 │OldWorld│ ├─────────────────────────────────┼──────────────────────────────────┼────────┤ │Motorola │Starmax 3000, 4000, 5000, 5500 │OldWorld│ └─────────────────────────────────┴──────────────────────────────────┴────────┘ 2.1.2.3. PReP 子体系 ┌─────────────────────────────────────────────────────────┐ │ 型号名称/编号 │ ├───────────┬─────────────────────────────────────────────┤ │ │Firepower, PowerStack Series E, PowerStack II│ │ ├─────────────────────────────────────────────┤ │ │MPC 7xx, 8xx │ │ ├─────────────────────────────────────────────┤ │Motorola │MTX, MTX+ │ │ ├─────────────────────────────────────────────┤ │ │MVME2300(SC)/24xx/26xx/27xx/36xx/46xx │ │ ├─────────────────────────────────────────────┤ │ │MCP(N)750 │ ├───────────┼─────────────────────────────────────────────┤ │ │40P, 43P │ │ ├─────────────────────────────────────────────┤ │ │Power 830/850/860 (6070, 6050) │ │IBM RS/6000├─────────────────────────────────────────────┤ │ │6030, 7025, 7043 │ │ ├─────────────────────────────────────────────┤ │ │p640 │ └───────────┴─────────────────────────────────────────────┘ 2.1.2.4. CHRP 子体系 ┌─────────────────────────────────┐ │ 型号名称/编号 │ ├───────────┬─────────────────────┤ │IBM RS/6000│B50, 43P-150, 44P │ ├───────────┼─────────────────────┤ │Genesi │Pegasos I, Pegasos II│ └───────────┴─────────────────────┘ 2.1.2.5. APUS 子体系 ┌─────────────────────────────────────────────────┐ │ 型号名称/编号 │ ├─────────────────────────────┬───────────────────┤ │Amiga Power-UP Systems (APUS)│A1200, A3000, A4000│ └─────────────────────────────┴───────────────────┘ 2.1.3. 图形卡 Debian 对显卡的支持决定于 XFree86 的 X11 系统。大多数 AGP,PCI 和 PCI 视频卡都 能在 XFree86 下工作。更多的关于图形总线,显卡,显示器和指点设备的支持情况,见 http://www.xfree86.org/。Debian 3.1 包含 XFree86 4.3.0 版。 2.1.4. 多处理器 多处理器支持 -- (又称"symmetric multi-processing"或 SMP --) 在本体系架构下是受 到支持的。但是,标准的 Debian 3.1 内核并不支持 SMP。这不会影响安装,因为非 SMP 的内核也能在 SMP 的系统下启动,只不过内核只使用第一个 CPU。 为了使用多 CPU 的优势,您必须替换标准的 Debian 内核。您可以在第 8.4 节 "编译新 内核" 找到相关的讨论。当前(内核版本 2.6.8)启用 SMP 的方法是在内核配置的 "Platform support" 中选中 "Symmetric multi-processing support"。 2.2. 安装介质 本章将帮助您选定安装 Debian 可采用的不同介质。例如,您的电脑上有一个软驱,它就 可以用来安装 Debian。这里有一整章专门用于说明介质:第 4 章获取系统安装介质,并 且列出了每种类型的优缺点。当您阅读那一章的时候,可能要返回来参考本页。 2.2.1. 软盘 在某些条件下,不得不从软盘做首次启动。通常,您所需的只是一个 3.5 英寸高密 (1440kB)软驱。 用于 CHRP 的软盘支持已经被停止。 2.2.2. 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 章用安装系统启动。 2.2.3. 硬盘 从硬盘启动安装系统是许多体系的另外一个选择。这将要求其他的操作系统从硬盘加载安 装程序。 2.2.4. U 盘 许多 Debian 机器只在设置系统和急救用途时才需要软盘和 CD-ROM 驱动器。如果使用过 服务器,您也许已经想过怎么样省掉这些驱动器,而用 U 盘来安装和(在必需时)恢复系统 。这对那些没有足够空间容纳不必要驱动器的小型系统非常有用。 2.2.5. 网络 您还可以从网络启动(boot) 系统。 无盘安装,使用网络从局域网启动,并用 NFS 挂载所有的本地文件系统,是另一种选择。 在安装了操作系统的内核以后,您可以使用任何一种网络连接方式(包括安装完基本系统以 后使用 PPP) 通过 FTP 或 HTTP 完成剩余的系统安装任务。 2.2.6. Un*x 或 GNU 系统 如果您正在运行其它的类 Unix 系统,也可以用它来安装 Debian GNU/Linux 而无须本手 册剩余部分讲述的 debian-installer 使用方法。这类安装方法可能对那些因为硬件不支 持或机器停产的用户有用。如果您对此技术感兴趣,请直接跳到第 C.4 节 "通过 Unix/ Linux 系统来安装 Debian GNU/Linux"。 2.2.7. 受支持的存储系统 Debian 启动盘包括一个用于最大可能数量系统的内核。不幸的是,这将产生一个大内核, 其中包括许多您的机器并不需要的驱动程序(参考第 8.4 节 "编译新内核"学习如何创建自 己的内核)。在通常情况下,支持最大范围内的设备是一种较合适的设计,这将使得 Debian 可以在尽可能多的硬件上安装。 所有 Linux 内核支持的存储系统也都被启动系统所支持。注意当前的 Linux 内核还不支 持 CHRP 系统上的软盘。 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位多买了一位。 如果您想得到关于 PowerPC 内存的完整信息,以及什么才是最值得买的内存,请参考 PC Hardware FAQ。 2.5. 内存与磁盘空间的需求 您需要至少 32MB 的内存和 110MB 硬盘空间。对最小的基于控制台的系统(包括所有标准 软件包)需要250MB。如果您要安装适当的软件,包括 X Window 系统,以及一些开发工具 和库,需要至少400MB。对于一个基本的桌面系统,需要几个 G 的空间。 2.6. 网络连接硬件 任何受 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.5.1. 在 MacOS/OSX 下分区 3.6. 安装前的硬件和操作系统的相关设置 3.6.1. 使用 OpenFireware 3.6.2. 需要留心的硬件问题 本章用于处理在启动安装程序安装 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. 满足最低的硬件要求 一旦您收集好您的计算机上硬件配置的相关信息,再复查一下您的硬件,就可以让您如愿 以偿,安装上系统。 基于您的需求,您也许可以用低于下面表格所列的配置装上系统。但是,如果无视这些建 议的话,多数用户会安装失败。 任何一台 OldWorld 或 NewWorld PowerPC 都可以用作一个不错的桌面系统。要是作服务 器的话,建议至少要 132 Mhz 的机器才行。 表 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 的根目录准备一个专用的分区。 您可以通过当前的操作系统中的分区工具软件来获知您现在的分区状况,如 Drive Setup 、HD Toolkit 和 MacTools分区工具软件总会提供一种办法让您查看现有的分区情况,而 不作任何改动。 通常情况下,改动一个已经建立文件系统的分区,会导致其中的数据信息遭到损毁。因而 ,您应当在重新分区之前总是先做一下备份。继续拿房子作比喻,在移动墙壁时,您最好 在把挡路的家具都移开,否则就要冒家具被毁坏的危险。 如果您的计算机配有不只一块硬盘,您或许可以考虑把其中一块硬盘专门分配给 Debian 使用。这样的话,您就不用在启动安装系统前再对那块硬盘进行分区了,安装程序自带的 分区程序会漂亮地完成这个任务。 若是您的机器只有一块硬盘,而且您愿意把原来的操作系统全盘替换成 Debian GNU/Linux ,那么您可以在启动安装系统后,待到安装时再进行分区(第 6.3.2.1 节 "硬盘的分区") 。但是,只有当您使用存储于磁带、CD-ROM 或者联网的机器上的安装系统,并从它们启动 安装程序时,上面的话才适用于您的情形。试想一下:假如您用放在硬盘上的文件启动, 再在安装系统中对同一块硬盘进行分区,这就会擦除那些启动文件,这时恐怕您只能祈求 上苍保佑第一次就安装成功吧。在这种情况下,若要让您的机器恢复正常,至少您还可以 有几个办法可选,比如原先系统的安装磁带或 CD。 倘若您的机器已经有多个分区,并且通过删除或替换它们中的一个或多个就能为安装提供 足够的空间,那么您一样也可以把分区操作延后,到安装时再使用 Debian 安装程序自带 的分区工具。不过,您还是应当继续读完下面的文档,因为可能会存在一些特殊的情形。 比如,分区表中现有分区的顺序问题,这也许会令您不得不在安装前先分好区。 如果您的情况不属于上面任何一种,那么您需要在开始安装之前,事先为 Debian 腾出可 用于分区的空间。要是有分区是为其它操作系统准备的,您最好用该操作系统自己的分区 软件来新建这些分区。我们建议您不要用其它操作系统里的工具为 Debian 创建 Linux 分 区。也就是说,您应当仅仅创建要保留的操作系统自身的分区。 倘若您打算在同一台机器上安装多个操作系统的话,您应当在安装 Linux 之前,先把所有 其它系统都装好。Windows 和其它操作系统的安装过程可能会让您无法启动 Linux,也可 能会怂恿您重新格式化不属于它们自己的分区。 尽管您可以在这些操作之后再恢复回来,也可以避免它们,但是首先安装原有的系统就能 够帮您免除这些烦恼。 为了能让 OpemFirmware 自动启动 Debian GNU/Linux Linux 分区必须被安置在其它分区 之前,特别是 MacOS 的启动分区。在事先分区时,这一点您必须牢记在心。即,您必须在 其它可引导分区之前为 Linux 预留一个分区。(专门留给 Apple 的硬盘驱动程序的那些小 分区并不是可引导的。) 您可以在真正安装时,用 Linux 的分区工具来删除当初预留的分 区,再用 Linux 的分区取而代之。 如果您现在有一块硬盘,这块硬盘上仅有一个分区(这是桌面电脑的通常设置),同时您希 望能多重启动原有的操作系统和 Debian,那么您就需要: 1. 备份计算机里所有的数据。 2. 从原有操作系统的安装介质(如 CD-ROM 和磁带)启动。当从 MacOS CD 启动时,按住 c 键不放,这样就能启用 CD 作为当前的 MacOS 系统。 3. 使用原有系统里的分区工具来新建属于原来系统的分区。为 Debian GNU/Linux 或者 预留一个分区,或者腾出一块空闲空间。 4. 把原有的操作系统安装到属于它的新分区上。 5. 启动到原有的操作系统,以确保一切正常,再下载 Debian 安装程序的启动文件。 6. 启动 Debian 安装程序,并继续安装 Debian。 3.5.1. 在 MacOS/OSX 下分区 Apple Drive Setup 程序可以在 MacOS CD 的 Utilities 文件夹里面找到。它并不能调整 已经存在的分区,而仅限于一次性完成整个磁盘的分区。硬盘分区并不会展现在 Drive Setup 中。 记住要为 GNU/Linux 创建一个占位用的是分区,最好是磁盘布局中的第一个。它的类型无 关紧要,在后面的 Debian GNU/Linux 安装程序中,它会被删除并替换。 如果您计划同时安装 MacOS 9 与 OS X,最好为 OS 9 和 OS X 创建不同的分区。如果将 它们安装在同一分区,就必须使用 Startup Disk (并重启)来选择它们两个,而在启动时 是无法对两个操作系统进行选择的。使用不同的分区,如果在启动时按住 option 键就可 以显示出 OS 9 和 OS X 两个不同的选项,而且这些分开的选项也可以被安装到 yaboot 启动菜单里面。还有,Startup Disk 将无法保证其他可挂载的分区的可靠性,这可能会影 响 GNU/Linux 启动。OS 9 和 OS X 分区从 OS 9 和 OS X 中都能访问。 GNU/Linux 不能读取 UFS 分区,但支持 HFS+ (又称 MacOS Extended) 分区。OS X 要求 使用这两个分区类型之一作为引导分区。MacOS 9 能安装到 HFS (又称 MacOS Standard) 或 HFS+ 上。建一个交换信息分区就可以很方便地在 MacOS 和 GNU/Linux 系统间共享信 息。HFS,HFS+ 和 MS-DOS FAT 分区都能被 MacOS 和 Linux 支持。 3.6. 安装前的硬件和操作系统的相关设置 在本节中,我们将讨论安装之前有关硬件设置的一些问题。如果这些问题的确存在的话, 您就需要在安装 Debian 前先做一些准备工作了。一般来说,准备工作包括:检查固件 (firmware) 以及为您的系统修改固件中的设定。所谓"固件"就是硬件运行所需的核心软件 。它在系统引导过程(即开机之后)中起到了至关重要的作用。我们同时也会着重提出一些 硬件问题,您系统上这些硬件问题在将会影响到 Debian GNU/Linux 的可靠性。 3.6.1. 使用 OpenFireware 通常在 PowerPC 系统上不需要去设置 BIOS(称为 OpenFirmware)。OpenFirmware 常常配 备 PReP 与 CHRP,但这也意味着依不同厂商而不同。您必须参阅计算机手册中相关的硬件 文档。 在 PowerPC 的 Macintoshe 机器上,您在启动时通过 Command-option-O-F 命令使用 OpenFirmware。一般情况下,它会按时钟顺序检验击键,但也会与不同的型号有关。参阅 http://www.netbsd.org/Ports/macppc/faq.html 了解更多提示。 OpenFirmware 的提示看起来像: ok 0 > 注意旧型号的 PowerPC Mac 机器,OpenFirmware 与用户交互所用的默认和某些硬连线的 I/O 是通过串行(调制解调器)端口进行的。如果您在这样的机器上使用 OperFirmware,您 只会看到黑屏。在这种情况下,需要用通过调制解调器端口连接到另外一台电脑上的终端 程序来与 OpenFirmware 交互。 运行在 OldWorld Beige G3 机器上的 OF 版本 2.0f1 和 2.4 的 OpenFirmware 是坏的。 这些机器如果没有打固件补丁,就不能够从硬盘启动。固件的补丁包括 System Disk 2.3.1 工具,位于 Apple 的 ftp://ftp.apple.com/developer/macosxserver/utilities/ SystemDisk2.3.1.smi.bin。在 MacOS 上解包并运行它,选择保存按钮使固件补丁安装到 nvram。 3.6.2. 需要留心的硬件问题 有很多人曾试过把他们的 90 MHz 的 CPU 超频到 100 MHz 使用,以及其他诸如此类的做 法。这有时可行,但是它有赖于外界的温度和其他因素,而且超频可能会损毁您的系统。 这个文档的作者之一曾把他的系统超频使用了有一年,从那以后他的系统在编译操作系统 的内核时,总是发现 gcc 的运行被意外的信号中止了。后来,当把 CPU 的频率调回它的 标称速度后,问题迎刃而解。 如果内存模块有故障的话(或者出现其他会使数据发生异变的硬件故障),gcc 编译器经常 是第一个停止工作的程序。因为它会生成庞大的数据结构,并把它们在内存中频繁移动。 一旦这些数据结构中有错,就会导致程序执行非法指令或者访问不存在的地址空间。表现 出症状就是gcc 被一个意外的信号中止运行。 3.6.2.1. 大于 64 MB 内存 Linux 内核有时不能检测出您系统中的内存大小。如果这正符合您的情况,请参阅一下第  5.2 节 "引导参数"。 第 4 章 获取系统安装介质 目录 4.1. 官方的 Debian GNU/Linux 光盘套装 4.2. 从 Debian 镜像服务器下载文件 4.2.1. 在哪里能找到安装映像 4.3. 从软盘映像创建引导软盘 4.3.1. 从 Linux 或者 Unix 系统写软盘映像 4.3.2. 在 DOS、Windows、或者 OS/2 下写磁盘映像 4.3.3. 在 MacOS 上写磁盘映像 4.4. 为从 USB 闪盘引导准备文件 4.4.1. 复制文件 -- 轻松的途径 4.4.2. 复制文件 -- 灵活的方法 4.5. 为从硬盘引导准备文件 4.5.1. 在 OldWorld Macs 上引导硬盘安装程序 4.5.2. 在 NewWorld Macs 上启动硬盘安装程序 4.6. 为使用 TFTP 网络引导准备文件 4.6.1. 设置 BOOTP 服务器 4.6.2. 设置 DHCP 服务器 4.6.3. 开启 TFTP 服务器 4.6.4. 将 TFTP 映像放到适当的位置 4.7. 自动化安装 4.7.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 光盘套件,您可以使用其他的方法比 如:软盘、硬盘、 U 盘、网络引导,或者从 CD 盘中手工装载内核来初始化系统安装程序 。CD 盘已经包含了通过其他方法引导所需要的文件; Debain 的网络存档和 CD 盘的文件 夹组织方式是一致的。因此如果后面有给出的用于引导的特定存档文件路径时,请在 CD 盘中同样的文件目录和子目录下查找它们。 一旦安装程序被引导,它将能够获得 CD 盘中其他所有必需的文件。 如果您没有一套 CD 光盘套件,则您需要下载安装系统文件并且把他们放到:软盘或硬盘 或 U 盘或一台连网的计算机上然后他们可以被用来引导安装程序。 4.2. 从 Debian 镜像服务器下载文件 选择离您较近的(因此很可能也是最快的)镜像服务器,请参见 Debian 镜像列表。 当从 Debian 镜像服务器下载文件的时候,请确认下载的文件是处于二进制模式,而不是 文本或者自动模式。 4.2.1. 在哪里能找到安装映像 安装映像位于每一个 Debian 镜像的 debian/dists/sarge/main/installer-powerpc/ current/images/ -- MANIFEST 文件列出了每一个映像及其用途。 4.3. 从软盘映像创建引导软盘 可启动的软盘一般被视为是在那些不能从光盘或其它方式启动的硬件上引导安装程序的最 后一种方法。 有报告说 Mac USB 软盘驱动器不支持引导软盘。 软盘映像是一些包含完整的原始格式软盘内容的文件。类似 boot.img 这样的软盘映像不 能直接拷贝到软盘中。有一个特殊的程序可以将它们按原始模式写入软盘。这是一个必须 的步骤,因为这些映像文件是一些原始的磁盘保存方式。所以需要把文件的数据按扇区拷 贝放到软盘中。 根据平台的不同,有各种不同的方法来从软盘映像创建引导软盘。这一节将描述如何在不 同平台上从软盘映像创建引导软盘。 无论您使用何种方法来建立引导软盘,您应该在建立以后记住打开写保护的开关,以便确 保内容不会在无意被抹掉。 4.3.1. 从 Linux 或者 Unix 系统写软盘映像 为了把软盘映像写入软盘,您可能需要系统的 root 访问权限。在软驱中放入一张优质的 空白软盘,然后使用命令 $ dd if=filename of=/dev/fd0 bs=1024 conv=sync ; sync 其中 filename 是一个软盘映像文件(请参阅第 4.2 节 "从 Debian 镜像服务器下载文件" 来获知应该使用哪个 filename)。/dev/fd0 是一个常见的软驱设备名。可能在您的工作站 上面有所不同。这个命令也许在写软盘任务结束之前就会返回到命令符下。请观察软盘驱 动器上面的磁盘使用灯,并且确保在您拔出软盘的时候灯已熄灭。在某些系统上,您可能 需要运行一条命令来弹出软盘。 有些系统会在您放入软盘时自动尝试对其进行挂载。若要让工作站允许您对软盘进行原始 模式写入操作,您可能必须关闭此功能。不幸的是,如何关闭此功能的方法完全取决于具 体的操作系统。 如果想在 powerpc Linux 上写入一张软盘,您将必须弹出它。eject 命令能够很好地对此 进行控制,当然您可能需要先安装它。 4.3.2. 在 DOS、Windows、或者 OS/2 下写磁盘映像 如果您能操作一台 i386 机器,您可以使用如下方法之一往软盘拷贝映像文件。 rawrite1 和 rawrite2 程序可在 MS-DOS 下使用。如果想使用这些程序,首先要确定您是 从 DOS 启动。在 Windows 的 DOS 窗口或者在文件浏览器中双击使用这些程序是不能运行 的。 rwwrtwin 程序可以在 Windows 95、NT、98、2000、ME、XP 甚至可能最新的版本上运行。 要使用它您需要解压 diskio.dll 至相同目录下。 这些工具可以在官方 Debian 光盘中找到。他们位于 /tools 目录下。 4.3.3. 在 MacOS 上写磁盘映像 这里有一个名为 Make Debian Floppy 的 AppleSrcipt 可以用来从所提供的磁盘映像制作 软盘。它可以从 ftp://ftp2.sourceforge.net/pub/sourceforge/d/de/debian-imac/ MakeDebianFloppy.sit 处下载。使用时只需要解压文件至桌面然后向其拖入您想刻录的映 像文件。您必须已经安装了 Applescript 并在您的扩展管理器中开启它。Disk Copy 会要 求您确认您的确想要清空磁盘并写入磁盘映像。 您也可以直接使用 MacOS 工具 Disk Copy ,或者免费软件工具 suntar。root.bin 是一 个软盘映像范例。您可以使用以下方法之一来利用这些工具将磁盘映像写入软盘。 4.3.3.1. 写磁盘映像:使用Disk Copy 假如您是使用官方 Debian GNU/Linux 光盘上的软盘映像文件,那么 Type 和 Creator 已 经设置正确。以下 Creator-Changer 步骤只针对从 Debian 镜像下载映像文件的情况。 1. 取得 Creator-Changer 并且用它打开 root.bin 文件。 2. 将 Creator 改为 ddsk (Disk Copy),并将 Type 改为 DDim (binary floppy image) 。注意此处大小写敏感。 3. 注意:在 Finder 中,使用 Get Info 来显示关于软盘映像的 Finder 信息,并在 File Locked 复选框中划上"X"。这样在映像意外的被挂载时 MacOS 将不会删除引导 区。 4. 获取 Disk Copy。如果您已经拥有了 MacOS 系统或光盘,它多半就已经被包含在其中 ,否则可以试试 http://download.info.apple.com/Apple_Support_Area/ Apple_Software_Updates/English-North_American/Macintosh/Utilities/Disk_Copy /Disk_Copy_6.3.3.smi.bin。 5. 运行 Disk Copy,并且从 Utilities 菜单中选择 Make a Floppy,然后从对话框中选 择 locked 的映像文件。它会要求您插入一张软盘,然后询问是否删除它。完成后它 应该会弹出软盘。 4.3.3.2. 写磁盘映像:使用suntar 1. 获取 suntar,它在 中。运行 suntar 程序并且从 Special 菜单中选择"Overwrite Sectors..."。 2. 按照要求插入软盘,然后点击 Enter (从0扇区开始)。 3. 在打开文件对话框中选择 root.bin 文件。 4. 当软盘被成功写入之后,选中 File->Eject。如果写盘期间发生任何错误,请换别的 软盘试试。 在使用您创建的软盘之前,请设置写保护标签!否则,如果您偶然在 MacOS 中挂载了它, MacOS 将会将其毁坏。 4.4. 为从 USB 闪盘引导准备文件 您需要一台运行支持 USB 的 GNU/Linux 系统来为 USB 闪盘引导准备文件。您应该确定 usb-storage 内核模块已经被加载(modprobe usb-storage) 然后尝试找出 USB 闪盘被映 射到的哪个 SCSI 设备(在此以 /dev/sda 为例)。为了写入您的闪盘,您可能需要关闭它 的写保护开关。 注意,准备的 USB 闪盘应该至少有 128MB 的容量(在更小的尺寸安装也是可能的,请参考 第 4.4.2 节 "复制文件 -- 灵活的方法")。 4.4.1. 复制文件 -- 轻松的途径 这里有一个合集文件 hd-media/boot.img.gz,其中包含了所有的安装程序文件(包括内核) ,以及 yaboot 和它的配置文件。您可以使用 mac-fdisk 的 C 命令在您的 USB 闪盘上创 建一个类型为 "Apple_Bootstrap" 的分区,然后直接解开映像文件到: # zcat boot.img.gz > /dev/sda2 警告 采用这种方法将销毁设备上的任何内容。请确保您使用了 USB 闪盘的正确设备名。 然后,挂载 USB 闪盘(mount /dev/sda2 /mnt),它上面应该已经具有一个 HFS 文件系统 ,您再将一个 Debian netinst(网络安装) 或 businesscard(名片) ISO 映像拷贝到盘上 。请注意文件名必须以 .iso 结尾。卸载闪盘(umount /mnt)后结束。 4.4.2. 复制文件 -- 灵活的方法 如果您需要更多的灵活性或者只是想了解其间发生了什么,您应该使用如下的方法来把文 件放到您的闪盘。 4.4.2.1. 在 PowerPC 上为 USB 闪盘分区 绝大多数 USB 盘的预设置都不能让 Open Firmware 从该盘进行引导,因此您需要为闪盘 重新分区。在 Mac 系统上,执行 mac-fdisk /dev/sda,用 i 命令初始化新的分区映射, 然后使用 C 命令创建一个新的类型为 Apple_Bootstrap 的分区。(要注意的是第一个分区 总是分区映射本身。)然后键入 $ hformat /dev/sda2 注意使用正确的 USB 盘设备名称。hformat 命令包含在 hfsutils Debian 包中。 为了能在 USB 闪盘引导后启动内核,我们要在 USB 闪盘上放入一个启动引导程序。 yaboot 启动引导器可以被安装到 HFS 文件系统上,而且只需要编辑一个文本文件就能对 其重新进行配置。任何支持 HFS 文件系统的操作系统可以用来改变启动引导器的配置文件 。 常用的 ybin 工具(随 yaboot 附带)并不能识别 USB 存储设备,因此您不得不手动安装 yaboot,这可以通过 hfsutils 工具来完成。用法如下: $ hmount /dev/sda2 $ hcopy -r /usr/lib/yaboot/yaboot : $ hattrib -c UNIX -t tbxi :yaboot $ hattrib -b : $ humount 再提醒一次,请确认您使用的是正确的设备名称。操作过程中一定不能挂载此分区。程序 会向分区中写入启动引导器,并使用 HFS 工具向其添加标记,最终使得 Open Fireware 可以启动它。完成以上操作之后,USB 盘的其他部分就可以用普通的 Unix 工具来处理了 。 接下来就是挂接分区(mount /dev/sda2 /mnt)以及将下列文件从 Debain 文件库拷贝到闪 盘上: ● vmlinux (内核二进制文件) ● initrd.gz (初始化内存映像) ● yaboot.conf (yaboot 配置文件) ● boot.msg (可选的启动信息) ● 可选的内核模块 yaboot.conf 配置文件应该含有以下几行: default=install root=/dev/ram message=/boot.msg image=/vmlinux label=install initrd=/initrd.gz initrd-size=10000 append="devfs=mount,dall --" read-only 请注意,在必要的时候,您可能需要增大initrd-size 参数的数值,这完全取决于您所使 用的内存映像的大小。 4.4.2.2. 添加 ISO 映像 现在您需要把任意一个 Debian ISO 映像(businesscard、netinst 或者甚至是完全版)放 入您的 USB 闪盘内(如果它装得下的话)。这样的一个映像文件的后缀名必须是 .iso。 如果您想直接通过网络安装而不使用 ISO 映像,当然就可以跳过上述步骤。并且您必须要 使用 netboot 目录中的初始化内存映像来取代来自 hd-media 的相同文件。这是因为 hd-media/initrd.gz 并不包含网络支持。 当您完成后,卸载 USB 闪盘(umount /mnt)并打开写保护。 4.5. 为从硬盘引导准备文件 安装程序可以从硬盘分区上面用引导文件引导。它们可以在其它操作系统下面启动,或者 直接使用 BIOS 提供的引导装载程序直接启动。 采用这个技术可以实现完全的"纯网络"的安装方式。这样可以避免一些使用可移动介质带 来的的缺点,比如寻找和刻录光盘映像或是与大量且不可靠的软盘纠缠不清。 安装程序无法从 HFS+ 文件系统进行引导。MacOS System 8.1 及之后的系统可能使用 HFS+ 文件系统,NewWorld PowerMacs 则全部使用 HFS+。要确认您的系统是否是 HFS+, 请选择 Get Info 来查看相关卷信息。HFS 文件系统文件系统显示为 Mac OS Standard, 而 HFS+ 文件系统将显示为 Mac OS Extended。您必须使用一个 HFS 分区来在 MacOS 和 Linux 之间交换文件,特别是那些您下载的安装文件。 根据您的系统是"NewWorld"还是"OldWorld"型号,硬盘安装程序的引导将使用不同的安装 文件。 4.5.1. 在 OldWorld Macs 上引导硬盘安装程序 boot-floppy-hfs 软盘使用 miBoot 来启动 Linux 安装,但是 miBoot 不易用于从硬盘引 导。运行于 MacOS 的 BootX 支持从硬盘上的文件进行引导。BootX 也能在安装完 Debian 后用于 MacOS 和 Linux 的双重引导。对于 Performa 6360 来说,quik 看上去不能让硬 盘可引导。因此 BootX 对于该型号来说是必须的。 请下载并且解压 BootX 发布版本。它可以从 http://penguinppc.org/projects/bootx/, 或者 Debian http/ftp 镜像以及官方 Debian 光盘的 dists/woody/main/disks-powerpc/ current/powermac 目录下得到。可以用 Stuffit Expander 来把它从打包档案中解开。在 这个包中,有一个名为 Linux Kernels 的空文件夹。请下载 linux.bin 和 ramdisk.image.gz (位于 disks-powerpc/current/powermac 文件夹),然后把他们放到 Linux Kernels 文件夹中,然后把 Linux Kernels 文件夹放到活动的系统文件夹中。 4.5.2. 在 NewWorld Macs 上启动硬盘安装程序 NewWorld PowerMacs 支持从网络或者 ISO9660 格式光盘进行引导,或者直接从硬盘上载 入 ELF 二进制文件。这类机器可以直接使用 yaboot引导。它既支持直接从 ext2 分区中 装入内核和内存虚拟磁盘,也支持和 MacOS 的双重引导。硬盘引导特别适合最新的没有软 驱的机器。BootX 则不被支持,也一定不能用在 NewWorld PowerMacs 上。 拷贝(而非移动)您早先从 Debian 存档下载的下列四个文件到您硬盘的根目录上(这个可以 用按住 option 键然后拖动每个文件到硬盘图标的方法来完成)。 ● vmlinux ● initrd.gz ● yaboot ● yaboot.conf 记下您存放这些文件的 MacOS 分区号。如果您有 MacOS 的 pdisk 程序,您可以使用 L 命令检查分区号。当引导安装程序的时候,您需要这个分区号码用于在 Open Firmware 提 示符下面输入命令。 要引导安装程序,请进入第 5.1.2.3 节 "从 NewWorld Macs 的 OpenFirmware 引导"。 4.6. 为使用 TFTP 网络引导准备文件 如果您的机器连接到了一个局域网,您可以从网络上的另外一台机器上面通过 TFTP 来引 导它。如果您倾向从另外一台机器上面引导安装系统,则引导文件需要放在那台机器上面 的某个特殊地方,并且配置好能够能够支持对您的机器进行引导。 您需要设置一台 TFTP 服务器,并且对于很多机器来说,还需要一台 BOOTP 服务器,又或 DHCP 服务器。 BOOTP 是一种 IP 协议,用来告诉一台计算机它自己 IP 地址以及从网络何处获得启动映 像。 DHCP (动态主机配置协议 Dynamic Host Configuration Protocol) 是一个更灵活, 向后兼容的 BOOTP 拓展。有一些系统只能通过 DHCP 来配置。 对于 PowerPC 来说,如果您有一台 NewWorld Power Macintosh 机器,使用 DHCP 来代替 BOOTP 比较好。有些最新的机器不能从 BOOTP 引导。 普通文件传输协议(Trivial File Transfer Protocol (TFTP))被用于为客户提供引导映像 。理论上,任意服务器,在任意平台上只要实现了这些协议就都能够被应用。在这一节的 一些例子里面,我们将提供在 SunOS 4.x、SunOS 5.x (即 Solaris) 和 GNU/Linux 上面 的一些操作例子。 4.6.1. 设置 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.6.4 节 "将 TFTP 映像放到适当的位置" 处获得 更多的信息。 相反,通过 ISC dhcpd 设置 BOOTP 就非常容易。因为它把 BOOTP 客户程序看成一个特殊 的 DHCP 客户端。部分体系结构需要经过复杂的设置才能从 BOOTP 启动客户端。如果您的 机器属于这种情况,请阅读第 4.6.2 节 "设置 DHCP 服务器"。否则,您大概只需要将 allow bootp 指令添加到包含客户机的子网的配置部分,并重新启动 dhcpd 就可以了,重 启的命令是:/etc/init.d/dhcpd restart。 4.6.2. 设置 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.6.3. 开启 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.6.4. 将 TFTP 映像放到适当的位置 接下来,将在第 4.2.1 节 "在哪里能找到安装映像"中找到的 TFTP 启动映像放置到tftpd 引导映像目录中。一般来说,这个目录将是 /tftpboot。您必须将该文件链接到 tftpd 所 使用的引导特定客户端的文件名。不幸的是,这个文件名完全决定于 TFTP 客户程序,并 且没有一个强制的标准。 在 NewWorld Power Macintosh 上,您需要设置 yaboot引导装载器作为 TFTP 引导映像。 Yaboot 接下来将通过 TFTP 来获到内核和内存虚拟磁盘映像。对于网络引导,请使用 yaboot-netboot.conf。只需要将其改名为 yaboot.conf 并且放入 TFTP 目录。 4.7. 自动化安装 对于有多台需要安装的计算机的情况,可以采用全自动安装的方式。用于此项任务的 Debian 软件包有 fai(需要使用一台安装服务器),replicator、systemimager、 autoinstall,以及 Debian 安装程序本身。 4.7.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. 在 PowerPC 上引导安装程序 5.1.1. 从 CD-ROM 启动 5.1.2. 从硬盘引导 5.1.3. 从 USB 闪盘引导 5.1.4. 用 TFTP 引导 5.1.5. 从软盘引导 5.1.6. PowerPC 引导参数 5.2. 引导参数 5.2.1. Debian 安装程序的参数 5.3. 安装过程中的故障修复 5.3.1. 软盘的可靠性 5.3.2. 引导配置 5.3.3. 内核起始信息注解 5.3.4. Bug Reporter 5.3.5. 提交缺陷报告 5.1. 在 PowerPC 上引导安装程序 5.1.1. 从 CD-ROM 启动 对于大多数人来说,最快的途径是使用一套 Debian CD 光盘套件。如果您有此套件,并且 如果您的机器支持直接 CD 引导,太棒了!只需要插入您的 CD,重启,然后继续下一章。 注意某些特定的 CD 驱动器需要一些特殊的驱动程序,由此他们可能在安装的早期不能被 访问。如果标准的从 CD 引导的方法不能用于您的硬件,阅读本章中关于其他种类的内核 以及安装方法,它们有可能能解决问题。 即便您不能从 CD 光盘引导,依然可以安装 CD 光盘上面的 Debian 系统组件和所有软件 包。只需要使用不同的媒介,比如软盘引导系统。当安装操作系统,基础系统和任意附加 的软件包时只需指向安装系统至光盘驱动器即可。 如果您遇到引导方面的问题,请参见第 5.3 节 "安装过程中的故障修复"。 当前来说,PowerPC 下的子体系结构只有 PReP 和 New World PowerMacs 支持 CD 光盘引 导。在 PowerMacs 下在从 CD 光盘上引导时,按住 c 键,或者组合键 Command, Option, Shift, 和 Delete 。 OldWorld Powermacs 不能从一张 Debian CD 上引导,因为 OldWorld 计算机需要在 CD 上安装一个 MacOSROM CD 引导驱动程序但是目前还没有自由的版本。所有的 OldWorld 系 统具有软盘驱动程序,因此可以使用软盘驱动程序来启动安装程序,然后让安装程序从 CD 上选择所需要的文件。 如果您的系统不支持直接从 CD 光盘启动,仍然可以采用 CD 光盘来安装系统。在 NewWorlds 上面,可以使用一个 OpenFirmware 命令来手工从 CD 光盘引导。按照第  5.1.2.3 节 "从 NewWorld Macs 的 OpenFirmware 引导" 的方法从硬盘来进行引导,只 是在 OF 提示符下使用 CD 上的 yaboot 路径,比如: 0 > boot cd:,\install\yaboot 5.1.2. 从硬盘引导 从一个以存在的操作系统上引导通常是一个方便的选择;对于一些系统来说,这则是唯一 支持的安装方法。 如果要从硬盘上引导安装程序,您也许已经在第 4.5 节 "为从硬盘引导准备文件" 处下载 并且在第 4.5 节 "为从硬盘引导准备文件" 安置了所需文件。 5.1.2.1. 从 OpenFirmware 引导 CHRP 还没有完成 5.1.2.2. 从 OldWorld PowerMacs 的 MacOS 上引导 如果您在第 4.5.1 节 "在 OldWorld Macs 上引导硬盘安装程序" 中设置好了 BootX,您 可以使用它引导进入安装系统。双击 BootX 应用程序图标。点击 Options 按钮并且选择 Use Specified RAM Disk。这将可以让您选择 ramdisk.image.gz 文件。也许根据您的硬 件情况需要选择 No Video Driver 选择框。然后点击 Linux 按钮,来关闭 MacOS 以及启 动安装程序。 5.1.2.3. 从 NewWorld Macs 的 OpenFirmware 引导 您也许已经按照 vmlinux, initrd.gz, yaboot 和 yaboot.conf 在 HFS 分区的根层次放 置好了第 4.5.2 节 "在 NewWorld Macs 上启动硬盘安装程序" 文件。请重新启动计算机 ,并且立即(在发声时)同时按住 Option, Command (cloverleaf/Apple), o, 和 f 键。过 几秒钟后,将进入 Open Firmware 提示符。在提示符下,输入: 0 > boot hd:x,yaboot 用放置内核和 yaboot 文件的 HFS 分区号来替换 x 然后按下 Enter。在某些机器上,您 也许需要时用 ide0: 来替换 hd:,在接下来的几秒钟内,将会看到一个提示符 boot: 在 yaboot 的 boot: 提示符下,输入 install 或者 install video=ofonly 然后点击 Enter。video=ofonly 参数是用于最大可能性的兼容性;您可以在 install 不工作的情况 下尝试使用它。Debian 安装程序应该立刻启动。 5.1.3. 从 USB 闪盘引导 当前,New World PowerMac 系统支持从 USB 引导。 确认您已经准备就绪第 4.4 节 "为从 USB 闪盘引导准备文件"。要从 USB 记忆棒引导 Macintosh 系统,即使 Open Firmware 默认不搜索 USB 存储设备,您也需要使用 Open Firmware 提示符。要得到提示符,在启动时按住 Command-Option-o-f (参考第 3.6.1 节 "使用 OpenFireware")。 您还需要算出 USB 存储设备在设备树上的位置,因为现在 ofpath 无法自动计算。键入 dev / ls 和 devalias 到 Open Firmware 提示符下,得到所有的已知设备和设备别名。 在笔者的系统上有各种 USB 记忆棒,路径诸如 usb0/disk, usb0/hub/disk, / pci@f2000000/usb@1b,1/disk@1,和 /pci@f2000000/usb@1b,1/hub@1/disk@1 。 得到设备路径之后,用类似下面的命令启动安装程序: boot usb0/disk:2,\\:tbxi 2 匹配前面复制启动映象所在的 Apple_HFS 或 Apple_Bootstrap 分区,,\\:tbxi 部分指 示 Open Firmware 从具有 "tbxi" 类型的 HFS 文件引导(如 yaboot) 位于前面使用 bless 目录 hattrib -b。 系统应该可以引导,然后您看到 boot: 提示符。这里您可以输入启动参数,或者只按下 Enter。 警告 这个是新的启动方法,可能无法在一些 NewWorld 系统上工作。如果您遇到问题,请写下 安装报告,参阅第 5.3.5 节 "提交缺陷报告"。 5.1.4. 用 TFTP 引导 从网络引导需要您已经具备网络的连接和一台 TFTP 网络引导服务器(DHCP, RARP 以及 BOOTP)。 支持的网络引导安装方法在第 4.6 节 "为使用 TFTP 网络引导准备文件"。 目前来说,PReP 以及 New World PowerMac 系统支持网络引导。 在 Open Firmware 机器上,比如 NewWorld Power Macs,进入引导监视器(参阅第 3.6.1  节 "使用 OpenFireware") 并且使用命令 boot enet:0。PReP 以及 CHRP 可能使用不同的 途径来确认网络。在一台 PReP 机器上,您应该尝试 boot server_ipaddr,file,client_ipaddr。 5.1.5. 从软盘引导 PowerPC 支持从软盘引导,尽管它本来只适合 OldWorld 系统。NewWorld 系统并没有安装 软盘驱动器,并且附带的 USB 软盘并不支持引导。 您可能已经下载了所需要的软盘映像,并且根据这些映像创建了软盘第 4.3 节 "从软盘映 像创建引导软盘"。 若需要从 boot-floppy-hfs.img 软盘引导,请在关闭系统后在按下电源开关前把它放到软 盘驱动器内。 注意 对于不熟悉 Macintosh 软盘操作的人来说:一个放在软驱的软盘将获得第一优先引导顺序 。一个没有有效引导系统的软盘将回被弹出,并且机器将检查硬盘分区。 引导之后需要含有 root.bin 的软盘。插入引导软盘并且按下 Enter。安装程序将在根系 统被装入内存后自动启动。 5.1.6. PowerPC 引导参数 许多比较老的 Apple 显示器使用 640x480 67Hz 模式。如果您的显示在这些老 Apple 显 示器上是扭曲的,请尝试加入引导参数 video=atyfb:vmode:6 。它将为大多数 Mach64 和 Rage 显示设备选择合适的模式。对于 Rage 128 来说,请改变其值为 video= aty128fb:vmode:6 。 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.7 节 "自动化安装"。 preseed/file 指定路径至预设文件,加载自动化安装。参阅第 4.7 节 "自动化安装"。 ramdisk_size 如果您在使用 2.2.x 内核,也许需要设置 ramdisk_size=13000 。 5.3. 安装过程中的故障修复 5.3.1. 软盘的可靠性 对于用软盘安装 Debian 的人来说,他们遇到的最大的问题很可能是软盘的可靠性。 问题出现最严重的是糟糕的引导软盘,因为他们由硬件直接读出,然后才进入 Linux 引导 。很多情况下,硬件驱动的读取并不能像 Linux 软盘驱动读取那样可靠,并且对于读到错 误的数据,它们只是停止运行并且打印一条错误的消息。驱动软盘的错误只是打印出很多 有关的 I/O 错误。 如果您在特定的软盘上陷入麻烦,第一件要做的事情,是重新下载磁盘映像并且把它写到 另外一张软盘上。仅仅只是格式化老的软盘是不够的,有可能的话甚至要在别的统上重写 这些软盘。 一个用户报告过它不得不把映像往软盘写了三最后一次的软盘才算工作良好。 其他一些用户报告过用同样的软盘重新启动若干次才能有一次成功的引导。这都是因为硬 件或者有缺陷的固件软盘驱动程序造成的。 5.3.2. 引导配置 如果在引导过程中您遇到了问题或者内核挂起,不识别实际拥有的外围设备,或者驱动是 一个不被正确识别,首先要做的事情是检查引导参数,在第 5.2 节 "引导参数"。 如果引导的是您自己的内核,而不是安装程序提供的内核,请确定 CONFIG_DEVFS 已被设 置到内核。安装程序需要 CONFIG_DEVFS。 通常,可以通过移除外挂硬件或者外围设备来解决问题,然后再次重新引导 如果您的机器上装有多于 512M 的大容量的内存,并且安装程序在引导内核时停止,您可 能需要加入一个引导参数,来限制内核能够看的的内存数量,比如 mem=512m。 5.3.3. 内核起始信息注解 在引导期间,您可以看到很多信息类似 can't find something ,或者 something not present,can't initialize something ,或者甚至 this driver release depends on something 。大多数这些信息都是无害的。您之所以看到它们,是因为安装系统内核被设 计成为可以运行在不同的计算机,并且拥有不同的外围设备。显然地,没有一个计算机可 能拥有所有的外围设备,因此操作系统可能在查找一些您没有的设备上有一些报怨。有时 可以看到系统暂停了一段时间。这是由于它在等待一台设备的回应,但是这台设备并没有 安装在您的系统上。如果您发现这个时间非常长,您可以一会创建一个自己的内核(参见第  8.4 节 "编译新内核")。 5.3.4. Bug Reporter 如果您过了初始化引导,但还是不能安装,Bug Reporter 菜单选项可能会很有用。它复制 系统的错误记录和配置信息到一张用户提供的软盘。这个信息可能提供了一些关于错误的 起因和如何解决它的线索。如果您正在提交一个 bug 报告,您可以附上这个信息。 其他相关安装期间的安装信息可以在 /var/log/ 找到,以及在计算机已经引导至安装后的 系统的 /var/log/debian-installer/ 中。 5.3.5. 提交缺陷报告 如果仍有问题,请提交安装报告。即使安装成功,我们也鼓励您发一份安装报告,这让我 们可以尽可能多的了解硬件的配置数量。 请采用下列模板填写安装报告,并发邮件到 给 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 健, 沿着上箭头。 有两种 US 键盘布局;qwerty/mac-usb-us (Apple USB) 将 Alt 功能放在 Command/Apple 健 (处于键盘的空格健旁,类似于 PC 键盘的 Alt ),另外 qwerty/us (Standard) 布局 将 Alt 功能放在 Option 健上(在大多数 Mac 键盘上标明 'alt')。其余地方这两种布局 相似。 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)。 注意 在 Apple Power Macintosh 硬件上,现在还没有一个广为接受的识别包含 LVM 数据分区 的标准。在这种硬件上,以上创建物理卷和卷组的步骤将不能工作。假如您熟悉底层的 LVM 工具,有一种突破这种限制的方法。 为了在 Power Macintosh 硬件上安装使用逻辑卷,您应该按通常方式创建所有的磁盘分区 。在 Partition settings菜单里,您应该选择用做:->Do Not Use对那些分区(您将不会 被要求使用这些分区作为物理卷)。当您创建完所有的分区,您可以正常启动逻辑卷管理器 。然而,因为没有创建物理卷,您现在必须通过第二虚拟终端打开命令 shell (参阅第  6.3.6.2 节 "使用 Shell 查看记录") 并且手动创建它们。 在命令行提示符下使用 pvcreate 命令为您选择的分区创建物理卷。然后使用 vgcreate 命令创建您需要的卷组。在此过程中,您可以安全地忽略有关 incorrect metadata area header checksums 和 fsync failures 这些错误信息。当您建立完所有的卷组,您可以返 回到第一虚拟终端,然后直接跳到 lvmcfg 逻辑卷管理菜单项。您将看到卷组,并可以像 通常那样创建逻辑卷。 从 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。 注意 在 Apple Power Macintosh 硬件上,现在还没有一个广为接受的识别包含 RAID 数据分区 的标准。这意味着当前 debian-installer 还不支持在此平台上建立 RAID。 为了创建 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. 安装 Yaboot 至硬盘 新的(1998 年以后)的 PowerMacs 使用 yaboot 作为它们的 boot loader。安装程序自动 配置 yaboot,您只需一个 820k 的小分区,命名为 "bootstrap",类型为 Apple_Bootstrap 这由分区组件创建。如果这步完全成功,硬盘就可以启动, OpenFireware 将设为启动 Debian GNU/Linux。 6.3.4.3. 安装 Quik 至硬盘 用于 OldWorld Power Macintosh 机器的 boot loader 是 quik。您可以将它用于 CHRP。 安装程序会自动配置 quik。该配置已知可以工作在 7200,7300 和 7600 Powermacs,以 及一些 Power Computing 克隆。 6.3.4.4. 不使用启动引导器继续进行 该选项用于完成安装而不安装引导器,这种情况要么是体系/子体系不支持,要么是因为不 想要(比如,您想使用已经存在的引导器) 如果您打算手动设置 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.7 节 "自动化安装" 做这部分工作。) 该组件默认不会加载到安装主菜单,因此必须单独指定。如果使用 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.1.1. OldWorld PowerMacs 7.1.2. NewWorld PowerMacs 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.1.1. OldWorld PowerMacs 如果机器在完成安装后启动失败,并停在 boot: 提示符,试着键入 Linux 然后是 Enter 。(默认的启动配置在 quik.conf 标签是 Linux)。标签定义在 quik.conf 如果您按 Tab 键在 boot: 提示符下。您也可以启动回到安装程序,并编辑 /target/etc/quik.conf 然 后回到到硬盘步骤。处理 quik 的细节位于 http://penguinppc.org/projects/quik/。 启动会 MacOS 而不重设 nvram,键入 bye 在 OpenFirmware 提示符下(假设 MacOS 没有 从机器里面删除)。要得到 OpenFirmware 提示,按住 command-option-o-f 健,在启动机 器的时候。如果您需要重置 OpenFirmware nvram 改变默认为 MacOS 以启动回到 MacOS, 按下 command-option-p-r 键,在启动机器的时候。 假如您使用 BootX 启动到安装的系统,只需选择需要的内核,位于 Linux Kernels 目录 ,去掉 ramdisk 选项,并添加与您安装对应的根设备;如 /dev/hda8。 7.1.2. NewWorld PowerMacs 在 G4 机器和 iBooks 上,您可以按住 option 键,得到一个图形界面,每个可以启动的 系统对应一个按钮,Debian GNU/Linux 将是一个企鹅图标的按钮。 如果您保留 MacOS,在些时候它会修改 OpenFirmware boot-device 变量,您应该重置 OpenFirmware 到它的默认设置。要这样做需按住 command-option-p-r 键,在启动机器的 时候。 定义在 yaboot.conf 里的标签,当您按下 Tab 键在 boot: 提示符时标签会显示出来。 重置 G3 或 G4 硬件上的 OpenFirmware 将导致默认启动 Debian GNU/Linux(假设您正确 分区,并将 Apple_Bootstrap 分区放在首位)。如果您将 Debian GNU/Linux 放在 SCSI 磁盘,而 MacOS 位于 IDE 磁盘,这也许不工作,而您不得不进入 OpenFirmware 并设置 boot-device 变量,ybin 通常会自动完成。 在首次启动 Debian GNU/Linux 之后,您可以添加您希望的额外选项(如双启动选项)到 / etc/yaboot.conf 并运行 ybin 以更新修改过的设置。请参阅 yaboot HOWTO 了解更多信 息。 7.2. Debian 启动之后(基本)设置 启动之后,您将被提示去完成基本系统的设置,然后选择您希望安装的额外软件包。指导 您完成此过程的应用程序称为 base-config。它的概念类似于 debian-installer 的第一 阶段。事实上,base-config 由一些特殊的元件组成,每个元件完成一项设置任务,包括 "在后台隐藏菜单" 并使用同样的导航系统。 如果您希望在完成安装之后重新运行 base-config,请以 root 身份执行 base-config。 7.2.1. 配置您的时区 欢迎画面之后,您将看到提示要求设置您的时区。首先选择设置您的系统硬件时钟为本地 还是格林威治时间(GMT或UTC)。对话框里面显示的时间可以帮您做出正确的选择。 Macintosh 硬件时钟通常设置为本地时间。如果您想多重启动,选择本地时间而不是 GMT 。 基于安装开始时选择的地理位置,您将看到系统只列出与该位置相关的单一或者有限的时 区列表。如果只列出一个时区,选择是确认或者选择否从完整列表中去选择。当列表显示 出来,从其中选择您的时区,或者选择其他列出完整列表。 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 。如 果您在Macintoshes上,那么modem端口是 /dev/ttyS0 打印机的端口是 /dev/ttyS1。下一 步是编辑 /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 网络镜像。根据您选择的国家,程序会列出一些可能的服务器列表。通常选择最上面的一 个,但所有服务器应该都是正常可用的。之后,进行测试,如果您发现任何问题,您应该 选择另外一个。请注意,服务器列表是在发行 Debian 时生成的,在发行与您安装的这段 时间内,一些镜像也许不在存在。 选择镜像之后,您将会被问到是否需要使用代理服务器。代理服务器是用来转发您通过 HTTP 和/或 FTP 访问互联网的服务器,通常在公司网络里用来调节和优化访问互联网。在 一些网络中只能通过代理服务器访问互联网,因此您不得不输入代理服务器名称。您也可 能还要输入用户名和口令。大多数的家庭用户毋须设置代理服务器,这是因为一些 ISP 会 提供。 选择镜像之后,系统会测试您的网络软件包源。一切正常的话,程序会提示您是否想要配 置其它的网络源。如果您的软件包源有问题,可以尝试不同的镜像站点(从您的国家列表中 或者全体列表)或者使用不同的网络软件包源。 7.2.5. 软件包安装 接下来,您将看到 Debain 事先配置好的一些软件包。您可以逐个选择哪些需要安装到您 的新系统上。这是 aptitude 程序的目的,后面会说明。但这可能是一项艰巨的任务,因 为有 14900 个软件包存在于 Debian 中。 所以,您可以先选择 tasks ,然后再单独添加软件包。task 松散地代表了您要在计算机 上从事的一系列工作,比如 "desktop environment", "web server"或者 "print server" ^[5]。第 C.3 节 "各软件集所需的磁盘空间" 列出各任务所需的空间。 一旦您选择了任务,选择 Ok。此时,aptitude 将安装您选中的软件包。 注意 注意,即使您没有选择任何任务,但标准的、重要的,或者系统优先级要求的软件包将被 安装。该功能相当于执行 tasksel -ris 在命令行下,当前包括下载一个大约 37M 的包。 您会看到将要安装的一系列软件包,以及软件包的大小,在需要时它们会被下载。 如果您想基于软件包安装软件包,选择位于 tasksel 的 "manual package selection" 选 项。如果您选择该选项旁的一个或多项任务,aptitude 将以 --visual-preview 选项执行 。意思是您可以检查^[6] 那些将要安装的软件包。如果您不选择任何任务,通常 aptitude 画面会打开。作出选择之后,您按下 "g" 开始下载安装软件包。 注意 如果您选择 "manual package selection" 而不选择任务,默认不会安装任何软件包。这 就是说,如果您希望安装一个最小系统,并且您的系统(启动之前)不需要选择安装任何软 件包,可用使用该选项。 在 14900 的 Debian 软件包中,只有少数被任务安装器涵盖。为了了解更多软件包的信息 ,使用 apt-cache search search-string 查找搜索字符串(参考 apt-cache(8) man 页), 或者执行 aptitude 下面有说明。 7.2.5.1. 高级软件包选择 aptitude Aptitude 是管理软件包的流行软件。aptitude 允许您选择单独的软件包,匹配给定标准 的软件包(针对高级用户),或者整个任务。 最基本的绑定键是: ┌────────┬──────────────────────────┐ │ 按键 │ 动作 │ ├────────┼──────────────────────────┤ │Up, Down│上下移到选项。 │ ├────────┼──────────────────────────┤ │Enter │打开/关闭/激活项目。 │ ├────────┼──────────────────────────┤ │+ │标注要安装的软件包。 │ ├────────┼──────────────────────────┤ │- │标注要删除的软件包。 │ ├────────┼──────────────────────────┤ │d │显示软件包依赖关系。 │ ├────────┼──────────────────────────┤ │g │实际下载/安装/删除软件包。│ ├────────┼──────────────────────────┤ │q │关闭当前视图。 │ ├────────┼──────────────────────────┤ │F10 │激活菜单 │ └────────┴──────────────────────────┘ 查看更多的帮助请按 ? 键。 7.2.6. 软件安装过程中的命令 您通过 tasksel 或 aptitude 选择的每个软件包,都是由 apt-get 和 dpkg 程序下载、 解包并安装的。部份特殊的软件在安装过程中需要用户提供更多的信息,在这一过程中会 有相关提示。您需要留意该过程的屏幕输出,以判断安装中是否存在错误(尽管通常情况下 如果一个软件包无法安装,您会收到一个明确的错误信号)。 7.2.6.1. X 服务器设置 在 iMacs 或者一些古老的 Macintoshes 机器上,X 服务器软件无法自动计算出适当的显 卡设置。您需要在配置显卡时选择高级选项,在监视器的水平同步范围中,填入 59-63。 对垂直刷新范围,可以选择默认值。 鼠标设备可以设置为 /dev/input/mice。 7.2.7. 配置您的邮件传输代理(MTA) 今天,电子邮件已经成为很多人生活中不可或缺的部份,所以,Debian 让您在安装过程中 配置邮件传输代理,并不是件奇怪的事。Debian 中的标准邮件传输代理是 exim4。这是一 个非常小巧、灵活并且容易理解的工具。 您可能会问,我的电脑并没有连接到网络上,是否也需要做这一步工作呢?简短的答案: 是。稍长一些的解释:部份系统工具(比如 cron, quota, aide 等)的重要通知都是通过邮 件发送的。 所以,在第一个屏幕上您可以看到几个常见的邮件配置方案。请选择一个最适合您需求的 。 互联网站 您的系统被连接到网络上,并且您通过 SMTP 直接收发邮件。在接下来的几页中,程 序会询问您一些基本问题,如:您的机器的邮件名称、您接受或转发邮件的域等等。 用 smarthost 发信 在这个方案中,您的外发邮件将被另一台我们称之为 "smarthost"主机转发,由它来 完成实际的邮件发送工作。Smarthost 通常也能存放将要投递到您的电脑上的邮件, 因此您并不需要永远在线。也就是说,您必须通过诸如 fetchmail 之类的程序将邮件 从 smarthost 下载回来。这一选项通常适合拨号用户。 仅在本地投递 您的系统并未连接网络,而且邮件仅仅在本地用户间传递时。即使您不打算发送任何 邮件,我们也建议您选择此选项,因为部份系统工具可能随时会发送一些警告信息(比 如:可爱的 "Disk quota exceeded")。由于选择此项后不需要回答任何问题,因此这 一选项也非常适合新手。 现在不进行配置 除非您真的知道这是在干什么,否则请不要选择这一选项。这会留下一个未配置的邮 件系统 -- 在您再次配置它之前,您都无法收发任何邮件,并且可能会错过一些系统 工具发来的重要信息。 如果以上的方案都不适合您的需求,或者您需要一个更好的配置,在安装完毕后,您可以 编辑 /etc/exim4 目录下的配置文件。您还可以在 exim4下找到更多关于 /usr/share/doc /exim4 的资料。 7.3. 登录 安装完软件包以后,您会看到登录提示符。使用您选择的登录用户名和密码。您的系统现 在就能使用了。 如果您是新用户,您也许希望开始使用后可以浏览已经安装到系统上的文档。当前多个文 档系统,由不同类型的文档组成。这里是一些出发点。 伴随程序的文档安装在 /usr/share/doc/,并在程序名命名的子目录下。例如,APT 用户 指南是关于 apt 安装其他的程序到系统,位于 /usr/share/doc/apt/guide.html/ index.html。 另外,还有一些特殊的目录位于 /usr/share/doc/ 组织里。 Linux HOWTOs 以 .gz 格式 安装,放在 /usr/share/doc/HOWTO/en-txt/。安装 dhelp之后,可以浏览 /usr/share/ doc/HTML/index.html 文档索引。 一种查看文档简易的方法是 cd /usr/share/doc/,然后键入 lynx 后面是空格加一个点 (点是指当前目录)。 您也可以键入 info command 或 man command 在去查看大多数的命令行下的命令。键入 help 将显示 shell 命令的帮助。键入命令后面加上 --help 通常会显示命令用法的简短 摘要。如果命令的结果滚动超出屏幕顶端,键入 | more 于命令之后,可以让输出暂停在 滚出顶端屏幕。查看某子母开始的所有可用命令,键入该子母,再是两个 tab。 了解更多的 Debian 和 GNU/Linux,请参阅 /usr/share/doc/debian-guide/html/ noframes/index.html。 ━━━━━━━━━━━━━━ ^[4] 事实上,真正用来安装软件包的程序是 dpkg。但这是一个比较低层次的工具。 apt-get 是一个高级工具,它可以在适当的时候执行 dpkg ,还知道在安装某个软件包时 自动安装所需的其它软件包,并且能够从您的光盘、网络或其它地方下载它们。 ^[5] 您应该知道,代表这个列表,base-config 仅是执行 tasksel 程序。手动选择安装 软件包,aptitude 程序被调用。安装之后的任何时候,只要需要安装(或者删除)更多的软 件包,它都被调用。如果您寻找特定的软件包,当安装完成后,只需执行 aptitude install package, 其中 package 是您需要的软件包名。 ^[6] 您可以修改这项默认选择。如果您希望选择额外的软件包,使用 View->New Package View. 第 8 章 下一步该干什么 目录 8.1. 如果您不熟悉 Unix 8.2. 让您自己转向 Debian 8.2.1. Debian 软件包系统 8.2.2. 应用程序版本管理 8.2.3. 定时任务管理 8.3. 更多信息 8.4. 编译新内核 8.4.1. 内核映象管理 8.1. 如果您不熟悉 Unix 如果您不熟悉 Unix,您也许应该出去买些书来读。还可以从 Debian Reference 找到到大 量有用的信息。Unix 常见问题解答中包含了大量的 Usenet 文档,它提供过去很有用的参 考。 Linux 是 Unix 的一种实现。Linux 文档计划 (LDP) 收集了大量的 HOWTO 和 Linux 的在 线书籍。这些文档绝大部分可以在本地安装;只要安装 doc-linux-html 包(HTML 版本)或 者 doc-linux-text包(ASCII 版本),然后在 /usr/share/doc/HOWTO 里面就能找到。在 Debian 软件包里面也提供 LDP HOWTO 的国际化版本。 8.2. 让您自己转向 Debian Debian 和其它的发行版有些不同。即使您熟悉其它发行版的 Linux,您也应该了解 Debian 的一些东西,以便保持您的系统处在整洁良好的状态。本章包的材料可以帮助您转 向;但这并不是一个如何使用 Debian 的入门指南,而仅仅是对整个系统的一个粗略的介 绍。 8.2.1. Debian 软件包系统 要掌握的最重要概念是 Debian 的软件包系统。事实上,您系统的绝大部分都应该由软件 包系统来控制。包括: ● /usr (除了 /usr/local) ● /var (您可以创建 /var/local,在那里面进行安全的操作) ● /bin ● /sbin ● /lib 例如,如果您替换了 /usr/bin/perl,它可以正常工作,但以后升级了您的 perl 软件包 ,那个文件仍将被替换回来。有经验的用户可以将软件包设置为 "hold"状态,以避免这种 情况,这需要使用 aptitude。 apt 是最好的安装方法之一。您可以使用命令行模式的 apt-get 或者全屏幕文本模式的 aptitude。注意 apt 也可以让您合并 main,contrib 以及 non-free 版本的软件包,从 而使您可以在使用标准版本的同时使用限制出口的软件包。 8.2.2. 应用程序版本管理 可选版本的应用程序可以通过 update-alternatives 来管理。如果您维护着多个版本的应 用程序,请参阅 update-alternatives 的 man 手册。 8.2.3. 定时任务管理 任何系统管理员权限内的任务都必须位于 /etc 内,这是因为它们都是配置文件。如果您 有一些需要以管理员身份每天(daily),每周(weekly)或每月(monthly)运行的定时任务, 请将它们放置在 /etc/cron.{daily,weekly,monthly} 中。它们将在 /etc/crontab 中被 激活,然后按照文件名的字典顺序依次运行。 另一方面,如果您有某个定时任务需要以某个特定的用户身份运行,或者需要在某个特定 时刻或以特定周期运行,您或者可以使用 /etc/crontab 或 /etc/cron.d/whatever,而后 者会更好一些。这些特殊的文件可以包含一个额外的域,允许您指定运行该定时任务的用 户帐户。 在任何情况下,您只需编辑这些文件,cron 将会自动处理它们。没有必要再运行某个特殊 的命令。欲了解更多的信息,请参阅 cron(8),crontab(5),以及 /usr/share/doc/cron/ README.Debian。 8.3. 更多信息 如果您想查阅某个程序的更详细资料,应该先试试 man 程序名称,或者 info 程序名称。 在 /usr/share/doc 目录里有很多有用的文档,特别是 /usr/share/doc/HOWTO和 /usr/ share/doc/FAQ 里有很多值得一读的文章。如果您想提交错误报告,请先查阅这些文件: /usr/share/doc/debian/bug*。针对某个程序,其有关于 Debian 的内容可以查阅文件: /usr/share/doc/(package name)/README.Debian。 在 Debian 网站上有大量的 Debian 相关文档。尤其要看看 Debian GNU/Linux FAQ 和 Debian Reference。更多的 Debian 文档位于 Debian Documentation Project。Debian 社区是靠用户们自己的力量支撑起来的; 如果您想要订阅 Debian 的邮件列表,请访问 Mail List Subscription 页面。最后,相当重要的,Debian Mailing List Archives 包 含了 Debian 丰富的信息。 在 GNU/Linux 世界里,最常用的文档资料来源是: Linux 文档计划项目。在这里您可以 找到有关于 GNU/Linux 系统各个部分的非常有价值的 HOWTO 文档以及其他指导。 8.4. 编译新内核 为什么有些人想要编译新内核? Debian 自带的默认内核已经包含了绝大部分配置,所以编 译新内核并不是必需的。并且,Debian 提供了多个内核供选择。所以您应该先确认一下, 有没有适合您硬件的内核映像软件包存在。然而,基于下列理由,编译新内核还是很有用 的: ● 支持某些特殊的硬件,或者默认的内核配置和某些硬件冲突 ● 使用某些不为所提供的内核支持的选项 (例如,支持 high memory) ● 通过删除无用的驱动程序来优化内核,以减少启动时间 ● 创建整体的而不是模块化的内核 ● 运行最新的内核或开发中的内核 ● 深入了解 linux 内核 8.4.1. 内核映象管理 不要害怕尝试编译内核。它很有趣而且很合算。 为了以 Debian 的方式编译内核,您需要一些软件包: fakeroot,kernel-package, kernel-source-2.6.8(此文档写作时最新的版本) 以及其它一些您可能已经安装过的软件 包(完整的列表请参阅 /usr/share/doc/kernel-package/README.gz)。 此方法将从您的内核源码创建一个 .deb 文件,并且,如果您有非标准模块,将同时创建 它们的同步依赖 .deb 文件。这是一个管理内核的较好的方法; /boot 目录将保存内核, System.map,以及当前编译的活动配置文件的日志。 注意您不一定要以 "Debian 方式"编译内核;但我们发现使用软件包系统来管理您的内核 ,确实可以更加安全和易用。事实上,您可以直接从 Linus 那里而非 kernel-source-2.6.8,得到内核源码,并仍使用 kernel-package 的编译方法。 注意您可以找到完整的文档,通过使用 kernel-package 它在 /usr/share/doc/ kernel-package里。本节只包含一个简单的入门指南。 此后,我们假设您具有操作您机器的权力,可以将内核源码解压到您的 home 目录^[7]。 我们还假设您的内核版本是 "2.6.8。确定您处于打算解开内核源码的目录,然后使用 tar xjf /usr/src/kernel-source-2.6.8.tar.bz2 解压,并进入 kernel-source-2.6.8 刚才 创建的目录。 现在,您可以开始配置您的内核了。如果您已经安装配置好,并正在运行 X11,请执行 make xconfig;否则请执行 make menuconfig(必须已经安装好 libncurses5-dev)。请花 点时间阅读在线帮助并仔细地作选择。如果有疑问,通常来说包含您所不确定的设备驱动 程序 (用来管理硬件外设的软件,例如以太网卡,SCSI 控制器等) 会比较好一点。注意: 对于与特殊硬件无关的其它选项,如果您不了解它们,最好保持默认值。不要忘记选择 "Kernel module loader" 中的 "Loadable module support" (它们默认并没有被选择)。 否则,您的 Debian 安装将会遇到问题。 清除源码树并复原 kernel-package 参数。也就是使用 make-kpkg clean。 现在,开始编译内核: fakeroot make-kpkg --revision=custom.1.0 kernel_image。其 中版本号 "1.0" 可以随便您修改;它仅是一个用来跟踪您的内核编译的版本号。同样地, 您也可以用任何您喜欢的单词替换 "custom" (例如,您的主机名称)。编译内核可能要花 费较长的时间,这取决于您的机器的性能。 如果您需要支持 PCMCIA,您必须安装 pcmcia-source 软件包。以 root 身份将用 gzip 压缩的 tar 文件解压到 /usr/src 目录内(注意模块必须位于它们所应处的位置,即 /usr /src/modules)。然后,以 root 身份执行 make-kpkg modules_image。 一旦编译完成,您就可以像安装其它软件包一样安装您的内核。以 root 身份,执行 dpkg -i ../kernel-image-2.6.8-subarchitecture_custom.1.0_powerpc.deb。其中 subarchitecture 部分是一个可选的子结构,这取决于您所设置的内核选项。dpkg -i kernel-image... 将安装内核以及其它的一些支持文件。例如 System.map 可能会被安装 (用来辅助调试内核问题),/boot/config-2.6.8 也将被安装,它包含了您当前的配置。新 的 kernel-image-2.6.8 软件包将会自动地使用您的系统上的启动引导器来更新引导区, 因此您不必重新运行启动引导器即可引导系统。如果您创建了一个模块软件包,例如 PCMCIA,您也必须同时安装该软件包。 下面到了重启系统的时刻了;请仔细阅读前述步骤所产生的所有警告信息,然后执行 shutdown -r now。 欲获得关于 kernel-package 的更多信息,请参阅 /usr/share/doc/kernel-package。 ━━━━━━━━━━━━━━ ^[7] 可以在其他目录解开内核源码并编译自定义内核,但是不需要额外的权限是最简单的 方式。 附录 A. 安装指南 目录 A.1. 前言 A.2. 安装套件的引导 A.2.1. CDROM A.2.2. 软盘 A.2.3. U 盘 A.2.4. 从网络启动 A.2.5. 从硬盘启动 A.3. 安装 A.4. 请给我们发一份安装报告 A.5. 末了...... 本文介绍了如何在 PowerPC ("powerpc") 架构的计算机上,使用新版的 debian-installer 安装 Debian GNU/Linux sarge。这是一次对安装过程的走马观花式的 简介,但是它应该囊括了大多数情况下您进行安装所必须的信息。当有必要获得更多信息 时,我们会有相应的较详尽的说明文档 Debian GNU/Linux安装指南。 A.1. 前言 如果您在安装时碰到程序出错,请参考第 5.3.5 节 "提交缺陷报告" 回报错误。倘若本文 档不能够回答您所有的疑问,那么请带着这些问题去 debian-boot 的邮件列表 (debian-boot@lists.debian.org)问问看,或者您也可以在 irc (即 freenode 站点的 # debian-boot 频道)上直接提问。 A.2. 安装套件的引导 Debian-cd 小组在 Debian CD 页上提供了使用 debian-installer CD 映像的已编译版本 。如果您需要了解有关如何得到这些 CD 的更多信息,请看第 4.1 节 "官方的 Debian GNU/Linux 光盘套装"。 有些安装方法需要其它种类的映像而非 CD 的映像。第 4.2.1 节 "在哪里能找到安装映像 " 会告诉您如何在 Debian 的映像站点找到那些映像文件。 下面小节会就每种可能的安装方法,具体讲授如何获得所需的映像文件。 A.2.1. CDROM 现在有两种不同的 netinst CD 映像可以用来通过 debian-installer 安装 sarge。这些 映像文件是被用来刻成光盘的。然后让电脑从光盘启动,再由安装程序从网络上下载安装 其它的软件包。"netinst"的名字由此得来。两种映像的区别在于,在完整版的 netinst 映像上包含了基本的软件包,而使用名片版的映像安装则需要从网络上下载它们。如果喜 欢的话,您可以下载一个标准大小的 CD 映像文件,用它的话就可以不借助网络安装了。 这只需要一套光盘中的第一张就行了。 您想用哪种办法装,就下载相应的映像文件,再把它刻成光盘。若要从光盘启动您的 PowerMac,可以在它启动时摁着 c 键不放。参阅第 5.1.1 节 "从 CD-ROM 启动" 可以获 知其它从 CD 启动的方法。 A.2.2. 软盘 如果您无法从 CD 启动,不妨下载一些软盘的映像文件,用它们来安装 Debian。这时,您 需要 floppy/boot.img 和 floppy/root.img,也许还要那些驱动盘中的某一张。 启动软盘就是其上存有 boot.img 的一张软盘。当使用这张盘启动时,它会提示您插入第 二张软盘 --,这时请使用里面存有 root.img 的那张盘。 倘若您计划从网络安装,一般来说,您就要准备好 floppy/net-drivers.img,这里面包含 了许多种以太网卡的驱动程序,同时它还加入了对 PCMCIA 的支持。 假如您有光驱,但是不能从它启动,那么您可以从软驱启动,再用存在驱动盘里的 floppy /cd-drivers.img 来接着完成基于光盘的安装。 软盘是最不可靠的存储介质之一,因此您最好有碰到许多坏盘的准备(请参看第 5.3.1 节 "软盘的可靠性")。您所下载的每个 .img 文件其实就是一张软盘。您可以用 dd 命令把它 写到 /dev/fd0,也可以用其他方法来做这件事(具体细节请参看第 4.3 节 "从软盘映像创 建引导软盘" )。既然您将会弄出好几张软盘,不妨给它们做上标签吧。 A.2.3. U 盘 我们也可以从移动 USB 存储设备来安装系统。比如说您带着一个 USB 的钥匙链走遍天涯 海角的同时,它还可以成为方便称手的 Debian 安装介质。 要把您的 U 盘做成安装盘,最简单的办法就是下载 hd-media/boot.img.gz,然后用 gunzip 把这个文件解压,生成 128 MB 的映像文件。再把生成的映像文件直接写到 U盘。 对了,这个 U 盘的容量至少要有 128 mb。当然了,上面所说的操作会把 U 盘里的原有数 据全部毁掉。以后再挂载这个 U 盘的话,它上面就不再是 FAT 文件系统了。写完 U 盘后 ,接着要下载一个 Debian netinst CD 映像文件,再把这个映像拷贝到 U 盘里。哪个映 像文件都可以用,只要它的文件名是 .iso 结尾的就行。 除此之外,还有其它更为灵活的办法可以做出能启动 debian-installer 的 U 盘,同时也 是有办法适用于较小容量的 U 盘的。欲知详情,请看第 4.4 节 "为从 USB 闪盘引导准备 文件"。 从 Macintosh 系统上使用 USB 存储设备与使用 Open Fireware 相关。相关指导见第  5.1.3 节 "从 USB 闪盘引导"。 A.2.4. 从网络启动 要完全从网络上启动(即 netboot) debian-installer 也是可行的。而具体采取哪种方法 来从网络启动,这取决于您的硬件架构和网络启动的相关设置。在 netboot/ 目录里的文 件是用来从网络启动 debian-installer 的。 A.2.5. 从硬盘启动 除了从移动介质启动安装套件,其实从手中现有的安装了其它操作系統的硬盘启动也是可 行的。把 hd-media/initrd.gz、hd-media/vmlinuz 和一个 Debian CD 映像文件下载到硬 盘最底层的目录里。请确保这个 CD 映像文件的文件名是以 .iso 结尾的。接下来的问题 就是用 initrd 启动 linux 了。 A.3. 安装 一旦安装套件开始运行后,会有一个初始画面迎接您。要启动的话,请按 Enter;也可以 先看一下其它的启动方式以及各种参数(参阅第 5.2 节 "引导参数")。 再过一会儿,您就会可以选择您所使用的语言了。用上下箭头键来选择一门语言,然后摁 Enter 继续下面的步骤。接下来,您要选择您的国家,选项里包括了那些使用您所选语言 的国家。如果在那个稍短的列表里找不到您要找的国家,还有一个含有世界上所有国家的 列表以备选择。 您还可能被要求确认一下您的键盘布局(keyboard layout)。请选择缺省的那个,除非您清 楚更合适的布局。 现在可以坐下来,松口气,休息一下了。这时 debian-installer 会侦测您的一部分硬件 ,并从 CD、软驱、USB 或其它设备里把它的其余部分加载进系统。 接下来,安装程序会想办法侦测您和网络相关的硬件,再用 DHCP 完成网络的设置。如果 您没有连接网络,或是没有用 DHCP,那么您也可以手动配置网络。 好,现在该对您的硬盘分区了。首先,您可以选择对整个驱动器或是驱动器上的空闲空间 进行自动分区。我们推荐新手或者手头有急事的朋友使用自动分区。不过要是您不想用自 动分区的话,请在菜单中选择手动分区。 在接下来的界面里,您可以看到自己有关分区的一张表,上面标出了各分区将以何种方式 格式化,以及它们将来的挂载点在何处。要修改分区的设置或是删除分区,可以先选中它 ,再进行操作。如果您先前选择的是自动分区,那么您现在只要选分区结束, 使用自动分 区的设置即可。有一点,请不要忘记至少要分配一个分区作为交换空间,还有必须把一个 分区挂载到 /上。附录 B, 为 Debian 准备分区有更多关于分区方面的信息。 现在 debian-installer 会把您的分区格式化,然后安装基系统。这两步会花些时间。接 着,它会安装内核。 最后一步就是安装 boot loader 了。如果安装程序发现您的计算机还安装有其它的操作系 统,它会把它们加入启动菜单,并通知您。 debian-installer 现在会告诉您安装已经完成了。把光盘从光驱里取出或者取下其它启动 介质,然后敲一下 Enter 就可以重新启动您的机器了。重启后,它会进入安装过程的下一 个阶段,在第 7 章启动进入新 Debian 系统有对它的详尽说明。 如果您想要更多的安装过程相关信息,请看第 6 章使用 Debian 安装程序。 A.4. 请给我们发一份安装报告 如果您用 debian-installer 安装成功,请抽空给我们写一份报告。在新装好的系统里,/ root 目录下有一个名为 install-report.template 的模板文件。请填写内容,并把它作 为 installation-reports 软件包的 bug 报告发送回来,具体操作,见第 5.3.5 节 "提 交缺陷报告"。 如果您到不了 base-config 这一步,或者碰到了其它的麻烦,那么您也许发现了一个 debian-installler 的错误。要改进安装程序,就很有必要让我们知道这些异状,因此, 请抽空把这些错误报告给我们。您也可以使用 installation report 来回报错误。如果安 装彻底失败了,请参看第 5.3.4 节 "Bug Reporter"。 A.5. 末了...... 我们祝愿您的 Debian 安装顺利愉快,并希望您能发现 Debian 在您这里的用武之地。还 有您也许可以读一下第 8 章下一步该干什么。 附录 B. 为 Debian 准备分区 目录 B.1. 决定 Debian 分区以及大小 B.2. 目录树 B.3. 推荐的分区方案 B.4. Linux 里面的设备名称 B.5. Debian 分区程序 B.5.1. 为较新的 PowerMacs 分区 B.1. 决定 Debian 分区以及大小 最小化情况下,GNU/Linux 需要一个分区。您可以有一个包含整个操作系统,应用程序以 及您私人数据的分区。大多数人感到一个分离的交换分区也是很有必要的,尽管它并非严 格要求。"Swap" 是一个操作系统用的空白空间,允许系统使用磁盘来提供 "虚拟内存"。 通过放置交换空间至一个分离的分区,Linux 可以非常有效地使用它。强迫 Linux 使用一 个普通文件作为交换空间也是可行的,但是并不推荐这种做法。 但是大多数人选择给 GNU/Linu 更多的分区。这里有两个原因使您愿意把系统放置到一些 较小的分区上。第一个问题是安全性。如果文件系统出现了问题,一般来说只是一个分区 会受到影响。因此,您只需要更换(来自于您小心维护的备份)一个分区。在原始最小化阶 段,您应该考虑创建所谓的 "根分区"。它含有最基础的系统组件。如果其它分区出现了问 题,您仍然可以引导至 GNU/Linux 来修复系统。这个可以让您不用从头重新安装系统。 第二个理由对商业设置来说更重要,但它实际上取决于您机器的使用。比如,一个邮件服 务器接受到很多垃圾邮件会很快填满一个分区,如果您创建 /var/mail在一个分离的分区 上面,大多数系统在您得到太多垃圾邮件的情况下会继续工作。 使用更多分区的唯一缺点很难知道您将来的需求。如果您建立了一个分区容量太小,则您 将或者重装系统或者不停地移动数据来给分区分配空间。在另外一个方面,如果您建立的 分区过大,您将浪费一些可以用在别的地方的空间。磁盘容量目前很便宜,但是为什么您 要把金钱随意抛洒呢? B.2. 目录树 Debian GNU/Linux 依照文件系统层次标准 (Filesystem Hierarchy Standard) 安排文件 以及文件命名。这个标准允许用户以及软件程序预测文件以及目录的位置。根层次目录只 是简单表现为 /。在根层次,所有的 Debian 系统包括这些目录: ┌─────┬───────────────────────────────────┐ │目录 │ 内容 │ ├─────┼───────────────────────────────────┤ │bin │基础命令执行文件 │ ├─────┼───────────────────────────────────┤ │boot │启动引导器的静态链结文件 │ ├─────┼───────────────────────────────────┤ │dev │设备文件 │ ├─────┼───────────────────────────────────┤ │etc │主机特定的系统配置 │ ├─────┼───────────────────────────────────┤ │home │用户活动目录 │ ├─────┼───────────────────────────────────┤ │lib │基本共享库以及内核模块 │ ├─────┼───────────────────────────────────┤ │media│包含移动介质的挂载点 │ ├─────┼───────────────────────────────────┤ │mnt │用于临时挂接一个文件系统 │ ├─────┼───────────────────────────────────┤ │proc │系统信息的虚拟目录(2.4 和 2.6 内核)│ ├─────┼───────────────────────────────────┤ │root │根用户的活动目录 │ ├─────┼───────────────────────────────────┤ │sbin │基本的系统级程序 │ ├─────┼───────────────────────────────────┤ │sys │系统信息的虚拟目录(2.6 内核) │ ├─────┼───────────────────────────────────┤ │tmp │临时文件 │ ├─────┼───────────────────────────────────┤ │usr │第二层次 │ ├─────┼───────────────────────────────────┤ │var │活动数据 │ ├─────┼───────────────────────────────────┤ │opt │附加的应用程序软件包 │ └─────┴───────────────────────────────────┘ 下面列出关于目录和分区的重要考虑。要注意磁盘的使用随系统配置和特定用途有很大变 化。这里所推荐的是通用指引,提供一个分区的起点。 ● 根分区 / 必须总是物理地包含 /etc,/bin,/sbin,/lib 以及 /dev,否则您将不能 引导。典型的 root 分区需要 150-250MB 大小空间。 ● /usr:包含所有的用户程序(/usr/bin),库文件(/usr/lib),文档(/usr/share/doc) ,等等。这是文件系统需要最多的空间的部分。您需要提供至少 500MB 磁盘空间。总 容量的增长依据您要安装的软件包数量和类型。大的工作站或服务器安装应该需要 4-6 GB。 ● /var:所有的可变数据,如新的文章,电子邮件,网站,数据库,软件包系统的缓存 等等,将被放置入这个目录。这个目录的大小取决于您对计算机的使用,但是对于大 多数人来说将主要用在软件包系统的管理工具。如果您准备一次性地做一个完整的安 装,包含 Debian 提供的所有程序,/var 下面 2 或 3GB 的空间应该满足需求。如果 您准备逐次安装(也就是,安装服务程序和工具,然后是文本处理工具,然后是 X ,...),您可以在 /var 下准备 300--500 MB。如果硬盘空间很紧张,并且您不准备 做主要的系统升级,您可以为 /var 配置 30-40MB 大小。 ● /tmp: 程序创建的临时数据大都存到这个目录。通常 40-100 MB 应该足够。一些应用 程序 -- 包括档案处理器,CD/DVD 制作工具,和多媒体软件 -- 可能会使用 /tmp 临 时保存映像文件。如果您要使用这些程序,应该依据需要调整 /tmp 目录的大小。 ● /home:每个用户将放置他的个人数据到这个目录的子目录下。其大小取决于有多少用 户将使用系统和有什么文件放在他们的目录下。取决于您计划的使用量,您应该为每 个用户准备 100MB 空间,不过这个值应该迎合您的需求。假如您的 home 目录计划保 存大量的多媒体文件(MP3,电影),您该预备更多的空间。 B.3. 推荐的分区方案 对于新用户,个人 Debian 系统,家庭系统以及其它单用户配置来说,一个单一 / 分区 (加上交换分区)可能是最容易的方案。但是如果您的分区大于6GB,请选择 ext3 作为您的 分区类型。ext2 分区需要周期性的系统完整性检查并且当分区很大的时候,这个特性将导 致引导期间的延迟。 对于多用户系统或者有很多磁盘空间的系统,最好放置 /usr, /var, /tmp, 以及 /home 到每个他们自己的分区空间以和 / 分区分离开来。 当您计划安装许多不是 Debian 分发版本的程序的时候,您也许需要运行一个独立的 /usr /local 分区。如果您的机器是一个小的邮件服务器,您也许需要为 /var/mail 建立一个 独立的分区。通常情况下放置 /tmp 至它独立的分区,比如20至50MB是一个好主意。如果 您正在配置一个服务器带有放多用户帐户,通常需要一个独立的大 /home 分区。一般来说 ,分区状况对每台计算机都有所不同,这取决于他们的用途。 对于非常复杂的系统来说,您应该阅读 Multi Disk HOWTO。其中包含了很多对于 ISP 以 及配置服务器的用户很有用的高级信息。 在交换分区大小方面,这里有很多观点。我们的建议是使用和内存大小相同的交换分区。 在大多数情况下它也应该不小于16MB。当然,这里有一些例外。如果您正在尝试在一个有 256MB 内存的机器上解决10000 个联立方程式,您也许需要 1G (或者更多)的交换分区。 在 32 位体系结构(i386, m68k, 32位 SPARC 以及 PowerPC)下,最大尺寸的交换分区是 2GB。这应该基本满足任何安装情况。但是如果您的交换分区需求非常大,您应该尝试分离 交换分区至不同磁盘中(这也叫做 "spindles" ),并且如果可能的话,不同的 SCSI 或者 IDE 通道。内核将在多个交换空间平衡用量来达到更好的性能。 作为一个例子,在一个较老的家用机器上,可能具有 32MB 内存以及一个在 /dev/hda 上 1.7GB 的 IDE 驱动器。这里 /dev/hda1 上是一个 500MB 的分区用于其它操作系统,一个 32MB 交换分区在 /dev/hda3,以及一个 1.2GB 分区 /dev/hda2 用于 Linux 分区。 对于不同任务所需要多大的空间的概念,您也许对于安装系统后加入的安装感兴趣,请检 查第 C.3 节 "各软件集所需的磁盘空间"。 B.4. Linux 里面的设备名称 Linux 磁盘以及分区名称可能和其它的操作系统有所不同。您需要知道 Linux 用于创建以 及挂接分区的设备名称。这里是基本的命名方案: ● 第一个软盘驱动器被命名为 /dev/fd0。 ● 第二个软盘驱动器被命名为 /dev/fd1。 ● 第一个 SCSI 驱动器 (SCSI ID 反向地址) 被命名为 /dev/sda。 ● 第二个 SCSI 驱动器 (反向地址) 被命名为 /dev/sdb,等等。 ● 第一个 SCSI 光盘驱动器被命名为 /dev/scd0,也叫 /dev/sr0。 ● 主 IDE 驱动器下的主磁盘被命名为 /dev/hda。 ● 第二个控制器的主磁盘和从磁盘会分别被叫做 /dev/hdb。 ● 第二个控制器的主磁盘和从磁盘会分别被叫做 /dev/hdc 以及 /dev/hdd,较新的 IDE 控制器实际上有两个通道,扮演着两个控制器的角色。 每个磁盘的分区名的显示,是通过在磁盘名称后面附加一个十进制数字: sda1 以及 sda2 表示您系统里第一个 SCSI 磁盘驱动器的第一个和第二个分区。 这里有一个具体的例子。假设您有一个系统带有两个 SCSI 磁盘,一个 SCSI 地址是 2 并 且另外一个地址是 4。第一个磁盘(在 2 上)会被命名为 sda并且第二个是 sdb。如果 sda 驱动器有 3 个分区,它们将被命名为 sda1,sda2,以及 sda3。这同样适合 sdb 及其分 区。 注意如果您有两个 SCSI 主机总线适配器(控制器),设备的顺序可能会比较混乱。最好的 解决方案是观察引导信息,假设您知道驱动器模式以及/或者容量。 B.5. Debian 分区程序 Debian 开发人员配置了几种在不同硬盘和不同体系结构上的分区程序。下面是一个适合您 的结构的程序列表。 partman 推荐的 Debian 分区工具。这个小而全的工具可以修改分区大小,创建文件系统以及 联系分区至挂接点。 cfdisk 一个简单易用,给其它人使用的是全屏幕磁盘分区程序。 请注意 cfdisk 完全不了解 FreeBSD 的分区,因此,再一次设备名称可能最后有所不 同。 mac-fdisk Mac-aware 版本的 fdisk。 当您选择对硬盘进行分区时,程序之一将会运行。如果缺省运行的那个非您所希望,退出 分区程序,在 shell (tty2) 下按下 Alt 以及 F2,并且手工输入您想使用的程序名称(以 及可能的参数)。然后跳过对硬盘进行分区步骤至 debian-installer 并继续进行下一步。 如果您的 ide 磁盘上会超过多过 20 个分区,您将需要为 21 以上的分区创建设备。除非 有正确的设备存在,否则下一步初始化分区将失败。作为一个例子,这里列举了相关的命 令,让您可以在 tty2 中使用或者在运行一个 Shell 下加入一个设备文件,令第 21 个的 分区能够被初始化。 # cd /dev # mknod hda21 b 3 21 # chgrp disk hda21 # chmod 660 hda21 除非在目标系统上有合适的设备名称,否则引导一个新的系统将会失败。在安装完内核和 模块以后,执行: # cd /target/dev # mknod hda21 b 3 21 # chgrp disk hda21 # chmod 660 hda21 为 Mac 类型磁盘分区的关键点是,交换分区是根据其名称确定的,它必须被命名为"swap" 。所有的 Mac Linux 分区都是相同的 Apple_UNIX_SRV2 分区类型。请阅读合适的手册。 我们还建议您阅读 mac-fdisk Tutorial,其中包括了如何同 MacOS 共享磁盘的步骤。 B.5.1. 为较新的 PowerMacs 分区 如果您正在一台 NewWorld PowerMac 上面安装,您必须创建一个特殊的启动分区来驻留启 动引导器。这个分区的尺寸必须是 800KB 并且它的分区类型必须是 Apple_Bootstrap。如 果启动分区并非 Apple_Bootstrap 类型则您的机器不能从硬盘上引导。可以采用 partman 并告诉它用它作为 "NewWorld boot partition",或在 mac-fdisk 使用 b 命令。 这里要求特殊的分区类型 Apple_Bootstrap 来阻止 MacOS 挂接以及处理启动分区。因为 里面含有一些特殊修改的模式来让 OpenFirmware 能够自动启动它。 注意启动分区只含有三个非常小的文件:yaboot 可执行文件,它的配置文件 yaboot.conf ,以及一个第一级 OpenFirmware 装载器 ofboot.b。它不需要,也一定不要被您的文件系 统挂接,或者把内核以及其它文件放入在其中。ybin 和 mkofboot 工具可以用来维护这个 分区。 为了确保 OpenFirmware 能够自动引导 Debian GNU/Linux 启动分区应该先于其它磁盘上 的引导分区,特别是 MacOS 引导分区。启动分区应该是您第一个创建的分区。但是,如果 您在其它情况下后加入启动分区,您可以使用 mac-fdisk 的 r 命令来重新调整分区布局 。这样启动分区就可以在随后时间内顺利使用 (它总是位于 1 号分区)。注意的是,这只 是逻辑布局顺序而不是物理地址顺序。 Apple 磁盘通常有一些小的驱动分区。如果您想和 MacOSX 一起使用而采用双引导,您应 该保持这些分区以及一个小的 HFS 分区 (最少要求 800k)。这是因为 MacOSX 在每次启动 的时候,会初始化没有任何激活的 MacOS 分区以及驱动分区的磁盘。 附录 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 的设置 C.1. 预设置文件实例 这是一个完整的用于自动安装的预设置文件的实例。使用的说明在第 4.7 节 "自动化安装 "。您可以在使用该文件前去除某些行前面的注释。 注意 为了能在手册中正确显示这个例子,我们不得不分割一些行。通过使用行连接符 "\" 和下 一行的缩进标明。在实际的预置文件中,这些分割的行必须合并成单独的一行。如果您没 有这样做,预设置文件会造成不可预估的失败。 "clean" 例子文件位于 http://www.debian.org/releases/sarge/example-preseed.txt。 #### Startup. # To use a preseed file, you'll first need to boot the installer, # and tell it what preseed file to use. This is done by passing the # kernel a boot parameter, either manually at boot or by editing the # syslinux.cfg (or similar) file and adding the parameter to the end # of the append line(s) for the kernel. # # If you're netbooting, use this: # preseed/url=http://host/path/to/preseed # If you're remastering a CD, you could use this: # preseed/file=/cdrom/preseed # If you're installing from USB media, use this, and put the preseed file # in the toplevel directory of the USB stick. # preseed/file=/hd-media/preseed # Be sure to copy this file to the location you specify. # # Some parts of the installation process cannot be automated using # some forms of preseeding, because the questions are asked before # the preseed file is loaded. For example, if the preseed file is # downloaded over the network, the network setup must be done first. # One reason to use initrd preseeding is that it allows preseeding # of even these early steps of the installation process. # # If a preseed file cannot be used to preseed some steps, the install can # still be fully automated, since you can pass preseed values to the kernel # on the command line. Just pass path/to/var=value for any of the preseed # variables listed below. # # While you're at it, you may want to throw a debconf/priority=critical in # there, to avoid most questions even if the preseeding below misses some. # And you might set the timeout to 1 in syslinux.cfg to avoid needing to hit # enter to boot the installer. # # Note that the kernel accepts a maximum of 8 command line options and # 8 environment options (including any options added by default for the # installer). If these numbers are exceeded, 2.4 kernels will drop any # excess options and 2.6 kernels will panic. With kernel 2.6.9 or newer, # you can use 32 command line options and 32 environment options. # # Some of the default options, like 'vga=normal' may be safely removed # for most installations, which may allow you to add more options for # preseeding. # It is not possible to use preseeding to set language, country, and # keyboard. Instead you should use kernel parameters. Example: # languagechooser/language-name=English # countrychooser/shortlist=US # console-keymaps-at/keymap=us #### Network configuration. # Of course, this won't work if you're loading your preseed file from the # network! But it's great if you're booting from CD or USB stick. You can # also pass network config parameters in on the kernel params if you are # loading preseed files from the network. # netcfg will choose an interface that has link if possible. This makes it # skip displaying a list if there is more than one interface. d-i netcfg/choose_interface select auto # If you have a slow dhcp server and the installer times out waiting for # it, this might be useful. #d-i netcfg/dhcp_timeout string 60 # If you prefer to configure the network manually, here's how: #d-i netcfg/disable_dhcp boolean true #d-i netcfg/get_nameservers string 192.168.1.1 #d-i netcfg/get_ipaddress string 192.168.1.42 #d-i netcfg/get_netmask string 255.255.255.0 #d-i netcfg/get_gateway string 192.168.1.1 #d-i netcfg/confirm_static boolean true # Note that any hostname and domain names assigned from dhcp take # precedence over values set here. However, setting the values still # prevents the questions from being shown even if values come from dhcp. d-i netcfg/get_hostname string unassigned-hostname d-i netcfg/get_domain string unassigned-domain # Disable that annoying WEP key dialog. d-i netcfg/wireless_wep string # The wacky dhcp hostname that some ISPs use as a password of sorts. #d-i netcfg/dhcp_hostname string radish #### Mirror settings. d-i mirror/country string enter information manually d-i mirror/http/hostname string http.us.debian.org d-i mirror/http/directory string /debian d-i mirror/suite string testing d-i mirror/http/proxy string #### Partitioning. # If the system has free space you can choose to only partition that space. #d-i partman-auto/init_automatically_partition \ # select Use the largest continuous free space # Alternatively, you can specify a disk to partition. The device name can # be given in either devfs or traditional non-devfs format. # For example, to use the first disk devfs knows of: d-i partman-auto/disk string /dev/discs/disc0/disc # You can choose from any of the predefined partitioning recipes: d-i partman-auto/choose_recipe select \ All files in one partition (recommended for new users) #d-i partman-auto/choose_recipe select Desktop machine #d-i partman-auto/choose_recipe select Multi-user workstation # Or provide a recipe of your own... # The recipe format is documented in the file devel/partman-auto-recipe.txt. # If you have a way to get a recipe file into the d-i environment, you can # just point at it. #d-i partman-auto/expert_recipe_file string /hd-media/recipe # If not, you can put an entire recipe in one line. This example creates # a small /boot partition, suitable swap, and uses the rest of the space # for the root partition: #d-i partman-auto/expert_recipe string boot-root :: \ # 20 50 100 ext3 $primary{ } $bootable{ } method{ format } format{ } \ # use_filesystem{ } filesystem{ ext3 } mountpoint{ /boot } . \ # 500 10000 1000000000 ext3 method{ format } format{ } \ # use_filesystem{ } filesystem{ ext3 } mountpoint{ / } . \ # 64 512 300% linux-swap method{ swap } format{ } . # For reference, here is that same recipe in a more readable form: # boot-root :: # 40 50 100 ext3 # $primary{ } $bootable{ } # method{ format } format{ } # use_filesystem{ } filesystem{ ext3 } # mountpoint{ /boot } # . # 500 10000 1000000000 ext3 # method{ format } format{ } # use_filesystem{ } filesystem{ ext3 } # mountpoint{ / } # . # 64 512 300% linux-swap # method{ swap } format{ } # . # This makes partman automatically partition without confirmation. d-i partman/confirm_write_new_label boolean true d-i partman/choose_partition select \ Finish partitioning and write changes to disk d-i partman/confirm boolean true #### Boot loader installation. # Grub is the default boot loader (for x86). If you want lilo installed # instead, uncomment this: #d-i grub-installer/skip boolean true # This is fairly safe to set, it makes grub install automatically to the MBR # if no other operating system is detected on the machine. d-i grub-installer/only_debian boolean true # This one makes grub-installer install to the MBR if if finds some other OS # too, which is less safe as it might not be able to boot that other OS. d-i grub-installer/with_other_os boolean true # Alternatively, if you want to install to a location other than the mbr, # uncomment and edit these lines: #d-i grub-installer/bootdev string (hd0,0) #d-i grub-installer/only_debian boolean false #d-i grub-installer/with_other_os boolean false #### Finishing up the first stage install. # Avoid that last message about the install being complete. d-i prebaseconfig/reboot_in_progress note #### Shell commands. # d-i preseeding is inherently not secure. Nothing in the installer checks # for attempts at buffer overflows or other exploits of the values of a # preseed file like this one. Only use preseed files from trusted # locations! To drive that home, and because it's generally useful, here's # a way to run any shell command you'd like inside the installer, # automatically. # This first command is run as early as possible, just after # preseeding is read. #d-i preseed/early_command string anna-install some-udeb # This command is run just before the install finishes, but when there is # still a usable /target directory. #d-i preseed/late_command string echo foo > /target/etc/bar # This command is run just as base-config is starting up. #base-config base-config/early_command string echo hi mom # This command is run after base-config is done, just before the login: # prompt. This is a good way to install a set of packages you want, or to # tweak the configuration of the system. #base-config base-config/late_command string \ # apt-get install zsh; chsh -s /bin/zsh ###### Preseeding the 2nd stage of the installation. #### Preseeding base-config. # Avoid the introductory message. base-config base-config/intro note # Avoid the final message. base-config base-config/login note # If you installed a display manager, but don't want to start it immediately # after base-config finishes. #base-config base-config/start-display-manager boolean false # Some versions of the installer can report back on what you've installed. # The default is not to report back, but sending reports helps the project # determine what software is most popular and include it on CDs. #popularity-contest popularity-contest/participate boolean false #### Clock and time zone setup. # Controls whether or not the hardware clock is set to UTC. #base-config tzconfig/gmt boolean true # If you told the installer that you're in the United States, then you # can set the time zone using this variable. # (Choices are: Eastern, Central, Mountain, Pacific, Alaska, Hawaii, # Aleutian, Arizona East-Indiana, Indiana-Starke, Michigan, Samoa, other) #base-config tzconfig/choose_country_zone/US select Eastern # If you told it you're in Canada. # (Choices are: Newfoundland, Atlantic, Eastern, Central, # East-Saskatchewan, Saskatchewan, Mountain, Pacific, Yukon, other) #base-config tzconfig/choose_country_zone/CA select Eastern # If you told it you're in Brazil. (Choices are: East, West, Acre, # DeNoronha, other) #base-config tzconfig/choose_country_zone/BR select East # Many countries have only one time zone. If you told the installer you're # in one of those countries, you can choose its standard time zone via this # question. #base-config tzconfig/choose_country_zone_single boolean true # This question is asked as a fallback for countries other than those # listed above, which have more than one time zone. You can preseed one of # the time zones, or "other". #base-config tzconfig/choose_country_zone_multiple select #### Account setup. # To preseed the root password, you have to put it in the clear in this # file. That is not a very good idea, use caution! #passwd passwd/root-password password r00tme #passwd passwd/root-password-again password r00tme # If you want to skip creation of a normal user account. #passwd passwd/make-user boolean false # Alternatively, you can preseed the user's name and login. #passwd passwd/user-fullname string Debian User #passwd passwd/username string debian # And their password, but use caution! #passwd passwd/user-password password insecure #passwd passwd/user-password-again password insecure #### Apt setup. # This question controls what source the second stage installation uses # for packages. Choices are cdrom, http, ftp, filesystem, edit sources list # by hand base-config apt-setup/uri_type select http # If you choose ftp or http, you'll be asked for a country and a mirror. base-config apt-setup/country select enter information manually base-config apt-setup/hostname string http.us.debian.org base-config apt-setup/directory string /debian # Stop after choosing one mirror. base-config apt-setup/another boolean false # You can choose to install non-free and contrib software. #base-config apt-setup/non-free boolean true #base-config apt-setup/contrib boolean true # Do enable security updates. base-config apt-setup/security-updates boolean true #### Package selection. # You can choose to install any combination of tasks that are available. # Available tasks as of this writing include: Desktop environment, # Web server, Print server, DNS server, File server, Mail server, # SQL database, Laptop, Standard system, manual package selection. The # last of those will run aptitude. You can also choose to install no # tasks, and force the installation of a set of packages in some other # way. We recommend always including the Standard system task. tasksel tasksel/first multiselect Desktop environment, Standard system #tasksel tasksel/first multiselect Web server, Standard system #### Mailer configuration. # During a normal install, exim asks only a few questions. Here's how to # avoid even those. More complicated preseeding is possible. exim4-config exim4/dc_eximconfig_configtype \ select no configuration at this time exim4-config exim4/no_config boolean true exim4-config exim4/no_config boolean true # It's a good idea to set this to whatever user account you choose to # create. Leaving the value blank results in postmaster mail going to # /var/mail/mail. exim4-config exim4/dc_postmaster string #### X Configuration. # Preseeding Debian's X config is possible, but you probably need to know # some details about the video hardware of the machine, since Debian's X # configurator does not do fully automatic configuration of everything. # X can detect the right driver for some cards, but if you're preseeding, # you override whatever it chooses. Still, vesa will work most places. #xserver-xfree86 xserver-xfree86/config/device/driver select vesa # A caveat with mouse autodetection is that if it fails, X will retry it # over and over. So if it's preseeded to be done, there is a possibility of # an infinite loop if the mouse is not autodetected. #xserver-xfree86 xserver-xfree86/autodetect_mouse boolean true # Monitor autodetection is recommended. xserver-xfree86 xserver-xfree86/autodetect_monitor boolean true # Uncomment if you have an LCD display. #xserver-xfree86 xserver-xfree86/config/monitor/lcd boolean true # X has three configuration paths for the monitor. Here's how to preseed # the "medium" path, which is always available. The "simple" path may not # be available, and the "advanced" path asks too many questions. xserver-xfree86 xserver-xfree86/config/monitor/selection-method \ select medium xserver-xfree86 xserver-xfree86/config/monitor/mode-list \ select 1024x768 @ 60 Hz #### Everything else. # Depending on what software you choose to install, or if things go wrong # during the installation process, it's possible that other questions may # be asked. You can preseed those too, of course. To get a list of every # possible question that could be asked during an install, do an # installation, and then run these commands: # debconf-get-selections --installer > file # debconf-get-selections > > file # If you like, you can include other preseed files into this one. # Any settings in those files will override pre-existing settings from this # file. More that one file can be listed, separated by spaces; all will be # loaded. The included files can have preseed/include directives of their # own as well. Note that if the filenames are relative, they are taken from # the same directory as the preseed file that includes them. #d-i preseed/include string x.cfg # More flexibly, this runs a shell command and if it outputs the names of # preseed files, includes those files. For example, to switch configs based # on a particular usb storage device (in this case, a built-in card reader): #d-i preseed/include_command string \ # if $(grep -q "GUID: 0aec3050aec305000001a003" /proc/scsi/usb-storage-*/*); \ # then echo kraken.cfg; else echo otherusb.cfg; fi # To check the format of your preseed file before performing an install, # you can use debconf-set-selections: # debconf-set-selections -c preseed.cfg C.2. Linux 里的设备 在 Linux 里,您会在 /dev 发现许多很特别的文件。这些文件被称为设备文件。在 Unix 世界里,访问硬件的方式有些不一样。这些特别的文件的背后其实运行着驱动程序,而正 是驱动程序控制着硬件。设备文件就是访问真实的系统部件的接口。/dev 目录下的文件的 各种特性也和普通文件大相径庭。下面列举了最重要的一些设备文件。 ┌───┬───────────┐ │fd0│第一个软驱 │ ├───┼───────────┤ │fd1│第二个软驱 │ └───┴───────────┘ ┌─────┬───────────────────────────────────────┐ │hda │在第一个 IDE 口(Master)的 IDE 硬盘/光驱│ ├─────┼───────────────────────────────────────┤ │hdb │在第一个 IDE 口(Slave)的 IDE 硬盘/光驱 │ ├─────┼───────────────────────────────────────┤ │hdc │在第二个 IDE 口(Master)的 IDE 硬盘/光驱│ ├─────┼───────────────────────────────────────┤ │hdd │在第二个 IDE 口(Slave)的 IDE 硬盘/光驱 │ ├─────┼───────────────────────────────────────┤ │hda1 │在第一块 IDE 硬盘上的第一个分区 │ ├─────┼───────────────────────────────────────┤ │hdd15│在第四块 IDE 硬盘上的第十五个分区 │ └─────┴───────────────────────────────────────┘ ┌─────┬───────────────────────────────────┐ │sda │SCSI ID (比如 0)最小的 SCSI 硬盘 │ ├─────┼───────────────────────────────────┤ │sdb │下一个 SCSI ID (比如 1)的 SCSI 硬盘│ ├─────┼───────────────────────────────────┤ │sdc │下一个 SCSI ID (比如 2)的 SCSI 硬盘│ ├─────┼───────────────────────────────────┤ │sda1 │在第一块 SCSI 硬盘上的第一个分区 │ ├─────┼───────────────────────────────────┤ │sdd10│在第四块 SCSI 硬盘上的第十个分区 │ └─────┴───────────────────────────────────┘ ┌───┬───────────────────────────┐ │sr0│SCSI ID 最小的 SCSI 光驱 │ ├───┼───────────────────────────┤ │sr1│下一个 SCSI ID 的 SCSI 光驱│ └───┴───────────────────────────┘ ┌───────┬─────────────────────────────────────┐ │ttyS0 │串口 0,即 MS-DOS 下的 COM1 │ ├───────┼─────────────────────────────────────┤ │ttyS1 │串口 1,即 MS-DOS 下的 COM2 │ ├───────┼─────────────────────────────────────┤ │psaux │PS/2 鼠标设备 │ ├───────┼─────────────────────────────────────┤ │gpmdata│伪设备,中转从GPM(鼠标)服务传来的数据│ └───────┴─────────────────────────────────────┘ ┌─────┬──────────────────────────┐ │cdrom│指向光驱的符号链接 │ ├─────┼──────────────────────────┤ │mouse│指向鼠标设备文件的符号链接│ └─────┴──────────────────────────┘ ┌────┬────────────────────────────┐ │null│所有指向该设备的东西都会消失│ ├────┼────────────────────────────┤ │zero│可以从该设备永无休止地读出零│ └────┴────────────────────────────┘ C.2.1. 设定您的鼠标 无论在 Linux 的控制台(console)里(通过 gpm),还是在 X 窗口环境之中,您都可以使用 鼠标。这两种用法是可以兼容的,只要设置 gpm 转发器,令其让信号流往 X 服务器: mouse => /dev/psaux => gpm => /dev/gpmdata -> /dev/mouse => X /dev/ttyS0 (repeater) (symlink) /dev/ttyS1 把转发器的协议设为直接(raw)模式(在 /etc/gpm.conf 里),同时在 /etc/X11/ XF86Config 或者 /etc/X11/XF86Config-4 里设置一下,让 X 使用原始的鼠标协议。 用这种方法使用 gpm 的话,就算在 X 里也有其优势。如果不小心把鼠标拔下来后,只要 像这样重新启动 gpm 就可以了: # /etc/init.d/gpm restart 如此就可以在软件层面上重新连接鼠标,而不用重启 X 了。 如果您禁用了 gpm,或者因为某些原因没有安装它,请确保设置里是让 X 从鼠标设备(比 如 /dev/psaux) 直接读取数据的。欲知详情,请参阅三键鼠标的迷您指南,即 /usr/ share/doc/HOWTO/en-txt/mini/3-Button-Mouse.gz、man gpm、/usr/share/doc/gpm/ FAQ.gz 以及 README.mouse 里设置一下,让 X 使用原始的鼠标协议。 对 PowerPC 来说,需要在/etc/X11/XF86Config或者 /etc/X11/XF86Config-4 设置鼠标设 备里或者 "/dev/input/mice"。 当您的鼠标只有一个按键的时候,流行的内核具有模拟三健鼠标的能力。只需将下面行加 入 /etc/sysctl.conf 文件。 # 3-button mouse emulation # turn on emulation /dev/mac_hid/mouse_button_emulation = 1 # Send middle mouse button signal with the F11 key /dev/mac_hid/mouse_button2_keycode = 87 # Send right mouse button signal with the F12 key /dev/mac_hid/mouse_button3_keycode = 88 # For different keys, use showkey to tell you what the code is. C.3. 各软件集所需的磁盘空间 在 i386 架构上,基本的安装默认使用 2.4 内核,需要 573MB 的磁盘空间,这里面包含 了所有的标准软件包。 下面的表格一一列出了 tasksel 中每个软件集所需的磁盘空间大小。该报表是使用 aptitude 生成的。请注意,有些软件集之间会有相重叠的部分,所以两个软件集一同安装 后所占的空间,可能会小于这两个软件集分别安装所占的空间。 注意您需要将表格中列出的尺寸加上基本安装尺寸以决定分区的大小。多数列出的尺寸如" 安装尺寸"将用在 /usr;列在"下载尺寸"是(临时地)用在 /var。 ┌──────────┬─────────────┬─────────────┬─────────────────────┐ │ 任务 │安装尺寸 (MB)│下载尺寸 (MB)│用于安装所需空间 (MB)│ ├──────────┼─────────────┼─────────────┼─────────────────────┤ │桌面 │1392 │460 │1852 │ ├──────────┼─────────────┼─────────────┼─────────────────────┤ │Web 服务器│36 │12 │48 │ ├──────────┼─────────────┼─────────────┼─────────────────────┤ │打印服务器│168 │58 │226 │ ├──────────┼─────────────┼─────────────┼─────────────────────┤ │DNS 服务器│2 │1 │3 │ ├──────────┼─────────────┼─────────────┼─────────────────────┤ │文件服务器│47 │24 │71 │ ├──────────┼─────────────┼─────────────┼─────────────────────┤ │邮件服务器│10 │3 │13 │ ├──────────┼─────────────┼─────────────┼─────────────────────┤ │SQL 数据库│66 │21 │87 │ └──────────┴─────────────┴─────────────┴─────────────────────┘ 注意 桌面任务将同时安装 Gnome 和 KDE 桌面环境。 如果安装英文之外的其他语言,tasksel 在语言有对应 locale 时,可以自动安装 localization task。每种语言需要的空间不同;您应该给 200MB 以上的空间用于下载和 安装。 C.4. 通过 Unix/Linux 系统来安装 Debian GNU/Linux 本节说明了如何通过现有的 Unix 或 Linux 系统来安装 Debian GNU/Linux,而非使用本 手册后面要谈到的由菜单驱动的安装软件。这篇"交叉安装(cross-install)" HOWTO 是应 用户的要求而撰写的。他们原来是 Redhat、Mandrake 和 SUSE 的用户,现转而使用 Debian GNU/Linux。在本节中,我们假设您对于输入 *nix 命令以及在文件系统中穿梭移 动并不生疏。同时,在本节中,$ 标志着这个命令是在用户当前使用的系统中输入的,而 # 则表示这个命令是在 Debian chroot 环境中输入的。 您一旦根据自己的要求配置好了新的 Debian 系统,就可以将您的原来系统中的用户数据 (如果有的话)悉数迁移到 Debian 里去。然后就能继续爽了。一言以蔽之,这是一次"不停 机"的 Debian GNU/Linux 安装。同时,这也是处理那些因为硬件原因不能通过任何引导或 者安装介质完成安装的权宜之计。 C.4.1. 准备运动 根据需要,用已经安装的 *nix 的分区工具重新分区,要划分出至少一个文件系统外加交 换分区。您如果只用控制台(console)的话,至少要准备 150MB 空间,倘若想要装 X,就 需要至少 300MB 的空间了。 这里谈一下如何在您的分区上创建文件系统。举例来说,如果要在 /dev/hda6 分区(以后 的例子中,将把它作为 root 分区) 建立一个 ext3 格式的文件系统,就像这样: # mke2fs -j /dev/hda6 如果想建立的是 ext2 格式的文件系统,就要去掉 -j。 初始化并激活交换分区(请把分区编号替换成您希望用作交换分区的分区编号): # mkswap /dev/hda5 # sync; sync; sync # swapon /dev/hda5 把一个分区挂载(mount)到 /mnt/debinst(这是安装的位置,将来作为您新系统的根(/)文 件系统)。挂载点的名称是任意的,后面的步骤将会用到它。 # mkdir /mnt/debinst # mount /dev/hda6 /mnt/debinst 注意 如果您打算将部分文件系统(例如,/usr)放到独立的分区,在进入下一阶段之前,需要手 动创建和加载这些目录。 C.4.2. 安装 debootstrap Debian 安装程序调用的软件,同时也为官方所采用,被用来安装基系统的工具是 debootstrap。它调用了 wget 和 ar,否则就仅仅依赖 /bin/sh。安装 wget 和 ar 如果 您的系统里没有,然后再下载并安装 debootstrap。 如果您用的是基于 rpm 的系统,那么可以用 alien 将 .deb 文件转换成为 .rpm 文件, 或者下载已被打包成 rpm 包的版本,它位于 http://people.debian.org/~blade/install /debootstrap 或者您也可以通过下面的步骤手动安装它。先新建一个工作目录,它被用来安放解压缩后 的 .deb 文件: # mkdir work # cd work debootstrap 的二进制文件被打包在 Debian 的归档文件中(请确保选择了与您架构相对应 的文件)。下载 debootstrap .deb 它位于 pool,把它拷贝到工作目录,并从该文件解压 缩出这些二进制文件。要把二进制文件安装到系统中,您必须要拥有 root 的权限。 # ar -x debootstrap_0.X.X_arch.deb # cd / # zcat /full-path-to-work/work/data.tar.gz | tar xv 注意,运行 debootstrap 可能需要您有最小版本的 glibc (当前为 GLIBC_2.3)。 debootstrap 本身是一个 shell 脚本,但它会调用 glibc 的一下工具。 C.4.3. 运行 debootstrap debootstrap 执行后,它会自己从归档文件库直接下载所需的文件。您可以把下面的命令 行例子中的 http.us.debian.org/debian 替换成任何一个 Debian 归档文件库的镜像。选 择镜像时,可以根据您的网络情况选择较近的一个。镜像的列表在 http:// www.debian.org/misc/README.mirrors。 如果您已经把一张 sarge 版本的 Debian GNU/Linux CD 挂载在了 /cdrom 那么也可以把 http URL 替换成 file URL,即:file:/cdrom/debian/ 请将下列架构中的一个替换 ARCH 于 debootstrap 命令中: alpha, arm, hppa, i386, ia64, m68k, mips, mipsel, powerpc, s390,或 sparc。 # /usr/sbin/debootstrap --arch ARCH sarge \\ /mnt/debinst http://http.us.debian.org/debian C.4.4. 基系统的配置 现在您在硬盘上已经装上了一套真正的 Debian 操作系统,尽管它还很瘦小。Chroot 用来 进入该系统: # LANG= chroot /mnt/debinst /bin/bash C.4.4.1. 分区的挂载 您需要新建 /etc/fstab。 # editor /etc/fstab 这里有个样板,您不妨根据自己的情况来修改它: # /etc/fstab: static file system information. # # file system mount point type options dump pass /dev/XXX / ext3 defaults 0 1 /dev/XXX /boot ext3 ro,nosuid,nodev 0 2 /dev/XXX none swap sw 0 0 proc /proc proc defaults 0 0 /dev/fd0 /mnt/floppy auto noauto,rw,sync,user,exec 0 0 /dev/cdrom /mnt/cdrom iso9660 noauto,ro,user,exec 0 0 /dev/XXX /tmp ext3 rw,nosuid,nodev 0 2 /dev/XXX /var ext3 rw,nosuid,nodev 0 2 /dev/XXX /usr ext3 rw,nodev 0 2 /dev/XXX /home ext3 rw,nosuid,nodev 0 2 您可以通过 mount -a 来挂载您的 /etc/fstab 中所标明的所有文件系统,您也可以一个 一个地分别挂载这些文件系统,像: # mount /path # e.g.: mount /usr 您可以多次挂载 proc 文件系统。尽管通常把它挂载到 /proc,但是它还是可以被挂载到 任意的地方。如果您没有用 mount -a,那么请一定要再接着做之前先把 proc 挂载好: # mount -t proc proc /proc ls /proc 命令现在应该列出非空目录。如果失败,您应该从 chroot: 以为加载 proc。 # mount -t proc proc /mnt/debinst/proc C.4.4.2. 键盘的配置 若要配置您的键盘,请: # dpkg-reconfigure console-data 注意,在 chroot 里面不能设置键盘,但重新启动以后可以。 C.4.4.3. 网络的配置 要配置网络,请修改 /etc/network/interfaces, /etc/resolv.conf 和 /etc/hostname。 # editor /etc/network/interfaces 这里有些简单的例子,来自 /usr/share/doc/ifupdown/examples: ###################################################################### # /etc/network/interfaces -- configuration file for ifup(8), ifdown(8) # See the interfaces(5) manpage for information on what options are # available. ###################################################################### # We always want the loopback interface. # auto lo iface lo inet loopback # To use dhcp: # # auto eth0 # iface eth0 inet dhcp # An example static IP setup: (broadcast and gateway are optional) # # auto eth0 # iface eth0 inet static # address 192.168.0.42 # network 192.168.0.0 # netmask 255.255.255.0 # broadcast 192.168.0.255 # gateway 192.168.0.1 填入您的 nameserver(s) 和搜索指令到 /etc/resolv.conf: # editor /etc/resolv.conf 这里有个简单的 /etc/resolv.conf: search hqdom.local\000 nameserver 10.1.1.36 nameserver 192.168.9.100 输入您的系统的主机名 (2 到 63 个字符): # echo DebianHostName > /etc/hostname 如果您有多块网卡,在您修改 /etc/modules 文件时,一定要按照期望的顺序排列驱动模 块的名字。这样的话,在系统启动时,每块网卡就能获得您所预期的 interface 名称了 (eth0、eth1 等等)。 C.4.4.4. 时区、用户和 APT 的配置 设置您的时区,添加一个普通用户,再运行下面的指令选择您的 apt 源 # /usr/sbin/base-config new C.4.4.5. locales 的设置 要配置您的 locale 设定,以便使用英语以外的其它语言,就需要安装提供 locales 支持 的软件包,同时配置之: # apt-get install locales # dpkg-reconfigure locales 注意:在此之前必须配置好 apt,即在 base-config 阶段就配置好它。在使用非 ASCII 或 latin1 的字符集的 locale 之前,请先参阅相应的本地化指南(localisation HOWTO) 。 C.4.5. 内核的安装 您若想启动这个系统,您很可能还需要一个 Linux 内核和一个 boot loader。可以用下面 指令找到那些目前可用的被打好包的内核 # apt-cache search kernel-image 接下来把您所选中的内核的软件包名作为命令行的参数来安装它。 # apt-get install kernel-image-2.X.X-arch-etc C.4.6. Boot Loader 的设置 要让您的 Debian GNU/Linux 系统能够启动,还要设置您的 boot loader,好让它能加载 已安装的内核并用上新的根分区。注意 debootstrap 不会安装 boot loader,因此您要在 Debian 的 chroot 中使用 apt-get 完成。 通过查阅 man yaboot.conf 可以得到一些有关设置 bootloader 的提示。如果您希望继续 保留用来安装 Debian 的那个系统,那么在 yaboot.conf 里为 Debian 系统的安装添加一 条配置就可以了。您也可以把这个文件拷贝到新的系统里,然后在新的系统里编辑它。当 您修改完毕配置,运行 ybin (请记住,您在哪个系统里运行 yaboot.conf )。 下面有一个简单的/etc/yaboot.conf 作为例子: boot=/dev/hda2 device=hd: partition=6 root=/dev/hda6 magicboot=/usr/lib/yaboot/ofboot timeout=50 image=/vmlinux label=Debian 在有的电脑上,您或许应该把 ide0: 换成 hd:。 附录 D. 文案 目录 D.1. 关于本文档 D.2. 帮助本文档 D.3. 主要贡献人员 D.4. 商标确认 D.1. 关于本文档 本手册为 Sarge 版 debian-installer 创建,基于 Woody 版的软盘安装手册,而那份手 册又是基于更早版本的 Debian 安装手册和 2003 年 GPL 协议下的 Progeny 分发手册。 本文档由 DocBook XML 写成。有很多程序可以使用 docbook-xml 和 docbook-xsl 包中的 信息得到各种输出格式。 为了提升本文档的可维护性,我们使用了一些 XML 的特性,比如 entities 和 profiling 属性。它们充当类似于编程语言中变量与条件的角色。本文档的 XML 源文件包含了各种硬 件体系的信息 -- profiling 属性用于分开体系相关的文档碎片。 D.2. 帮助本文档 对于本文档,如果您有问题或者建议,您该提交关于包 debian-installer-manual的 bug 报告。参见 reportbug包或者阅读Debian Bug Tracking System的在线文档。良好的习惯 做法是先检查关于 debian-installer-manual 处于 open 状态的 bug了解是否您遇到的问 题已经被其他人报告。如果有,您可以提供确认或者帮助信息到 , 其中 XXXX代表已报告的 bug 号码。 更佳的途径是取得一份本文档的 DocBook 源文件拷贝,给它打一个补丁。DocBook 的源文 件位于 debian-installer WebSVN。如果您不熟悉 DocBook,别发愁:在 manuals 目录下 有一个简单的 cheatsheet 文件可以帮您开始。它像 html 文件,但更侧重于文字的含义 而不是显示。欢迎将补丁提交到 debian-boot 邮件列表(见下)。关于如何从 SVN 检出 (check out) 源文件,请参考源文件目录中的 README 。 请勿直接联系本文档的作者。还有一个关于 debian-installer 的邮件列表,它包含本手 册的讨论。这个邮件列表是 。订阅此邮件列表的指引在 Debian Mailing List Subscription页面;您也可以在线浏览Debian Mailing List Archives 。 D.3. 主要贡献人员 本文档最初版本由 Bruce Perens, Sven Rudolph, Igor Grobman, James Treacy 和 Adam Di Carlo 撰写。Sebastian Ley 撰写了 Installation Howto。有许许多多的 Debian 用 户和开发人员给本文档提供帮助。特别是 Michael Schmitz (m68k 支持),Frank Neumann ( Amiga 安装手册的最初作者),Arto Astala, Eric Delaunay/Ben Collins (SPARC 信 息),Tapio Lehtonen 和 Stéphane Bortzmeyer 做了大量的编辑与文稿。我们还要感谢 Pascal Le Bail 提供有关从 USB 内存盘上启动的相关信息。Miroslav Kuře 为 Sarge 版 debian-installer 的大量新功能编写文档。 我们还从下列文档中获得了非常有用的文稿和信息,它们是 Jim Mintha's 的网络启动 HOWTO(没有有效的URL),Debian FAQ,Linux/m68k FAQ,Linux for SPARC Processors FAQ,Linux/Alpha FAQ,以及其他。这些文档的维护者们提供了丰富的信息源必须要说明 。 本手册中有关 chroot 安装的内容(第 C.4 节 "通过 Unix/Linux 系统来安装 Debian GNU /Linux")来源于 Karsten M. Self 版权所有的文档。 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 Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. -- 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. E.1. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the gnu General Public License is intended to guarantee your freedom to share and change free software -- to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the gnu Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and /or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. E.2. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION ● This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. ● You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. ● You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. ● You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. ● You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. ● You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. ● Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. ● If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. ● If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. ● The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. ● If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY ● because the program is licensed free of charge, there is no warranty for the program, to the extent permitted by applicable law. except when otherwise stated in writing the copyright holders and/or other parties provide the program "as is" without warranty of any kind, either expressed or implied, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. the entire risk as to the quality and performance of the program is with you. should the program prove defective, you assume the cost of all necessary servicing, repair or correction. ● in no event unless required by applicable law or agreed to in writing will any copyright holder, or any other party who may modify and/or redistribute the program as permitted above, be liable to you for damages, including any general, special, incidental or consequential damages arising out of the use or inability to use the program (including but not limited to loss of data or data being rendered inaccurate or losses sustained by you or third parties or a failure of the program to operate with any other programs), even if such holder or other party has been advised of the possibility of such damages. END OF TERMS AND CONDITIONS E.3. How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. one line to give the program's name and a brief idea of what it does. Copyright (C) year name of author This program is free software; you can redistribute it and/or modify it under the terms of the gnu General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose. See the gnu General Public License for more details. You should have received a copy of the gnu General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with absolutely no warranty; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items -- whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. signature of Ty Coon, 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the gnu Library General Public License instead of this License.