B.5. 用于处理存储的 Kickstart 命令

这部分中的 Kickstart 命令配置存储的各个方面,比如设备、磁盘、分区、LVM 和文件系统。

重要

sdX(或 /dev/sdX)格式不能保证重启后一致的设备名称,这可能会使某些 Kickstart 命令的使用变得复杂。当命令需要设备节点名称时,您可以使用 /dev/disk 中的任何项目作为替代。例如,改为使用以下设备名称:

part / --fstype=xfs --onpart=sda1

您可以使用类似以下条目之一:

part / --fstype=xfs --onpart=/dev/disk/by-path/pci-0000:00:05.0-scsi-0:0:0:0-part1

part / --fstype=xfs --onpart=/dev/disk/by-id/ata-ST3160815AS_6RA0C882-part1

通过使用这种方法,命令总是以相同的存储设备为目标。这在大型存储环境中特别有用。要利用系统上的可用设备名称,您可以在交互式安装过程中使用 ls -lR /dev/disk 命令。有关统一引用存储设备的不同方法的更多信息,请参阅 持久性命名属性的概述

B.5.1. device(已弃用)

device Kickstart 命令是可选的。使用它载入其他内核模块。

在大多数 PCI 系统中,安装程序会自动探测以太网卡和 SCSI 卡。然而,在老的系统和某些 PCI 系统中,Kickstart 需要提示才能找到正确的设备。device 命令告知安装程序安装额外模块,使用以下格式:

语法

device moduleName --opts=options

选项

  • moduleName - 使用应该安装的内核模块的名称替换。
  • --opts= - 传递给内核模块的选项。例如:

    device --opts="aic152x=0x340 io=11"

B.5.2. autopart

autopart Kickstart 命令是可选的。它自动创建分区。

自动创建的分区是:根(/)分区(1 GiB 或更大)、swap 分区,以及一个用于架构的合适的 /boot 分区。在足够大的驱动器(50 GiB 及更大)上,这还会创建一个 /home 分区。

语法

autopart OPTIONS

选项

  • --type= - 选择您要使用的预定义自动分区方案之一。可接受以下值:

    • lvm:LVM 分区方案。
    • plain:没有 LVM 的常规分区。
    • thinp :LVM Thin Provisioning 分区方案。

    有关可用分区方案的描述请参考 第 C.1 节 “支持的设备类型”

  • --fstype= - 选择其中一个可用文件系统类型。可用值包括 ext2ext3ext4xfsvfat。默认的文件系统是 xfs。有关这些文件系统的详情请参考 第 C.2 节 “支持的文件系统”
  • --nohome - 禁用自动创建 /home 分区。
  • --nolvm - 不使用 LVM 进行自动分区。这个选项等同于 --type=plain
  • --noboot - 不创建 /boot 分区。
  • --noswap - 不创建交换分区。
  • --encrypted - 使用 Linux 统一密钥设置 (LUKS) 加密所有分区。这等同于在手动图形安装的初始分区界面中选择加密分区选项。

    注意

    在加密一个或多个分区时, Anaconda 会尝试收集 256 字节熵,以保证安全加密分区。收集熵可能需要一些时间 - 无论是否有收集到足够的熵,该过程将在最多 10 分钟后停止。

    与安装系统互动(通过键盘输入或移动鼠标)可加速此进程。如果要在虚拟机中安装,您还可以将 virtio-rng 设备(虚拟随机数生成器)附加到客户机。

  • --LUKS-version=LUKS_VERSION - 指定应该使用哪个版本的 LUKS 格式来加密文件系统。只有在指定了 --encrypted 时这个选项才有意义。
  • --passphrase= - 为所有加密设备提供默认的系统范围密码短语。
  • --escrowcert=URL_of_X.509_certificate - 将所有加密卷的数据加密密钥保存在 /root 的文件中,使用来自 URL_of_X.509_certificate 指定的 URL 的 X.509 证书进行加密。每个加密卷的密钥都作为单独的文件保存。只有在指定了 --encrypted 时这个选项才有意义。
  • --backuppassphrase - 为每个加密卷添加随机生成的密码短语。将这些密码短语存储在 /root 中的单独文件中,使用通过 --escrowcert 指定的 X.509 证书进行加密。只有在指定了 --escrowcert 时这个选项才有意义。
  • --cipher= - 指定在 Anaconda 默认 aes-xts-plain64 时要使用的加密类型。这个选项必须与 --encrypted 选项一同使用;其本身无效。安全强化 文档中列出了可用的加密类型,但红帽强烈建议您使用 aes-xts-plain64aes-cbc-essiv:sha256
  • --pbkdf=PBKDF - 为 LUKS keylot 设置 PBKDF(Password-Based Key Derivation Function)算法。另请参阅 man page cryptsetup(8)。只有在指定了 --encrypted 时这个选项才有意义。
  • --PBKDF-memory=PBKDF_MEMORY - 设置 PBKDF 的内存成本。另请参阅 man page cryptsetup(8)。只有在指定了 --encrypted 时这个选项才有意义。
  • --PBKDF-time=PBKDF_TIME - 设置 PBKDF 密码处理所花费的毫秒数。另请参阅 man page cryptsetup(8) 中的 --iter-time。只有在指定了 --encrypted 时这个选项才有意义,并且与 --pbkdf-iterations 相互排斥。
  • --PBKDF-iterations=PBKDF_ITERATIONS - 设定直接迭代数量并避免 PBKDF 基准测试。另请参阅 man page cryptsetup(8) 中的 --pbkdf-force-iterations。只有在指定了 --encrypted 时这个选项才有意义,并且与 --pbkdf-time 相互排斥。

备注

  • autopart 选项不能与同一 Kickstart 文件中的 part/partitionraidlogvolvolgroup 选项一同使用。
  • autopart 命令不是强制的,但如果 Kickstart 脚本中没有 partmount 命令,则必须包含该命令。
  • 在 CMS 类型的单个 FBA DASD 中安装时,建议使用 autopart --nohome Kickstart 选项。这样可保证安装程序不会创建单独的 /home 分区。安装过程可以成功进行。
  • 如果您丢失了 LUKS 密码短语,那么就完全无法访问所有加密的分区及其数据。丢失的密码短语是无法找回的。但是,您可以使用 --escrowcert 保存加密密码短语,并使用 --backuppassphrase 选项创建加密密码短语备份。
  • 在使用 autopart, autopart --type=lvm, 或 autopart=thinp 时,请确保磁盘扇区大小一致。

B.5.3. bootloader(必需)

bootloader Kickstart 命令是必需的。它指定引导装载程序的安装方式。

Syntax

bootloader [OPTIONS]

选项

  • --append= - 指定附加内核参数。要指定多个参数,使用空格分隔它们。例如:

    bootloader --location=mbr --append="hdd=ide-scsi ide=nodma"

    安装 plymouth 软件包时会自动添加 rhgbquiet 参数,即使您在此未指定参数或根本不使用 --append= 命令。要禁用此行为,请明确禁止安装 plymouth

    %packages
    -plymouth
    %end

    这个选项可用于禁用在大多数现代处理器中存在的 Meltdown 和 Spectre speculative 安全漏洞(CVE-2017-5754、CVE-2017-5753 和 CVE-2017-5715)。在某些情况下,这些机制可能并不是必需的,启用它们可能会导致性能降低而不会提高安全性。要禁用这些系统,请在您的 Kickstart 文件中添加相关选项,例如: bootloader --append="nopti noibrs noibpb" (在 AMD64/Intel 64 系统中)。

    警告

    在禁用任何漏洞缓解机制前,请确定您的系统不会受到安全攻击。有关 Meltdown 和 Spectre 漏洞的详情,请查看红帽漏洞响应文章

  • --boot-drive= - 指定引导装载程序应写入的驱动器,因此要从哪个驱动器引导计算机。如果您使用多路径设备作为引导驱动器,使用它的 disk/by-id/dm-uuid-mpath-WWID 名称指定该设备。

    重要

    目前,使用 zipl 引导装载程序的 64 位 IBM Z 系统中的 Red Hat Enterprise Linux 安装中会忽略 --boot-drive= 选项。安装 zipl 后,它会自行确定引导驱动器。

  • --leavebootorder - 安装程序会将 Red Hat Enterprise Linux 8 添加到引导装载程序中安装的系统列表的顶部,并保留所有现有的条目及其顺序。
