有时,特别是旧的 CD-ROM 驱动器,安装程序无法从 CD-ROM 引导。安装程序还可能 — 即使是从 CD-ROM 成功引导 — 无法识别 CD-ROM 或在安装时读取错误。
造成这些问题有各种原因。我们只列出了常见的,并提供解决这些问题的一般方法。余下的由您来处理。
您首先应试试两种最简单的方法。
如果 CD-ROM 没有引导,检查一下它是否放好,并且没有弄脏。
如果安装程序无法识别 CD-ROM,再次运行
选项。有些旧 CD-ROM 驱动器 DMA 相关的问题可以用这种方法解决。
如果还无法工作,试试下一节建议的方法。多数情况下,但非全部,那里的建议适用于 CD-ROM 和 DVD,为了方便,只提到 CD-ROM。
如果您用 CD-ROM 无法安装,试试其他可用的安装方法。
有些老 CD-ROM 驱动器不能读取新 CD 刻录机的高速模式下刻录的光盘。
如果您的系统可以从 CD-ROM 引导,这并不是说 Linux 就能支持该 CD-ROM (或者,更准确一点,CD-ROM 驱动器所连接的控制器)。
一些老式的 CD-ROM 驱动器在 “direct memory access” (DMA) 下无法正常工作。
如果从 CD-ROM 引导失败,试试下面所列的建议。
检查您的 BIOS 的确支持从 CD-ROM 启动(旧的系统可能不行),并且 CD-ROM 驱动器支持您所使用的介质。
如果您下载的是 iso 映像,检查映像的 md5sum 是否与 MD5SUMS
文件所列相同,该文件和您下载的映像在同一个地方。
$ md5sumdebian-testing-i386-netinst.iso
a20391b12f7ff22ef705cee4059c6b92debian-testing-i386-netinst.iso
然后,检验所刻录 CD-ROM 的 md5sum 也匹配。可以使用下面的命令。它使用映像的尺寸从 CD-ROM 读取正确的字节数。
$ dd if=/dev/cdrom | \
> head -c `stat --format=%s debian-testing-i386-netinst.iso
` | \
> md5sum
a20391b12f7ff22ef705cee4059c6b92 -
262668+0 records in
262668+0 records out
134486016 bytes (134 MB) copied, 97.474 seconds, 1.4 MB/s
假如在安装程序正常的引导之后,无法识别 CD-ROM,有时只需再试一次就能解决问题。如果您有多个 CD-ROM 驱动器,将 CD-ROM 放到其他的驱动器。如果无法工作,或者可以识别 CD-ROM 但读取的时候有错误,试试下面所列的建议。这里需要一些基本的 Linux 知识。要执行命令,您应该首先切换到第二虚拟控制台(VT2),并激活 shell。
切换到 VT4 或查看 /var/log/syslog
的内容(使用 nano 作为编辑器)来检查任何特定的错误信息。之后,再检查 dmesg 的输出。
如果您的 CD-ROM 驱动器可以识别,检查 dmesg 的输出。可以看到类似的信息(这些行不必是连续出现的):
Probing IDE interface ide1... hdc: TOSHIBA DVD-ROM SD-R6112, ATAPI CD/DVD-ROM drive ide1 at 0x170-0x177,0x376 on irq 15 hdc: ATAPI 24X DVD-ROM DVD-R CD-R/RW drive, 2048kB Cache, UDMA(33) Uniform CD-ROM driver Revision: 3.20
如果您看不到这些,估计是 CD-ROM 驱动器所连接的控制器无法被识别,或者完全不被支持。如果您知道控制器所需的驱动程序,可以使用 modprobe 手动加载。
检查 /dev/
下面您 CD-ROM 驱动器对应的设备节点。上面的例子中,它是 /dev/hdc
。也会是 /dev/cdroms/cdrom0
。
用 mount 命令检查 the CD-ROM 是否已经挂载;如果没有,使用手动挂载:
$ mount /dev/hdc
/cdrom
检查命令后面是否有什么错误信息。
确认当前 DMA 已经打开:
$ cd /proc/ide
/hdc
$ grep dma settings using_dma 1 0 1 rw
using_dma
之后的第一列 “1” 意味着打开。如果是这样,将其关闭:
$ echo -n "using_dma:0" >settings
确保您所处的目录对应 CD-ROM 驱动器。
如果安装过程中有什么问题,用接近安装程序主菜单底部的选项检查 CD-ROM 的完整性。如果 CD-ROM 可以读,该选项可以对其进行测试。
对于用软盘安装 Debian 的人来说,他们遇到的最大的问题很可能是软盘的可靠性。
因为引导软盘是在 Linux 引导之前由硬件直接读取,是问题最多的软盘。通常,硬件的读取并不能像 Linux 软盘驱动那样可靠,并且对读到错误的数据,它们只会停止运行,连条错误消息也不会显示。驱动软盘也会出错,很多时候只是打印出一堆 I/O 错误信息。
如果在某个软盘上遇到安装停止,您首先要做的,是把映像重新写到另外一张软盘上,看看是否解决问题。仅格式化旧软盘是不够的,即使它重新格式化以后看起来没有错误。如果可能,在别的统上重写这些软盘更好一些。
有一个用户报告他不得不把映像往软盘写三次,只有最后一次的软盘才算工作良好。
一般情况下,您不必重新下载软盘映像,但如果一直有问题,可以通过它们的 md5sum 来检验下载的映像是否正确。
其他一些用户报告过,用同样的软盘重新启动若干次才有一次能成功引导。这都是由于有缺陷的硬件或固件软盘驱动器驱动程序造成的。
如果在引导过程中您遇到了问题或者内核挂起,不识别实际拥有的外围设备,或者驱动不能被正确识别,首先要做的事情是检查引导参数,见 第 5.2 节 “引导参数” 讨论。
通常,可以通过移除外挂硬件或者外围设备来解决问题,然后再次重新引导。
如果您的机器上装有多于 512M 的大容量的内存,并且安装程序在引导内核时停止,您可能需要加入一个引导参数,来限制内核能够看到的内存数量,比如 mem=512m
。
在引导期间,您可以看到很多信息类似 can't find
,或者 something
,something
not presentcan't initialize
,或者甚至 something
this driver release depends on
。大多数这些信息都是无害的。之所以看到它们,是因为安装系统内核被设计成为可以运行在具有不同外围设备的计算机。显然,没有一个计算机可能拥有所有的外围设备,因此操作系统可能在查找一些您没有的设备上有一些报怨。您有时可以看到系统暂停了一段时间。这是由于它在等待一台设备的回应,但是这台设备并没有安装在系统上。如果您发现这个时间非常长,以后可以创建一个定制的内核(参见 第 8.6 节 “编译新内核”)。 something
如果您过了初始化引导阶段,但还是不能安装,可以借助于
菜单选项。它让您保存安装程序的系统错误记录和配置信息到软盘,或者用网络浏览器下载。该信息或许提供了一些关于错误的起因和如何解决它的线索。如果您正在提交一个 bug 报告,可以报告里附上该信息。其他安装期间相关的信息可以在 /var/log/
内找到,计算机用新安装的系统启动后,放在 /var/log/debian-installer/
里。
如果仍有问题,请提交安装报告。即使已经安装成功,我们也鼓励您发一份安装报告,这让我们可以尽可能多地了解硬件的配置数量。
注意,您的安装包括将公布在 Debian Bug Tracking System (BTS) 并转发到公共的邮件列表。确保您使用的邮件地址可以被公开。
如果您有一个可以运转的 Debian 系统,发送安装报告最简单的方法是安装 installation-report
和 reportbug
软件包(aptitude install installation-report reportbug),配置 reportbug
的说明参阅 第 8.5.2 节 “发送邮件到系统之外”,然后执行 reportbug installation-reports 命令。
请采用下列模板填写安装报告,并发邮件到 <submit@bugs.debian.org>
,给 installation-reports
虚拟软件包发送 bug 报告。
Package: installation-reports Boot method: <How did you boot the installer? CD? floppy? network?> Image version: <Full URL to image you downloaded is best> Date: <Date and time of the install> Machine: <Description of machine (eg, IBM Thinkpad R32)> Processor: Memory: Partitions: <df -Tl will do; the raw partition table is preferred> Output of lspci -nn and lspci -vnn: Base System Installation Checklist: [O] = OK, [E] = Error (please elaborate below), [ ] = didn't try it Initial boot: [ ] Detect network card: [ ] Configure network: [ ] Detect CD: [ ] Load installer modules: [ ] Detect hard drives: [ ] Partition hard drives: [ ] Install base system: [ ] Clock/timezone setup: [ ] User/password setup: [ ] Install tasks: [ ] Install boot loader: [ ] Overall install: [ ] Comments/Problems: <Description of the install, in prose, and any thoughts, comments and ideas you had during the initial install.>
在 bug 报告内,请说明问题所在,包括内核挂起后最后见到的内核消息。描述进入问题状态所进行的步骤。