E.2. 使用安装日志文件

为了进行调试,安装程序将安装操作记录在位于 /tmp 目录的文件中。这些日志文件在下表中列出。

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

日志文件内容

/tmp/anaconda.log

常规消息。

/tmp/program.log

在安装过程中运行的所有外部程序。

/tmp/storage.log

大量的存储模块信息。

/tmp/packaging.log

dnf 和 rpm 软件包安装信息。

/tmp/dbus.log

有关用于安装程序模块的 dbus 会话的信息。

/tmp/sensitive-info.log

不属于其他日志一部分的配置信息,且不会复制到安装系统。

/tmp/syslog

与硬件相关的系统信息。此文件包含来自其他 Anaconda 文件的消息。

如果安装失败,信息将被整合到 /tmp/anaconda-tb-identifier 中,其中 identifier 是一个随机字符串。成功安装后,这些文件将复制到安装系统的 /var/log/anaconda/ 目录下。但是,如果安装失败,或者在引导安装系统时使用了 inst.nosave=allinst.nosave=logs 选项,则这些日志只存在于安装程序的 RAM 磁盘中。这意味着日志不会被永久保存,并在系统关闭时丢失。要永久存储它们,请将文件复制到网络上的其它系统,或将它们复制到挂载的存储设备,如 USB 闪存。

E.2.1. 创建预安装日志文件

使用这个流程设置 inst.debug 选项,来在安装进程开始前创建日志文件。例如,这些日志文件包含当前的存储配置。

先决条件

  • Red Hat Enterprise Linux 引导菜单打开。

流程

  1. 从引导菜单中选择 Install Red Hat Enterprise Linux 选项。
  2. 在基于 BIOS 的系统中按 Tab 键,或使用 UEFI 的系统中的 e 键编辑所选引导选项。
  3. inst.debug 附加到选项中。例如:

    vmlinuz ... inst.debug
  4. Enter 键。在安装程序启动前,系统将预安装日志文件保存在 /tmp/pre-anaconda-logs/ 目录中。
  5. 要访问日志文件,请切换到控制台。
  6. 进入 /tmp/pre-anaconda-logs/ 目录:

    # cd /tmp/pre-anaconda-logs/

E.2.2. 将安装日志文件传送到 USB 驱动器中

使用这个步骤将安装日志文件传送到 USB 驱动器中。

先决条件

  • 您已从 USB 驱动器备份了数据。
  • 已登录到 root 帐户,并可访问安装程序的临时文件系统。

流程

  1. Ctrl + Alt + F2 访问您要安装的系统的 shell 提示。
  2. 将 USB 闪存连接到系统,并运行 dmesg 命令:

    # dmesg

    此时会显示列出所有最新事件的日志。在这个日志的末尾会显示一组信息。例如:

    [ 170.171135] sd 5:0:0:0: [sdb] Attached SCSI removable disk
  3. 请注意连接的设备的名称。在上例中它是 sdb
  4. 进入 /mnt 目录并生成作为 USB 驱动器挂载对象的新目录。这个示例使用 usb:

    # mkdir usb
  5. 将 USB 闪存驱动器挂载到新创建的目录中。在大多数情况下,您不想要挂载整个驱动器,而只需要挂载一个分区。不要使用 sdb 名称,使用您想要将日志文件写入的分区名称。本例中使用了 sdb1 名称:

    # mount /dev/sdb1 /mnt/usb
  6. 通过访问和列出其内容来验证您是否已挂载了正确的设备和分区:

    # cd /mnt/usb
    # ls
  7. 将日志文件复制到挂载的设备中。

    # cp /tmp/*log /mnt/usb
  8. 卸载 USB 闪存驱动器。如果您收到目标在忙碌的错误消息,请将工作目录更改为挂载之外的目录(例如 /)。

    # umount /mnt/usb

E.2.3. 通过网络传输安装日志文件

使用以下步骤通过网络传输安装日志文件。

先决条件

  • 已登录到 root 帐户,并可访问安装程序的临时文件系统。

流程

  1. Ctrl + Alt + F2 访问您要安装的系统的 shell 提示。
  2. 切换到日志文件所在的 /tmp 目录:

    # cd /tmp
  3. 使用 scp 命令将日志文件复制到网络中的另一个系统中:

    # scp *log user@address:path
    1. 使用目标系统上的有效用户名替换 user ,使用目标系统的地址或主机名替换 address,使用您要保存日志文件的目录的路径替换 path。例如: 如果您要在 IP 地址 192.168.0.122 系统中以 john 身份登录,并将日志文件放在该系统的 /home/john/logs/ 目录下,使用以下命令:

      # scp *log john@192.168.0.122:/home/john/logs/

      第一次连接到目标系统时,SSH 客户端会要求您确认远程系统的指纹是否正确,以及是否要继续:

      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)?
    2. 输入 yes 并按 Enter 继续。提示时提供一个有效的密码。将文件传送到目标系统的指定目录。