重要

这个选项仅适用于 Power 系统,UEFI 系统不应该使用这个选项。

  • --driveorder= - 指定哪个驱动器最先在 BIOS 引导顺序中。例如:

    bootloader --driveorder=sda,hda
  • --location= - 指定引导记录的写入位置。有效值如下:

    • mbr - 默认选项.具体要看驱动器是使用主引导记录(MBR)还是 GUID 分区表(GPT)方案:

      在 GPT 格式的磁盘中,这个选项会在 BIOS 引导分区中安装 stage 1.5 引导装载程序。

      在使用 MBR 格式化的磁盘中,会在 MBR 和第一个分区之间的空白空间中安装 stage 1.5。

    • partition - 在包含内核的分区的第一个扇区安装引导装载程序。
    • none - 不安装引导装载程序。

    在大多数情况下,不需要指定这个选项。

  • --nombr - 不在 MBR 中安装引导加载器。
  • --password= - 如果使用 GRUB2,则将引导装载程序密码设置为使用这个选项指定的密码。这应该被用来限制对可传入任意内核选项的 GRUB2 shell 的访问。

    如果指定密码,GRUB2 还会询问用户名。用户名始终为 root

  • --iscrypted - 通常当您使用 --password= 选项指定引导装载程序密码时,会以明文形式将其保存在 Kickstart 文件中。如果要加密密码,使用这个选项和一个加密的密码。

    要生成加密的密码,请使用 grub2-mkpasswd-pbkdf2 命令,输入要使用的密码,并将命令的输出(以 grub.pbkdf2开头的哈希值)复制到 Kickstart 文件中。带有加密密码的 bootloader Kickstart 条目示例类似如下:

    bootloader --iscrypted --password=grub.pbkdf2.sha512.10000.5520C6C9832F3AC3D149AC0B24BE69E2D4FB0DBEEDBD29CA1D30A044DE2645C4C7A291E585D4DC43F8A4D82479F8B95CA4BA4381F8550510B75E8E0BB2938990.C688B6F0EF935701FF9BD1A8EC7FE5BD2333799C98F28420C5CC8F1A2A233DE22C83705BB614EA17F3FDFDF4AC2161CEA3384E56EB38A2E39102F5334C47405E
  • --timeout= - 指定引导装载程序在引导默认选项前等待的时间(以秒为单位)。
  • --default= - 在引导装载程序配置中设置默认引导镜像。
  • --extlinux - 使用 extlinux 引导装载程序而不是 GRUB2。这个选项只适用于支持 extlinux 的系统。
  • --disabled - 这个选项是更强大的 --location=none 版本。虽然 --location=none 只是禁用引导装载程序安装,但 --disabled 禁用引导装载程序安装,同时禁用包含引导装载程序的软件包安装,从而节省了空间。

备注

  • 红帽建议在每个系统中设置引导装载程序密码。一个没有保护的引导装载程序可以让潜在的攻击者修改系统的引导选项,并获得对系统的未授权访问。
  • 在某些情况下,需要一个特殊的分区来在 AMD64、Intel 64 和 64 位 ARM 系统上安装引导装载程序。这个分区的类型和大小取决于您要安装引导装载程序的磁盘是否使用主引导记录(MBR)还是 GUID 分区表(GPT)模式。如需更多信息,请参阅 执行标准的 RHEL 8 安装 文档中的 配置引导装载程序 部分。
  • sdX(或 /dev/sdX)格式不能保证重启后一致的设备名称,这可能会使某些 Kickstart 命令的使用变得复杂。当命令需要设备节点名称时,您可以使用 /dev/disk 中的任何项目作为替代。例如,改为使用以下设备名称:

    part / --fstype=xfs --onpart=sda1

    您可以使用类似以下条目之一:

    part / --fstype=xfs --onpart=/dev/disk/by-path/pci-0000:00:05.0-scsi-0:0:0:0-part1
    
    part / --fstype=xfs --onpart=/dev/disk/by-id/ata-ST3160815AS_6RA0C882-part1

    通过使用这种方法,命令总是以相同的存储设备为目标。这在大型存储环境中特别有用。要利用系统上的可用设备名称,您可以在交互式安装过程中使用 ls -lR /dev/disk 命令。有关统一引用存储设备的不同方法的更多信息,请参阅 持久性命名属性的概述

  • 在 Red Hat Enterprise Linux 8 中已弃用 --upgrade 选项。

B.5.4. zipl

zipl Kickstart 命令是可选的。它为 64 位 IBM Z 指定 ZIPL 配置。

选项

  • --secure-boot - 如果安装系统支持,则启用安全引导。
注意

当在 IBM z14 之后的系统中安装时,无法从 IBM z14 或更早的型号引导安装的系统。

  • --force-secure-boot - 无条件启用安全引导。
注意

IBM z14 及更早的型号不支持安装。

  • --no-secure-boot - 禁用安全引导.
注意

IBM z14 及更早的型号不支持安全引导。如果要在 IBM z14 及更早的型号中引导安装的系统,请使用 --no-secure-boot

B.5.5. clearpart

clearpart Kickstart 命令是可选的。在创建新分区之前,它会从系统中删除分区。默认情况下不会删除任何分区。

语法

clearpart OPTIONS

选项

  • --all - 断掉系统中的所有分区。

    这个选项将擦除安装程序可以访问的所有磁盘,包括任何附加的网络存储。请小心使用这个选项。

    为了防止您需要保留的存储会被 clearpart 清除,您可以使用 --drives= 选项指定需要删除的存储,或在以后附加网络存储(例如:在 Kickstart 文件的 %post 部分),或将用来访问网络存储的内核模块列入阻塞名单。

  • --drives= - 指定从中清除分区的驱动器。例如,下面的命令清除了主 IDE 控制器上前两个驱动器上所有分区:

    clearpart --drives=hda,hdb --all

    要清除多路径设备,请使用格式 disk/by-id/scsi-WWID,其中 WWID 是该设备的通用识别符。例如:要清除 WWID 58095BEC5510947BE8C0360F604351918 的磁盘,请使用:

    clearpart --drives=disk/by-id/scsi-58095BEC5510947BE8C0360F604351918

    这个格式是所有多路径设备的首选,但如果出现错误,没有使用逻辑卷管理(LVM)的多路径设备也可以使用disk/by-id/dm-uuid-mpath-WWID 格式进行清除,其中 WWID 是该设备的通用识别符。例如,若要清除 WWID 为 2416CD96995134CA5D787F00A5AA11017 的磁盘,请使用:

    clearpart --drives=disk/by-id/dm-uuid-mpath-2416CD96995134CA5D787F00A5AA11017

    切勿按设备名称(如 mpatha )指定多路径设备。这样的设备名称并不是特定磁盘特有的。在安装过程中名为 /dev/mpatha 的磁盘可能不是您期望的磁盘。因此,clearpart 命令可能会以错误的磁盘为目标。

  • --initlabel - 通过为所有磁盘在其对于的架构中创建一个默认的磁盘标签来格式化磁盘(例如: 对于 x86,使用 msdos)。因为 --initlabel 可以查看所有磁盘,因此请确保只连接要格式化的驱动器。即使没有使用 --initlabelclearpart 清除的磁盘也会创建标签。

    clearpart --initlabel --drives=names_of_disks

    例如:

    clearpart --initlabel --drives=dasda,dasdb,dasdc
  • --list= - 指定要清除哪些分区。如果使用此选项,这个选项将覆盖 --all--linux 选项。可在不同的驱动器间使用。例如:

    clearpart --list=sda2,sda3,sdb1
  • --disklabel=LABEL - 设置要使用的默认 disklabel。只有支持该平台的磁盘标签才会被接受。例如,在 64 位 Intel 和 AMD 构架中,接受 msdosgpt disklabels,但不接受 dasd
  • --linux - 删除所有 Linux 分区.
  • --none (默认)- 不删除任何分区。
  • --cdl - 将所有 LDL DASD 重新格式化为 CDL 格式。

