安装目的地(Kickstart 不足)

安装目的地(Kickstart 不足)

我正在使用 KS 文件安装 RHEL。由于未正确设置安装目标,安装停止,我收到的消息如下:

您尚未定义根分区 (/),这是继续安装 Red Hat Enterprise Linux 所必需的。

您还没有创建可启动分区

这是问题的图片:

在此输入图像描述

我在 KS 文件中看不到问题出在哪里

这是启动的初始部分(我省略了其余的代码)

rootpw --iscrypted xxxxxxxxx
timezone Americas/New_York
install
skipx
text
# url --url https://myurl.not.user.commented.out
auth --enableshadow --passalgo=sha512
reboot
ignoredisk --only-use=sda
lang en_US.UTF-8
#langsupport --default=en_US.UTF-8 en_US.UTF-8
keyboard us

# Network information
network  --bootproto=static --hostname=SRV-01.xxxxxx.com --device=eno3 --onboot=on --ipv6=auto --ip=192.xxx.xxx.xx --netmask=255.255.255.0 --gateway=192.xxx.xxx.xx --vlanid=411  --nameserver=xxx.xxx.xxx.xxx --nameserver=xxx.xxx.xxx.xxx --ipv6=auto --activate

firewall --disabled
selinux --disabled
%pre
  #!/bin/bash

  # Enable all executed commands to be printed to the terminal
  set -x
  # Disk configuration section
  ignoredisk --only-use=sda
  # zerombr
  # bootloader --location=mbr --append="biosdevname=0"
  clearpart --initlabel --all --drives=sda
  part /boot --fstype xfs --size=1024 --ondisk=sda --asprimary
  
  part pv.1 --size=1000 --grow --ondisk=sda --asprimary
  volgroup vgroot pv.1
  
  logvol /     --fstype xfs --name=lvroot --vgname=vgroot --size=4096
  logvol /usr  --fstype xfs --name=lvusr  --vgname=vgroot --size=4096
  logvol /tmp  --fstype xfs --name=lvtmp  --vgname=vgroot --size=10240
  logvol /var  --fstype xfs --name=lvvar  --vgname=vgroot --size=7168
  logvol /apps --fstype xfs --name=lvapps --vgname=vgroot --size=5632
  logvol /var/crash --fstype xfs --name=lvcrash --vgname=vgroot --size=12288
  logvol swap  --fstype swap --name=lvswap --vgname=vgroot --size=2048
  logvol /home --fstype xfs --name=lvhome --vgname=vgroot --size=512
  
  logvol /apps/tools      --fstype xfs --name=lvITT --vgname=vgroot --size=22528
  logvol /usr/local       --fstype xfs --name=lvlocal --vgname=vgroot --size=256
%end

达尼洛

答案1

您正在块内声明分区布局%pre。该%pre块在读取 kickstart 文件之前作为脚本执行,但在读取时不包含在 kickstart 文件中。另外,%preand里面的块%end不是脚本,所以不会正常执行。

我相信您想要做的就是简单地删除%pre#!/bin/bashset -x%end行。我强烈建议您也取消注释zerombr和行;bootloader前者确保在创建新布局之前将磁盘的 MBR 清零,后者确保引导加载程序安装在 MBR 中。

答案2

有关 Kickstart 部分的信息:

A.3.1。 %预脚本

这些%pre脚本在 Kickstart 文件加载后、完全解析并开始安装之前立即在系统上运行。 ...

%pre脚本可用于激活和配置网络和存储设备。 ...

     ︙

您可以在该部分访问网络%pre。但是,此时尚未配置名称服务,因此只能使用 IP 地址,而不能使用 URL。

     ︙

A.3.2。 %预安装脚本

脚本中的命令pre-install在以下任务完成后运行:

  • 系统已分区
  • 文件系统在 /mnt/sysroot 下创建并挂载
  • 网络已根据任何启动选项和 kickstart 命令进行配置

     ︙

这些%pre-install脚本可用于修改安装,并在软件包安装之前添加具有保证 ID 的用户和组。


        ︙

A.3.3。 %post 脚本

%post脚本是安装后脚本,在安装完成后、系统首次重新启动之前运行。您可以使用此部分来运行系统订阅等任务。

您可以选择在安装完成后、系统首次重新启动之前添加要在系统上运行的命令。 ...

     ︙

由于安装后脚本在chroot环境中运行,因此大多数systemctl命令将拒绝执行任何操作。

来源:执行高级 RHEL 8 安装,附录 A. Kickstart 脚本文件格式参考

相关内容