5.4. 安装过程中的故障修复
5.4.1. CD-ROM 的可靠性
有时,特别是旧的 CD-ROM 驱动器,安装程序无法从 CD-ROM 引导。安装程序还可能 — 即使是从 CD-ROM 成功引导 — 无法识别 CD-ROM 或在安装时读取错误。
造成这些问题有各种原因。我们只列出了常见的,并提供解决这些问题的一般方法。余下的由您来处理。
您首先应试试两种最简单的方法。
如果 CD-ROM 没有引导,检查一下它是否放好,并且没有弄脏。
如果安装程序无法识别 CD-ROM,再次运行 Detect and mount CD-ROM 选项。有些非常老的 CD-ROM 驱动器 DMA 相关的问题可以用这种方法解决。
如果还无法工作,试试下一节建议的方法。多数情况下,但非全部,那里的建议适用于 CD-ROM 和 DVD,为了方便,只提到 CD-ROM。
如果您用 CD-ROM 无法安装,试试其他可用的安装方法。
5.4.1.1. 常见问题
有些老 CD-ROM 驱动器不能读取新 CD 刻录机的高速模式下刻录的光盘。
一些非常老的 CD-ROM 驱动器在 “direct memory access” (DMA) 下无法正常工作。
5.4.1.2. 如何调查研究或许可以解决问题
如果从 CD-ROM 引导失败,试试下面所列的建议。
检查您的 BIOS 的确支持从 CD-ROM 启动(仅有个别非常老的系统不行),并且 BIOS 打开支持从 CD 引导。
如果您下载的是 iso 映像,检查映像的 md5sum 是否与
MD5SUMS
文件所列相同,该文件和您下载的映像在同一个地方。- $ md5sum
debian-testing-i386-netinst.iso
- a20391b12f7ff22ef705cee4059c6b92
debian-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
- $ md5sum
假如在安装程序正常的引导之后,无法识别 CD-ROM,有时只需再试一次就能解决问题。如果您有多个 CD-ROM 驱动器,将 CD-ROM 放到其他的驱动器。如果无法工作,或者可以识别 CD-ROM 但读取的时候有错误,试试下面所列的建议。这里需要一些基本的 Linux 知识。要执行命令,您应该首先切换到第二虚拟控制台(VT2),并激活 shell。
切换到 VT4 或查看
/var/log/syslog
的内容(使用 nano 作为编辑器)来检查任何特定的错误信息。之后,再检查 dmesg 的输出。如果您的 CD-ROM 驱动器可以识别,检查 dmesg 的输出。可以看到类似的信息(这些行不必是连续出现的):
ata1.00: ATAPI: MATSHITADVD-RAM UJ-822S, 1.61, max UDMA/33
ata1.00: configured for UDMA/33
scsi 0:0:0:0: CD-ROM MATSHITA DVD-RAM UJ-822S 1.61 PQ: 0 ANSI: 5
sr0: scsi3-mmc drive: 24x/24x writer dvd-ram cd/rw xa/form2 cdda tray
cdrom: Uniform CD-ROM driver Revision: 3.20
如果您看不到这些,估计是 CD-ROM 驱动器所连接的控制器无法被识别,或者完全不被支持。如果您知道控制器所需的驱动程序,可以使用 modprobe 手动加载。
检查
/dev/
下面您 CD-ROM 驱动器对应的设备节点。上面的例子中,它是/dev/sr0
。也会是/dev/cdroms/cdrom0
。用 mount 命令检查 the CD-ROM 是否已经挂载;如果没有,使用手动挂载:
- $ mount /dev/
hdc
/cdrom
检查命令后面是否有什么错误信息。
- $ mount /dev/
确认当前 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 /proc/
如果安装过程中有什么问题,用接近安装程序主菜单底部的选项检查 CD-ROM 的完整性。如果 CD-ROM 可以读,该选项可以对其进行测试。
5.4.2. 引导配置
如果在引导过程中您遇到了问题或者内核挂起,不识别实际拥有的外围设备,或者驱动不能被正确识别,首先要做的事情是检查引导参数,见 第 5.3 节 “引导参数” 讨论。
有些情况下,设备固件的丢失可能会造成故障 (参阅 第 2.2 节 “需要固件的设备” 和 第 6.4 节 “加载缺失的固件”)。
5.4.3. 软件语音合成
如果软件语音合成不工作,最大可能是由声卡所致,通常要么是驱动没有被包含到安装程序,要么是不常见的合成器默认设置为静音。您可以提交一份 bug 报告,并包含同一台机器上声音可以正常工作的 Linux 系统上(比如,live CD),运行下面命令的输出。
dmesg
lspci
lsmod
amixer
5.4.4. 64-bit PC 常见安装问题
有一些常见的安装问题,可以通过给安装程序特定的引导参数解决或避免。
如果您的显示屏在内核引导的时候显示一个奇怪的图片(比如,纯白、纯黑或者彩色的像素块),系统可能含有一块有问题的显示卡。它不能切换至 framebuffer 模式。您可以使用引导参数 fb=false
来禁止使用 framebuffer 控制台。由于控制台的限制,在安装过程中只能使用少数的几种语言,参阅 第 5.3 节 “引导参数” 来获得细节信息。
5.4.4.1. 在 PCMCIA 配置阶段系统停止
一些非常老的 Dell 笔记本型号,会在 PCMCIA 设备检测程序尝试访问某些硬件地址的时候死机。其他笔记本可能显示类似的问题。如果您遇到那样的问题,并且在安装的时候不需要 PCMCIA 的支持,可以用 hw-detect/start_pcmcia=false
启动参数来取消 PCMCIA 功能。您可以在安装后配置 PCMCIA,去掉造成问题的资源区段。
或者,可以启动安装程序时进入 expert 模式。您需要按照要求输入硬件资源范围选项。比如,如果有如上所说的 Dell 笔记本问题,应该在这里输入 exclude port 0x800-0x8ff
。在 System resource settings section of the PCMCIA HOWTO 处列出了一些资源范围选项。注意您在安装程序中,输入这些值的时候必须忽略逗号。
5.4.5. 内核起始信息注解
在引导期间,您可以看到很多信息类似 can't find *`something`*
,或者 *`something`* not present
,can't initialize *`something`*
,或者甚至 this driver release depends on *`something`*
。大多数这些信息都是无害的。之所以看到它们,是因为安装系统内核被设计成为可以运行在具有不同外围设备的计算机。显然,没有一个计算机可能拥有所有的外围设备,因此操作系统可能在查找一些您没有的设备上有一些报怨。您有时可以看到系统暂停了一段时间。这是由于它在等待一台设备的回应,但是这台设备并没有安装在系统上。如果您发现这个时间非常长,以后可以创建一个定制的内核(参见 第 8.5 节 “编译新内核”)。
5.4.6. 报告安装问题
如果您过了初始化引导阶段,但还是不能安装,可以借助于 Save debug logs 菜单选项。它让您保存安装程序的系统错误记录和配置信息到软盘,或者用网络浏览器下载。该信息或许提供了一些关于错误的起因和如何解决它的线索。如果您正在提交一个 bug 报告,可以报告里附上该信息。
其他安装期间相关的信息可以在 /var/log/
内找到,计算机用新安装的系统启动后,放在 /var/log/debian-installer/
里。
5.4.7. 提交缺陷报告
如果仍有问题,请提交安装报告。即使已经安装成功,我们也鼓励您发一份安装报告,这让我们可以尽可能多地了解硬件的配置数量。
注意,您的安装包括将公布在 Debian Bug Tracking System (BTS) 并转发到公共的邮件列表。确保您使用的邮件地址可以被公开。
如果您有一个可以运转的 Debian 系统,发送安装报告最简单的方法是安装 installation-report
和 reportbug
软件包(aptitude install installation-report reportbug),配置 reportbug
的说明参阅 第 8.4.2 节 “发送邮件到系统之外”,然后执行 reportbug installation-reports 命令。
另外,您可以采用下列模板填写安装报告,并将它当作 installation-reports
虚包的错误报告,发送到 <[submit@bugs.debian.org](https://www.debian.org/releases/stable/amd64/mailto:submit@bugs.debian.org)>
。
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 -knn (or lspci -nn):
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 报告中,请说明问题所在,包括内核挂起时最后见到的内核消息。描述进入问题状态所进行的步骤。