备注

  • sdX(或 /dev/sdX)格式不能保证重启后一致的设备名称,这可能会使某些 Kickstart 命令的使用变得复杂。当命令需要设备节点名称时,您可以使用 /dev/disk 中的任何项目作为替代。例如,改为使用以下设备名称:

    part / --fstype=xfs --onpart=sda1

    您可以使用类似以下条目之一:

    part / --fstype=xfs --onpart=/dev/disk/by-path/pci-0000:00:05.0-scsi-0:0:0:0-part1
    
    part / --fstype=xfs --onpart=/dev/disk/by-id/ata-ST3160815AS_6RA0C882-part1

    通过使用这种方法,命令总是以相同的存储设备为目标。这在大型存储环境中特别有用。要利用系统上的可用设备名称,您可以在交互式安装过程中使用 ls -lR /dev/disk 命令。有关统一引用存储设备的不同方法的更多信息,请参阅 持久性命名属性的概述

  • 如果使用 clearpart 命令,则无法在逻辑分区中使用 part --onpart 命令。

B.5.6. fcoe

fcoe Kickstart 命令是可选的。它指定除了由 EDD (Enhanced Disk Drive Services)发现的设备外,还要自动激活哪些 FCoE 设备。

Syntax

fcoe --nic=name [OPTIONS]

选项

  • --nic= (必需)- 要激活的设备的名称。
  • --dcb= - 建立数据中心桥接 (DCB) 设置。
  • --autovlan - 自动发现 VLAN。默认启用这个选项。

B.5.7. ignoredisk

ignoredisk Kickstart 命令是可选的。这会导致安装程序忽略指定的磁盘。

如果您使用自动分区并希望忽略某些磁盘,这就很有用。例如,如果没有 ignoredisk,尝试在 SAN-cluster 中部署,Kickstart 将失败,因为安装程序检测到到 SAN 的被动路径没有分区表。

Syntax

ignoredisk --drives=drive1,drive2,... | --only-use=drive

选项

  • --drives=driveN,…​ - 使用 sdasdb、…​、hda、…​ 等之一替换 driveN
  • --only-use=driveN,…​ - 指定安装程序要使用的磁盘列表。其它磁盘将被忽略。例如:要在安装过程中使用磁盘 da 并忽略所有其他磁盘:

    ignoredisk --only-use=sda

    要包括不使用 LVM 的多路径设备:

    ignoredisk --only-use=disk/by-id/dm-uuid-mpath-2416CD96995134CA5D787F00A5AA11017

    要包括使用 LVM 的多路径设备:

    ignoredisk --only-use==/dev/disk/by-id/dm-uuid-mpath-
    bootloader --location=mbr

您必须仅指定 --drives--only-use 中的一个。

备注

  • 在 Red Hat Enterprise Linux 8 中已弃用 --interactive 选项。这个选项允许用户手动在高级存储界面中进行操作。
  • 要忽略不使用逻辑卷管理(LVM)的多路径设备,使用格式 disk/by-id/dm-uuid-mpath-WWID,其中 WWID 是该设备的通用识别符。例如,要忽略 WWID 为 2416CD96995134CA5D787F00A5AA11017 的磁盘,请使用:

    ignoredisk --drives=disk/by-id/dm-uuid-mpath-2416CD96995134CA5D787F00A5AA11017
  • 切勿按设备名称(如 mpatha )指定多路径设备。这样的设备名称并不是特定磁盘特有的。在安装过程中名为 /dev/mpatha 的磁盘可能不是您期望的磁盘。因此,clearpart 命令可能会以错误的磁盘为目标。
  • sdX(或 /dev/sdX)格式不能保证重启后一致的设备名称,这可能会使某些 Kickstart 命令的使用变得复杂。当命令需要设备节点名称时,您可以使用 /dev/disk 中的任何项目作为替代。例如,改为使用以下设备名称:

    part / --fstype=xfs --onpart=sda1

    您可以使用类似以下条目之一:

    part / --fstype=xfs --onpart=/dev/disk/by-path/pci-0000:00:05.0-scsi-0:0:0:0-part1
    
    part / --fstype=xfs --onpart=/dev/disk/by-id/ata-ST3160815AS_6RA0C882-part1

    通过使用这种方法,命令总是以相同的存储设备为目标。这在大型存储环境中特别有用。要利用系统上的可用设备名称,您可以在交互式安装过程中使用 ls -lR /dev/disk 命令。有关统一引用存储设备的不同方法的更多信息,请参阅 持久性命名属性的概述

B.5.8. iscsi

iscsi Kickstart 命令是可选的。它指定了在安装过程中要添加的附加 iSCSI 存储。

Syntax

iscsi --ipaddr=address [OPTIONS]

必填选项

  • --ipaddr= (必需)- 要连接的目标的 IP 地址。

可选选项

  • --port= (必需)- 端口号。如果没有,则默认自动使用 --port=3260
  • --target= - 目标 IQN(iSCSI 限定名称)。
  • --iface= - 将连接绑定到特定网络接口,而不使用由网络层决定的默认接口。一旦使用,必须在整个 Kickstart 文件的 iscsi 命令的所有实例中指定它。
  • --user= - 与目标进行身份验证所需的用户名
  • --password= - 与为目标指定的用户名对应的密码
  • --reverse-user= - 从使用反向 CHAP 身份验证的目标向启动器进行身份验证所需的用户名
  • --reverse-password= - 与为启动器指定的用户名对应的密码

备注

  • 如果使用 iscsi 命令,还必须使用 iscsiname 命令为 iSCSI 节点分配名称。在 Kickstart 文件中,iscsiname 命令需要在 iscsi 命令的前面。
  • 尽可能在系统 BIOS 或固件(Intel 系统的iBFT)中配置 iSCSI 存储,而不是使用 iscsi 命令。Anaconda 自动检测并使用在 BIOS 或固件中配置的磁盘,且在 Kickstart 文件中不需要特殊配置。
  • 如果您必须使用 iscsi 命令,请确保在安装开始时激活联网,并且在使用 clearpartignoredisk 等命令引用 iSCSI 磁盘iscsi 命令会出现在 Kickstart 文件中。

B.5.9. iscsiname

iscsiname Kickstart 命令是可选的。它为 iscsi 命令指定的 iSCSI 节点分配名称。

Syntax

iscsiname iqname

选项

  • iqname - 分配给 iSCSI 节点的名称。

