第 7 章 在 AMD64 和 Intel 64 系统中执行故障排除安装

本章讨论一些常见安装问题及其解决方法。
出于调试目的,Anaconda 将安装动作记录到 /tmp 目录下的文件中。这些文件如下表所示:

表 7.1. 安装过程中生成的日志文件

日志文件内容
/tmp/anaconda.log生成 Anaconda 信息
/tmp/program.log安装过程中运行的所有外部程序
/tmp/storage.log广泛存储模块信息
/tmp/packaging.logyumrpm 软件包安装信息
/tmp/syslog与硬件相关的系统信息
如果安装失败,这些文件中的信息会合并到 /tmp/anaconda-tb-identifier 中,这里的 identifier 是一个随机字符串。
在安装成功后,这些文件将默认复制到已安装系统的 /var/log/anaconda 目录中。但如果安装不成功,或者在引导安装系统时使用了 inst.nosave 选项,这些日志将只会存在于安装程序的 RAM 磁盘中,就是说不会永久保存它们,系统关闭后就会丢失。要永久地保存它们,请用 scp 命令将这些文件保存到网络上的其他系统中,或者复制到挂载的存储设备(如 U 盘)中。下面是在网络上传输日志文件的详情。注:如果使用 USB 盘或其他可移动介质,则应在开始此操作前备份这些数据。

过程 7.1. 将日志文件传送到 USB 盘中

  1. 在您要执行安装的系统中,按 Ctrl+Alt+F2 进入 shell 提示符。此时您会以 root 帐户登录,并可以访问该安装程序的临时文件系统。
  2. 将 USB 盘连接到该系统中并执行 dmesg 命令。此时会显示详细描述最近事件的日志。在该日志的最后您可以看到由于您刚刚连接 USB 盘所生成的一组信息,应类似如下:
    [ 170.171135] sd 5:0:0:0: [sdb] Attached SCSI removable disk
    注:在上面示例中连接设备的名称为 sdb
  3. 进入 /mnt 目录,进入后,生成作为 USB 设备挂载目标的新目录。该目录取任何名称均可,本示例中使用的名称为 usb
    # mkdir usb
  4. 将该 USB 盘挂载到新生成的目录。注:在大多数情况下,您不会想要挂载整个驱动器,而只会挂载其中的一个分区。因此不要使用名称 sdb,而是要使用您要写入日志文件的分区名称。在这个示例中使用的名称为 sdb1
    # mount /dev/sdb1 /mnt/usb
    现在您可以通过访问该分区并列出其内容确认挂载了正确的设备及分区,该列表应符合您应在该驱动器中看到的内容。
    # cd /mnt/usb
    # ls
  5. 将日志文件复制到挂载的设备中。
    # cp /tmp/*log /mnt/usb
  6. 卸载该 USB 盘。如果您看到出错信息说该目标忙,则需要将工作目录改为该挂载以外的目录(例如:/)。
    # umount /mnt/usb
现已将安装的日志文件保存到 USB 盘中。

过程 7.2. 通过网络传送日志文件

  1. 在您要执行安装的系统中,按 Ctrl+Alt+F2 进入 shell 提示符。此时您会以 root 帐户登录,并可以访问该安装程序的临时文件系统。
  2. 切换到日志文件所在的 /tmp 目录:
    # cd /tmp
  3. 使用 scp 命令将这些日志文件复制到另一个系统中:
    # scp *log user@address:path
    使用目标系统中的有效用户名替换 user,使用目标系统的地址或者主机名替换 address,使用到您要保存这些日志文件的目录路径替换 path。例如:如果您要作为 john 登录系统,该系统的 IP 地址为 192.168.0.122,同时要将日志文件保存到那个系统的 /home/john/logs/ 目录中,则请使用以下命令:
    # scp *log john@192.168.0.122:/home/john/logs/
    第一次连接到目标系统后,可看到类似如下信息:
    The authenticity of host '192.168.0.122 (192.168.0.122)' can't be established.
    ECDSA key fingerprint is a4:60:76:eb:b2:d0:aa:23:af:3d:59:5c:de:bb:c4:42.
    Are you sure you want to continue connecting (yes/no)?
    输入 yes 并按 Enter 继续。此时会提示您提供有效密码。开始将这些文件传送到目标系统指定的目录中。
来自安装的日志文件现在就保存在目标系统中,并可供查看。

7.1. 开始安装时出现的问题

7.1.1. 引导至图形安装时出现的问题

有些系统使用的显卡会造成系统无法引导至图形安装程序。如果安装程序没有使用其默认设置运行,则会尝试在较低的分辨率模式下运行。如果仍然失败,安装程序会尝试使在文本模式中运行。
有一些解决显示问题的方法,大多与指定定制引导选项有关。详情请查看 第 20.1 节 “在引导菜单中配置安装系统”
使用基本图形模式
您可以尝试使用基本图形驱动程序执行安装。要这样做可以在引导菜单中选择 故障排除 > 使用基本图形模式安装 Red Hat Enterprise Linux 7.0,也可以编辑安装程序的引导选项,在命令行的末端添加 inst.xdriver=vesa
手动指定显示分辨率
如果安装程序无法探测到您的屏幕分辨率,您可以覆盖自动探测,并手动选择。要这样做,可以在引导菜单末尾添加 inst.resolution=x 选项,其中 x 是您的显示分辨率(例如:1024x768)。
使用备选视频驱动程序
您还可以尝试指定定制视频驱动程序,覆盖安装程序的自动探测。要指定驱动程序,请使用 inst.xdriver=x 选项,其中 x 是您要使用的设备驱动程序(例如:nouveau)。

注意

如果指定定制视频驱动程序可以解决您的问题,则您应该在 https://bugzilla.redhat.comanaconda 组件下提交 bug 报告。Anaconda 应该可以自动探测套您的硬件并自动使用适当的驱动程序。
使用 VNC 执行安装
如果上述选项失败,则可以使用其他系统通过网络,使用虚拟网络计算(VNC)协议进入图形安装。有关使用 VNC 安装的详情请查看 第 22 章 使用 VNC 安装

7.1.2. 未探测到串口控制台

在有些情况下,尝试使用串口控制台以文本模式安装将造成在该控制台无输出结果。这种情况会出现在有显卡但没有连接显示器的系统中。如果 Anaconda 探测到显卡,它就会尝试使用它显示,即使没有连接显示器也是如此。
如果要在串口控制台中执行基于文本的安装,请使用 inst.textconsole= 引导选项。详情请查看 第 20 章 引导选项