备注

  • 如果在 Kickstart 文件中使用 iscsi 命令,则必须在 Kickstart 文件 前面 指定 iscsiname

B.5.10. logvol

logvol Kickstart 命令是可选的。它为逻辑卷管理(LVM)创建一个逻辑卷。

Syntax

logvol mntpoint --vgname=name --name=name [OPTIONS]

必填选项

mntpoint

挂载分区的挂载点。必须是以下格式之一:

  • /path

    例如: //home

  • swap

    该分区被用作交换空间。

    要自动决定 swap 分区的大小,请使用 --recommended 选项:

    swap --recommended

    要自动决定 swap 分区的大小,并允许系统的额外空间可以休眠,请使用 --hibernation 选项:

    swap --hibernation

    分配的大小将相当于由 --recommended 分配的交换空间加上您系统上的 RAM 量。

    有关这些命令分配的 swap 大小,请参阅为 AMD64、Intel 64 和 64 位 ARM 系统 推荐的分区方案

--vgname=name
卷组名称。
--name=name
逻辑卷名称。

可选选项

--noformat
使用现有逻辑卷且不要对其进行格式化。
--useexisting
使用现有逻辑卷并重新格式化它。
--fstype=
为逻辑卷设置文件系统类型。有效值为 xfsext2ext3ext4swapvfat
--fsoptions=

指定挂载文件系统时要使用的选项的自由格式字符串。该字符串将复制到安装的系统的 /etc/fstab 文件中,并且应用引号括起来。

注意

在 EFI 系统分区(/boot/efi)中,anaconda 硬编码值,并忽略用户指定的 --fsoptions 值。

--mkfsoptions=

指定要传递给在这个分区上创建文件系统的程序的其他参数。没有对参数列表进行任何操作,因此必须以可直接传递给 mkfs 程序的格式提供。这意味着,根据具体文件系统,多个选项应该用逗号分开,或使用双引号分开。例如,

part /opt/foo1 --size=512 --fstype=ext4 --mkfsoptions="-O ^has_journal,^flex_bg,^metadata_csum"

part /opt/foo2 --size=512 --fstype=xfs --mkfsoptions="-m bigtime=0,finobt=0"

详情请查看您在创建的文件系统的手册页。例如:mkfs.ext4mkfs.xfs

--fsprofile=
指定传递给在这个分区上创建文件系统的程序的使用类型。使用类型定义了创建文件系统时使用的各种微调参数。要使用这个选项,文件系统必须支持使用类型,且必须有一个配置文件来列出有效类型。对于 ext2ext3ext4,此配置文件为 /etc/mke2fs.conf
--label=
为逻辑卷设置标签。
--grow
扩展逻辑卷以占据可用空间(若有),或使用指定的最大值(若有)。只有在磁盘镜像中预分配了最小存储空间时,必须使用该选项,并希望该卷扩展并占据所有可用空间。在物理环境中,这是一次性的操作。但是在虚拟环境中,当虚拟机将任何数据写入虚拟磁盘时,卷大小会增加。
--size=
MiB 中的逻辑卷的大小。此选项不能与 --percent= 选项一同使用。
--percent=

考虑任何静态大小逻辑卷时的逻辑卷大小,作为卷组中剩余空间的百分比。这个选项不能与 --size= 选项一同使用。

重要

在创建新逻辑卷时,您必须使用 --size= 选项静态指定其大小,或使用 --percent= 选项指定剩余空间的百分比。您不能在同一逻辑卷中同时使用这些选项。

--maxsize=
当将逻辑卷设置为可扩充时 MiB 的最大值。在这里指定一个整数值,如 500 (不要包含单位)。
--recommended

创建逻辑卷时使用这个选项,根据您的系统硬件自动决定这个卷的大小。

有关推荐方案的详情,请参考为 AMD64、Intel 64 和 64 位 ARM 系统 推荐的分区方案

--resize
重新调整逻辑卷大小。如果使用这个选项,还必须指定 --useexisting--size
--encrypted

指定该逻辑卷应该通过 Linux Unified Key Setup(LUKS)加密,使用 --passphrase= 选项中提供的密码短语。如果您没有指定密码短语,安装程序将使用 autopart --passphrase 命令设定的默认系统级密码,或者在未设定默认密码时暂停安装并提示您输入密码短语。

注意

在加密一个或多个分区时, Anaconda 会尝试收集 256 字节熵,以保证安全加密分区。收集熵可能需要一些时间 - 无论是否有收集到足够的熵,该过程将在最多 10 分钟后停止。

与安装系统互动(通过键盘输入或移动鼠标)可加速此进程。如果要在虚拟机中安装,您还可以将 virtio-rng 设备(虚拟随机数生成器)附加到客户机。

--passphrase=
指定在加密这个逻辑卷时要使用的密码短语。这个选项必须与 --encrypted 选项一同使用,单独使用无效。
--cipher=
指定在 Anaconda 默认 aes-xts-plain64 时要使用的加密类型。这个选项必须与 --encrypted 选项一同使用;其本身无效。安全强化 文档中列出了可用的加密类型,但红帽强烈建议您使用 aes-xts-plain64aes-cbc-essiv:sha256
--escrowcert=URL_of_X.509_certificate
将所有加密卷的数据加密密钥保存为 /root 中的文件,使用来自 URL_of_X.509_certificate 指定的 URL 的 X.509 证书进行加密。每个加密卷的密钥都作为单独的文件保存。只有在指定了 --encrypted 时这个选项才有意义。
--luks-version=LUKS_VERSION
指定应用来加密文件系统的 LUKS 格式版本。只有在指定了 --encrypted 时这个选项才有意义。
--backuppassphrase
为每个加密卷添加随机生成的密码短语。将这些密码短语存储在 /root 中的单独文件中,使用通过 --escrowcert 指定的 X.509 证书进行加密。只有在指定了 --escrowcert 时这个选项才有意义。
--pbkdf=PBKDF
为 LUKS keylot 设置基于密码的身份验证(PBKDF)算法。另请参阅 man page cryptsetup(8)。只有在指定了 --encrypted 时这个选项才有意义。
--pbkdf-memory=PBKDF_MEMORY
为 PBKDF 设置内存成本。另请参阅 man page cryptsetup(8)。只有在指定了 --encrypted 时这个选项才有意义。
--pbkdf-time=PBKDF_TIME
设置 PBKDF 密码处理所消耗的毫秒数。另请参阅 man page cryptsetup(8) 中的 --iter-time。只有在指定了 --encrypted 时这个选项才有意义,并且与 --pbkdf-iterations 相互排斥。
--pbkdf-iterations=PBKDF_ITERATIONS
设定直接迭代的次数,并避免 PBKDF 基准出现。另请参阅 man page cryptsetup(8) 中的 --pbkdf-force-iterations。只有在指定了 --encrypted 时这个选项才有意义,并且与 --pbkdf-time 相互排斥。
--thinpool
创建精简池逻辑卷。(使用 none 挂载点)
--metadatasize=size
指定新精简池设备的元数据大小(单位 MiB)。
--chunksize=size
为新的精简池设备指定块大小(单位 KiB)。
--thin
创建精简逻辑卷。(需要使用 --poolname
--poolname=name
指定要在其中创建精简逻辑卷的精简池名称。需要 --thin 选项。
--profile=name
指定与精简逻辑卷搭配使用的配置配置集的名称。如果使用,该名称也会包含在给定逻辑卷的元数据中。默认情况下,可用的配置集为 defaultthin-performance,在 /etc/lvm/profile/ 目录中定义。有关其他信息,请参见 lvm(8) 手册页。
--cachepvs=
用逗号分开的物理卷列表,它应用作这个卷的缓存。
--cachemode=

指定应该使用哪种模式缓存这个逻辑卷 - writebackwritethrough

注意

有关缓存的逻辑卷及其模式的详情,请参考 lvmcache(7) 手册页。

--cachesize=
附加到逻辑卷的缓存大小,以 MiB 为单位。此选项需要 --cachepvs= 选项。

备注

  • 使用 Kickstart 安装 Red Hat Enterprise Linux 时,请勿在逻辑卷和卷组名称中使用短划线 (-) 字符。如果使用这个字符,安装会完成,但 /dev/mapper/ 目录会列出这些卷和卷组的每个横线都会加倍。例如,名为 volgrp-01 的卷组,其包含名为 logvol-01 的逻辑卷将被列为 /dev/mapper/volgrp-​01-logvol-​01

    这个限制只适用于新创建的逻辑卷和卷组名称。如果您使用 --noformat 选项重复使用现有的名称,则不会更改它们的名称。

  • 如果您丢失了 LUKS 密码短语,那么就完全无法访问所有加密的分区及其数据。丢失的密码短语是无法找回的。但是,您可以使用 --escrowcert 保存加密密码短语,并使用 --backuppassphrase 选项创建加密密码短语备份。

示例

  • 首先创建分区,然后创建逻辑卷组,然后创建逻辑卷:

    part pv.01 --size 3000
    volgroup myvg pv.01
    logvol / --vgname=myvg --size=2000 --name=rootvol
  • 首先创建分区,然后创建逻辑卷组,再创建逻辑卷以占据卷组中剩余的 90% 空间:

    part pv.01 --size 1 --grow
    volgroup myvg pv.01
    logvol / --vgname=myvg --name=rootvol --percent=90

B.5.11. mount

mount Kickstart 命令是可选的。它为现有块设备分配挂载点,并选择性地将其重新格式化为给定格式。

语法

mount [OPTIONS] device mountpoint

必须的选项

  • device - 要挂载的块设备。
  • mountpoint - 挂载 device 的位置。它必须是有效的挂载点,如 //usr,如果设备不可卸载,则为 none (如 swap)。

可选选项:

  • --reformat= - 指定应重新格式化该设备的新格式(如 ext4)。
  • --mkfsoptions= - 指定要传递给 命令的附加选项,该命令将创建 --reformat= 中指定的新文件系统。这里提供的选项列表没有被处理,因此必须使用可直接传递给 mkfs 程序的格式指定。根据具体文件系统,选项列表应该用逗号分开,或使用双引号分开。有关具体详情,请参阅 mkfs man page(例如 mkfs.ext4(8)mkfs.xfs(8))。
  • --mountoptions= - 指定自由格式字符串,其中包含挂载文件系统时要使用的选项。字符串将复制到安装的系统上的 /etc/fstab 文件,并使用双引号括起来。有关挂载选项的完整列表,请参见 mount(8) 手册页,有关基础知识,请参见 fstab(5)

备注

  • 与 Kickstart 中的大多数其他存储配置命令不同,mount 不需要您在 Kickstart 文件中描述整个存储配置。您只需要确定系统中存在描述的块设备。但是,如果要使用挂载的所有设备创建存储堆栈,则必须使用其他命令,比如 part 要这样做。
  • 在同一个 Kickstart 文件中,您不能将 mount 与其他存储相关的命令,如 partlogvolautopart 一起使用。

B.5.12. nvdimm

nvdimm Kickstart 命令是可选的。它对非线性内存模块(NVDIMM)设备执行操作。

Syntax

nvdimm action [OPTIONS]

Actions

  • reconfigure - 将特定 NVDIMM 设备重新配置为给定模式。另外,指定的设备被隐式标记为要使用的,因此后续的同一设备 nvdimm use 命令就冗余了。这个操作使用以下格式:

    nvdimm reconfigure [--namespace=NAMESPACE] [--mode=MODE] [--sectorsize=SECTORSIZE]
    • --namespace= - 按命名空间的设备规格。例如:

      nvdimm reconfigure --namespace=namespace0.0 --mode=sector --sectorsize=512
    • --mode= - 模式规格。目前,只有值 sector 可用。
    • --sectorsize= - 扇区模式的扇区大小。例如:

      nvdimm reconfigure --namespace=namespace0.0 --mode=sector --sectorsize=512

      支持的扇区大小为 512 和 4096 字节。

  • use - 将 NVDIMM 设备指定为安装目标。该设备必须已通过 nvdimm reconfigure 命令配置为扇区模式。这个操作使用以下格式:

    nvdimm use [--namespace=NAMESPACE|--blockdevs=DEVICES]
    • --namespace= - 按命名空间指定设备。例如:

      nvdimm use --namespace=namespace0.0
    • --blockdevs= - 指定与要使用的 NVDIMM 设备对应的块设备列表。支持星号 * 通配符。例如:

      nvdimm use --blockdevs=pmem0s,pmem1s
      nvdimm use --blockdevs=pmem*

备注

  • 默认情况下,安装程序忽略所有 NVDIMM 设备。您必须使用 nvdimm 命令在这些设备中启用安装。

B.5.13. part 或 partition

需要 partpartition Kickstart 命令。它在系统上创建一个分区。

Syntax

part|partition mntpoint [OPTIONS]

选项

  • mntpoint - 挂载分区的位置。该值必须是以下格式之一:

    • /path

      例如: //usr/home

    • swap

      该分区被用作交换空间。

      要自动决定 swap 分区的大小,请使用 --recommended 选项:

      swap --recommended

      分配的大小将生效,但不会根据您的系统进行精确校准。

      要自动确定 swap 分区的大小,同时允许系统的额外空间可以休眠,请使用 --hibernation 选项:

      swap --hibernation

      分配的大小将相当于由 --recommended 分配的交换空间加上您系统上的 RAM 量。

      有关这些命令分配的 swap 大小,请参阅 AMD64、Intel 64 和 64 位 ARM 系统的 第 C.4 节 “推荐的分区方案”

    • raid.id

      该分区用于软件 RAID(请参阅 raid)。

    • pv.id

      该分区用于 LVM(请参阅 logvol)。

    • biosboot

      该分区将用在 BIOS 引导分区中。在使用 BIOS 的 AMD64 和 Intel 64 系统中使用 GUID 分区表(GPT)中需要 1 MiB BIOS 引导分区 ; 引导装载程序将被安装到其中。UEFI 系统中不需要此功能。另请参阅 bootloader 命令。

    • /boot/efi

      一个 EFI 系统分区。基于 UEFI 的 AMD64、Intel 64 和 64 位 ARM 上需要 50 MiB EFI 分区。推荐的大小为 200 MiB。它在 BIOS 系统上并不需要。另请参阅 bootloader 命令。

  • --size= - 最小分区大小,以 MiB 为单位。在这里指定一个整数值,如 500 (不要包含单位)。

    重要

    如果 --size 值太小,安装会失败。将 --size 值设置为您需要的最小空间量。有关大小建议,请参阅 第 C.4 节 “推荐的分区方案”

  • --grow - 告诉分区使用所有可用空间(若有),或使用设置的最大值(如果指定了最大值)。

    注意

    如果您在交换分区上使用 --grow= 但没有设置 --maxsize=,Anaconda 会限制 swap 分区的最大大小。对于物理内存小于 2 GiB 的系统,强制的限制为物理内存的两倍。对于超过 2 GiB 的系统,强制限制为物理内存大小加上 2GiB。

  • --maxsize= - 分区设置为增长时的最大分区大小(以 MiB 为单位)。在这里指定一个整数值,如 500 (不要包含单位)。
  • --noformat - 指定不要被格式化的分区,以便与 --onpart 命令一起使用。
  • --onpart=--usepart= - 指定要放置分区的设备。使用现有的空白设备并将其格式化到新指定类型。例如:

    partition /home --onpart=hda1

    /home 放置到 /dev/hda1

    这些选项还可以在逻辑卷中添加分区。例如:

    partition pv.1 --onpart=hda2

    设备必须已在系统上存在;--onpart 选项不会创建它。

    在这种情况下, Anaconda 会在不创建分区表的情况下格式化并使用驱动器。但请注意,使用这种方式格式化的设备中不支持 GRUB2 安装,且必须将其放在有分区表的驱动器中。

    partition pv.1 --onpart=hdb
  • --ondisk=--ondrive= - 在现有磁盘中创建分区(由 part 命令指定)。这个命令总是创建一个分区。强制在特定磁盘中创建分区。例如: --ondisk=sdb 将分区放在系统的第二个 SCSI 磁盘中。

    要指定不使用逻辑卷管理(LVM)的多路径设备,使用格式 disk/by-id/dm-uuid-mpath-WWID,其中 WWID 是该设备的通用识别符。例如,要指定 WWID 为 2416CD96995134CA5D787F00A5AA11017 的磁盘,请使用:

    part / --fstype=xfs --grow --asprimary --size=8192 --ondisk=disk/by-id/dm-uuid-mpath-2416CD96995134CA5D787F00A5AA11017
    警告

    切勿按设备名称(如 mpatha )指定多路径设备。这样的设备名称并不是特定磁盘特有的。在安装过程中名为 /dev/mpatha 的磁盘可能不是您期望的磁盘。因此,part 命令可能会以错误的磁盘为目标。

  • --asprimary - 强制将该分区分配为 primary 分区。如果无法将该分区作为主分区分配(通常是因为已经分配了太多的主分区),则该分区进程会失败。只有使用主引导记录(MBR)时这个选项才有意义。
  • --fsprofile= - 指定要传递给在这个分区上创建文件系统的程序的使用类型。使用类型定义了创建文件系统时使用的各种微调参数。要使用这个选项,文件系统必须支持使用类型,且必须有一个配置文件来列出有效类型。对于 ext2ext3ext4,此配置文件为 /etc/mke2fs.conf
  • --mkfsoptions= - 指定要传递给在此分区上创建文件系统的程序的其他参数。这与 --fsprofile 类似,但适用于所有文件系统,而不仅仅是支持配置集概念的文件系统。没有对参数列表进行任何操作,因此必须以可直接传递给 mkfs 程序的格式提供。这意味着,根据具体文件系统,多个选项应该用逗号分开,或使用双引号分开。例如,

    part /opt/foo1 --size=512 --fstype=ext4 --mkfsoptions="-O ^has_journal,^flex_bg,^metadata_csum"
    
    part /opt/foo2 --size=512 --fstype=xfs --mkfsoptions="-m bigtime=0,finobt=0"

详情请查看您在创建的文件系统的手册页。例如:mkfs.ext4mkfs.xfs

  • --fstype= - 为分区设置文件系统类型。有效值为 xfsext2ext3ext4swapvfatefibiosboot
  • --fsoptions - 指定在挂载文件系统时要使用的自由格式选项字符串。该字符串将复制到安装的系统的 /etc/fstab 文件中,并且应用引号括起来。

    注意

    在 EFI 系统分区(/boot/efi)中,anaconda 硬编码值,并忽略用户指定的 --fsoptions 值。

  • --label= - 为单个分区分配标签。
  • --recommended - 自动确定分区的大小。

    有关推荐方案的详情,请参阅 AMD64、Intel 64 和 64 位 ARM 的 第 C.4 节 “推荐的分区方案”

    重要

    这个选项只能用于生成文件系统(如 /boot 分区和 交换空间)的分区。它不能被用来创建 LVM 物理卷或 RAID 成员。

  • --onbiosdisk - 强制 BIOS 发现的特定磁盘上创建的分区。
  • --encrypted - 指定该分区应该用 LUKS 加密,使用 --passphrase= 选项中提供的密码短语。如果您没有指定密码短语,Anaconda 将使用 autopart --passphrase 命令设定的默认系统级密码,或者停止安装并在未设定默认密码短语时提示您输入密码短语。

    注意

    在加密一个或多个分区时, Anaconda 会尝试收集 256 字节熵,以保证安全加密分区。收集熵可能需要一些时间 - 无论是否有收集到足够的熵,该过程将在最多 10 分钟后停止。

    与安装系统互动(通过键盘输入或移动鼠标)可加速此进程。如果要在虚拟机中安装,您还可以将 virtio-rng 设备(虚拟随机数生成器)附加到客户机。

  • --LUKS-version=LUKS_VERSION - 指定应该使用哪个版本的 LUKS 格式来加密文件系统。只有在指定了 --encrypted 时这个选项才有意义。
  • --passphrase= - 指定在加密此分区时要使用的密码短语。这个选项必须与 --encrypted 选项一同使用;其本身无效。
  • --cipher= - 指定在 Anaconda 默认 aes-xts-plain64 时要使用的加密类型。这个选项必须与 --encrypted 选项一同使用;其本身无效。安全强化 文档中列出了可用的加密类型,但红帽强烈建议您使用 aes-xts-plain64aes-cbc-essiv:sha256
  • --escrowcert=URL_of_X.509_certificate - 将所有加密分区的数据加密密钥保存在 /root 的文件中,使用来自 URL_of_X.509_certificate 指定的 URL 的 X.509 证书进行加密。每个加密分区的密钥都作为单独的文件保存。只有在指定了 --encrypted 时这个选项才有意义。
  • --backuppassphrase - 为每个加密分区添加随机生成的密码短语。将这些密码短语存储在 /root 中的单独文件中,使用通过 --escrowcert 指定的 X.509 证书进行加密。只有在指定了 --escrowcert 时这个选项才有意义。
  • --pbkdf=PBKDF - 为 LUKS keylot 设置 PBKDF(Password-Based Key Derivation Function)算法。另请参阅 man page cryptsetup(8)。只有在指定了 --encrypted 时这个选项才有意义。
  • --PBKDF-memory=PBKDF_MEMORY - 设置 PBKDF 的内存成本。另请参阅 man page cryptsetup(8)。只有在指定了 --encrypted 时这个选项才有意义。
  • --PBKDF-time=PBKDF_TIME - 设置 PBKDF 密码处理所花费的毫秒数。另请参阅 man page cryptsetup(8) 中的 --iter-time。只有在指定了 --encrypted 时这个选项才有意义,并且与 --pbkdf-iterations 相互排斥。
  • --PBKDF-iterations=PBKDF_ITERATIONS - 设定直接迭代数量并避免 PBKDF 基准测试。另请参阅 man page cryptsetup(8) 中的 --pbkdf-force-iterations。只有在指定了 --encrypted 时这个选项才有意义,并且与 --pbkdf-time 相互排斥。
  • --resize= - 调整现有分区的大小。使用这个选项时,使用 --size= 选项指定目标的大小(单位 MiB),使用 --onpart= 指定目标分区。

备注

  • part 命令不是强制的,但您必须在 Kickstart 脚本中包含 partautopartmount
  • 在 Red Hat Enterprise Linux 8 中已弃用 --active 选项。
  • 如果因为某种原因分区失败,虚拟控制台 3 中会显示诊断信息。
  • 除非使用 --noformat--onpart,否则所有创建的分区都会格式化为安装过程的一部分。
  • sdX(或 /dev/sdX)格式不能保证重启后一致的设备名称,这可能会使某些 Kickstart 命令的使用变得复杂。当命令需要设备节点名称时,您可以使用 /dev/disk 中的任何项目作为替代。例如,改为使用以下设备名称:

    part / --fstype=xfs --onpart=sda1

    您可以使用类似以下条目之一:

    part / --fstype=xfs --onpart=/dev/disk/by-path/pci-0000:00:05.0-scsi-0:0:0:0-part1
    
    part / --fstype=xfs --onpart=/dev/disk/by-id/ata-ST3160815AS_6RA0C882-part1

    通过使用这种方法,命令总是以相同的存储设备为目标。这在大型存储环境中特别有用。要利用系统上的可用设备名称,您可以在交互式安装过程中使用 ls -lR /dev/disk 命令。有关统一引用存储设备的不同方法的更多信息,请参阅 持久性命名属性的概述

  • 如果您丢失了 LUKS 密码短语,那么就完全无法访问所有加密的分区及其数据。丢失的密码短语是无法找回的。但是,您可以使用 --escrowcert 保存加密密码短语,并使用 --backuppassphrase 选项创建加密密码短语备份。

B.5.14. raid

raid Kickstart 命令是可选的。它组成一个软件 RAID 设备。

Syntax

raid mntpoint --level=level --device=device-name partitions*

选项

  • mntpoint - 挂载 RAID 文件系统的位置。如果是 /,RAID 级别必须是 1,除非引导分区 (/boot) 存在。如果引导分区存在,/boot 分区必须是级别 1,root (/) 分区可以是任意可用的类型。partitions* (代表多个分区可以被列举)列出了要添加到 RAID 阵列的 RAID 标记。

    重要
    • 在 IBM Power 系统上,如果一个 RAID 设备已经准备好,并在安装过程中没有被重新格式化,如果您打算将 /boot 和 PReP 分区放在 RAID 设备上,请确保 RAID 元数据版本为 0.901.0。对于 /boot 和 PReP 分区,不支持mdadm 元数据版本 1.11.2
    • PowerNV 系统上不需要 PReP 引导分区。
  • --level= - 使用的 RAID 级别(0、1、4、5、6 或 10)。

    有关各种可用 RAID 级别的详情,请查看 第 C.3 节 “支持的 RAID 类型”

  • --device= - 要使用的 RAID 设备的名称 - 例如 --device=root

    重要

    不要使用 md0 格式的 mdraid 名称 - 无法保证这些名称具有持久性。相反,应使用有意义的名称,如 rootswap。使用有含义的名称可生成一个从 /dev/md/name/dev/mdX 节点分配到的阵列的符号链接。

    如果您有一个无法为其分配名称的旧阵列(v0.90 元数据),您可以使用文件系统标签或 UUID 指定阵列。例如,--device=LABEL=root--device=UUID=93348e56-4631-d0f0-6f5b-45c47f570b88

    您可以使用 RAID 设备上文件系统的 UUID 或 RAID 设备本身的 UUID。RAID 设备的 UUID 应为 8-4-4-4-12 格式。mdadm 报告的 UUID 采用 8:8:8:8 格式,需要更改。例如 93348e56:4631d0f0:6f5b45c4:7f570b88 改为 93348e56-4631-d0f0-6f5b-45c47f570b88

  • --CHUNKSIZE= - 以 KiB 为单位设置 RAID 存储的块大小。在某些情况下,使用与默认块不同的块大小 (512 Kib) 可以提高 RAID 的性能。
  • --spares= - 指定分配给 RAID 阵列的备用驱动器数量。可使用备用驱动器在驱动器失败时重建阵列。
  • --fsprofile= - 指定要传递给在这个分区上创建文件系统的程序的使用类型。使用类型定义了创建文件系统时使用的各种微调参数。要使用这个选项,文件系统必须支持使用类型,且必须有一个配置文件来列出有效类型。对于 ext2、ext3 和 ext4,此配置文件为 /etc/mke2fs.conf
  • --fstype= - 为 RAID 阵列设置文件系统类型。有效值为 xfsext2ext3ext4swapvfat
  • --fsoptions= - 指定在挂载文件系统时要使用的自由格式选项字符串。该字符串将复制到安装的系统的 /etc/fstab 文件中,并且应用引号括起来。

    注意

    在 EFI 系统分区(/boot/efi)中,anaconda 硬编码值,并忽略用户指定的 --fsoptions 值。

  • --mkfsoptions= - 指定要传递给在此分区上创建文件系统的程序的其他参数。没有对参数列表进行任何操作,因此必须以可直接传递给 mkfs 程序的格式提供。这意味着,根据具体文件系统,多个选项应该用逗号分开,或使用双引号分开。例如,

    part /opt/foo1 --size=512 --fstype=ext4 --mkfsoptions="-O ^has_journal,^flex_bg,^metadata_csum"
    
    part /opt/foo2 --size=512 --fstype=xfs --mkfsoptions="-m bigtime=0,finobt=0"

详情请查看您在创建的文件系统的手册页。例如:mkfs.ext4mkfs.xfs

  • --label= - 指定要生成的文件系统的标签。如果给定标签已被另一个文件系统使用,则会创建一个新标签。
  • --noformat - 使用现有的 RAID 设备,且不要格式化 RAID 阵列。
  • --use existing - 使用现有的 RAID 设备并重新格式化它。
  • --encrypted - 指定该 RAID 设备应该用 LUKS 加密,使用 --passphrase= 选项中提供的密码短语。如果您没有指定密码短语,Anaconda 将使用 autopart --passphrase 命令设定的默认系统级密码,或者停止安装并在未设定默认密码短语时提示您输入密码短语。

    注意

    在加密一个或多个分区时, Anaconda 会尝试收集 256 字节熵,以保证安全加密分区。收集熵可能需要一些时间 - 无论是否有收集到足够的熵,该过程将在最多 10 分钟后停止。

    与安装系统互动(通过键盘输入或移动鼠标)可加速此进程。如果要在虚拟机中安装,您还可以将 virtio-rng 设备(虚拟随机数生成器)附加到客户机。

  • --LUKS-version=LUKS_VERSION - 指定应该使用哪个版本的 LUKS 格式来加密文件系统。只有在指定了 --encrypted 时这个选项才有意义。
  • --cipher= - 指定在 Anaconda 默认 aes-xts-plain64 时要使用的加密类型。这个选项必须与 --encrypted 选项一同使用;其本身无效。安全强化 文档中列出了可用的加密类型,但红帽强烈建议您使用 aes-xts-plain64aes-cbc-essiv:sha256
  • --passphrase= - 指定加密此 RAID 设备时使用的密码短语。这个选项必须与 --encrypted 选项一同使用;其本身无效。
  • --escrowcert=URL_of_X.509_certificate - 将这个设备的数据加密密钥保存在 /root 中的一个文件中,使用来自 URL_of_X.509_certificate 指定的 URL 的 X.509 证书加密。只有在指定了 --encrypted 时这个选项才有意义。
  • --backuppassphrase - 向这个设备添加随机生成的密码短语。将该密语存储在 /root 中的文件中,使用通过 --escrowcert 指定的 X.509 证书进行加密。只有在指定了 --escrowcert 时这个选项才有意义。
  • --pbkdf=PBKDF - 为 LUKS keylot 设置 PBKDF(Password-Based Key Derivation Function)算法。另请参阅 man page cryptsetup(8)。只有在指定了 --encrypted 时这个选项才有意义。
  • --PBKDF-memory=PBKDF_MEMORY - 设置 PBKDF 的内存成本。另请参阅 man page cryptsetup(8)。只有在指定了 --encrypted 时这个选项才有意义。
  • --PBKDF-time=PBKDF_TIME - 设置 PBKDF 密码处理所花费的毫秒数。另请参阅 man page cryptsetup(8) 中的 --iter-time。只有在指定了 --encrypted 时这个选项才有意义,并且与 --pbkdf-iterations 相互排斥。
  • --PBKDF-iterations=PBKDF_ITERATIONS - 设定直接迭代数量并避免 PBKDF 基准测试。另请参阅 man page cryptsetup(8) 中的 --pbkdf-force-iterations。只有在指定了 --encrypted 时这个选项才有意义,并且与 --pbkdf-time 相互排斥。

示例

下面的例子展示,假定系统里有三个 SCSI 磁,如何为 / 创建 RAID 1 分区,为 /home 创建 RAID 5。它还创建三个交换分区,每个驱动器都有一个。

part raid.01 --size=6000 --ondisk=sda
part raid.02 --size=6000 --ondisk=sdb
part raid.03 --size=6000 --ondisk=sdc
part swap --size=512 --ondisk=sda
part swap --size=512 --ondisk=sdb
part swap --size=512 --ondisk=sdc
part raid.11 --size=1 --grow --ondisk=sda
part raid.12 --size=1 --grow --ondisk=sdb
part raid.13 --size=1 --grow --ondisk=sdc
raid / --level=1 --device=rhel8-root --label=rhel8-root raid.01 raid.02 raid.03
raid /home --level=5 --device=rhel8-home --label=rhel8-home raid.11 raid.12 raid.13

备注

  • 如果您丢失了 LUKS 密码短语,那么就完全无法访问所有加密的分区及其数据。丢失的密码短语是无法找回的。但是,您可以使用 --escrowcert 保存加密密码短语,并使用 --backuppassphrase 选项创建加密密码短语备份。

B.5.15. reqpart

reqpart Kickstart 命令是可选的。它自动创建您的硬件平台所需的分区。这为带有 UEFI 固件的系统包括一个 /boot/efi 分区,带有 BIOS 固件和 GPT 的系统包括 biosboot 分区,为 IBM Power 系统包括 PRePBoot 分区。

Syntax

reqpart [--add-boot]

选项

  • --add-boot - 除基础命令创建的特定于平台的分区之外,还创建一个单独的 /boot 分区。

备注

  • 这个命令不能与 autopart 命令一同使用,因为 autopart 会做所有 reqpart 命令要做的工作,另外,还创建其他分区或者逻辑卷,比如 /swap。与 autopart 不同,这个命令只创建特定于平台的分区,并将驱动器的其余部分留空,允许您创建自定义布局。

B.5.16. snapshot

snapshot Kickstart 命令是可选的。在安装过程中使用 LVM 精简卷快照来创建 LVM 精简卷快照。这可让您在安装前或安装后备份逻辑卷。

要创建多个快照,请多次添加 snaphost Kickstart 命令。

Syntax

snapshot vg_name/lv_name --name=snapshot_name --when=pre-install|post-install

选项

  • vg_name/lv_name - 设置卷组和逻辑卷的名称,以便从中创建快照。
  • --name=snapshot_name - 设置快照的名称。这个名称在卷组中必须是唯一的。
  • --when=pre-install|post-install - 如果在安装开始前或安装完成后创建快照,则设置。

B.5.17. volgroup

volgroup Kickstart 命令是可选的。它创建一个逻辑卷管理(LVM)组。

Syntax

volgroup name [OPTIONS] [partition*]

必填选项

  • name - 新卷组的名称。

选项

  • partition - 用作卷组存储支持的物理卷分区。
  • --noformat - 使用现有卷组而不对其进行格式化。
  • --useexisting - 使用现有卷组并重新格式化它。如果使用这个选项,不要指定分区。例如:

    volgroup rhel00 --useexisting --noformat
  • --pesize= - 以 KiB 为单位设置卷组物理扩展的大小。默认值为 4096(4 MiB),最小值为 1024(1 MiB)。
  • --reserved-space= - 指定在 MiB 的卷组中保留未使用的空间量。只适用于新创建的卷组。
  • --reserved-percent= - 指定卷组空间占未使用空间的百分比。只适用于新创建的卷组。

备注

  • 首先创建分区,然后创建逻辑卷组,然后创建逻辑卷。例如:

    part pv.01 --size 10000
    volgroup my_volgrp pv.01
    logvol / --vgname=my_volgrp --size=2000 --name=root
  • 使用 Kickstart 安装 Red Hat Enterprise Linux 时,请勿在逻辑卷和卷组名称中使用短划线 (-) 字符。如果使用这个字符,安装会完成,但 /dev/mapper/ 目录会列出这些卷和卷组的每个横线都会加倍。例如,名为 volgrp-01 的卷组,其包含名为 logvol-01 的逻辑卷将被列为 /dev/mapper/volgrp--01-logvol--01

    这个限制只适用于新创建的逻辑卷和卷组名称。如果您使用 --noformat 选项重复使用现有的名称,则不会更改它们的名称。

B.5.18. zerombr

zerombr Kickstart 命令是可选的。zerombr 会初始化磁盘上找到的所有无效分区表,并销毁具有无效分区表的磁盘的所有内容。当在带有未格式化的 Direct Access Storage Device(DASD)磁盘的 64 位 IBM Z 系统中执行安装时,需要这个命令,否则未格式化的磁盘不会被格式化并在安装过程中使用。

Syntax

zerombr

备注

  • 在 64 位 IBM Z 上,如果指定了 zerombr,安装程序可以看到的直接访问存储设备 (DASD) 都会使用 dasdfmt 自动低级格式化。这个命令还可防止用户在互动安装过程中进行选择。
  • 如果没有指定 zerombr,且安装程序至少可以看到一个未格式化的 DASD,非互动的 Kickstart 安装将无法成功退出。
  • 如果没有指定 zerombr,且安装程序至少可以看到一个未格式化的 DASD,如果用户同意格式化所有可见和未格式化的 DASD,则会退出交互式安装。要绕过这个过程,请只激活那些您要在安装过程中使用的 DASD。您总是可在安装完成后添加更多的 DASD。
  • 这个命令没有选项。

B.5.19. zfcp

zfcp Kickstart 命令是可选的。它定义了光纤通道设备。

这个选项只适用于 64 位 IBM Z。必须指定以下所有选项。

Syntax

zfcp --devnum=devnum [--wwpn=wwpn --fcplun=lun]

选项

  • --devnum= - 设备号(zFCP 适配器设备总线 ID)。
  • --WWPN= - 设备的全球端口名称 (WWPN)。形式为 16 位数字,前面带有 0x
  • --fcplun= - 该设备的逻辑单元号 (LUN)。形式为 16 位数字,前面带有 0x
注意

如果提供了自动 LUN 扫描且安装了 8 或更高版本,则可以指定 FCP 设备总线 ID。否则,所有这三个参数都是必需的。如果没有通过 zfcp.allow_lun_scan 模块参数禁用,自动 LUN 扫描可用于在 NPIV 模式下对 FCP 设备的操作。(默认启用)它对附加到指定总线 ID 的 FCP 设备的存储区域网络中发现的所有 SCSI 设备提供访问。

示例

zfcp --devnum=0.0.4000 --wwpn=0x5005076300C213e9 --fcplun=0x5022000000000000
zfcp --devnum=0.0.4000