ESXi のインストール時には、デフォルトのスクリプトを使用すると最初に検出されたディスクに対して標準インストールを実行でき、ブート ローダー構成ファイルを使用すると、カーネル、カーネル オプション、および mboot.c32 または mboot.efi ブート ローダーがインストールに使用するブート モジュールを指定できます。

デフォルトの ks.cfg インストール スクリプトについて

ESXi インストーラには、最初に検出されたディスクへの標準インストールを実行するデフォルトのインストール スクリプトが含まれています。

デフォルトの ks.cfg インストール スクリプトは、初期 RAM ディスクの /etc/vmware/weasel/ks.cfg にあります。デフォルトの ks.cfg ファイルの場所は、ks=file://etc/vmware/weasel/ks.cfg の起動オプションで指定できます。インストール スクリプトまたはアップグレード スクリプトを開始するための起動オプションの入力を参照してください。

ks.cfg スクリプトを使用して ESXi をインストールする場合、デフォルトの root パスワードは myp@ssw0rd です。

インストール メディアにあるデフォルトのスクリプトは変更できません。インストール後、ESXi ホストを管理する vCenter Server に vSphere Client を使用してログインし、デフォルト設定を変更できます。

vSphere 8.0 では、システムにデータ処理ユニット (DPU) がある場合、ks.cfg スクリプトを使用して、ESXi を DPU にインストールすることもできます。

デフォルトのスクリプトには、次のコマンドが含まれます。

#
# Sample scripted installation file
#

# Accept the VMware End User License Agreement
vmaccepteula

# Set the root password for the DCUI and Tech Support Mode
rootpw myp@ssw0rd

# Install on the first local disk available on machine
install --firstdisk --overwritevmfs
 In case you system has DPUs, you also specify a PCI slot:
install --firstdisk --overwritevmfs --dpuPciSlots=<PCIeSlotID>

# Set the network to DHCP on the first network adapter
network --bootproto=dhcp --device=vmnic0

# A sample post-install script
%post --interpreter=python --ignorefailure=true
import time
stampFile = open('/finished.stamp', mode='w')
stampFile.write( time.asctime() )

boot.cfg ファイルについて

ブート ローダ構成ファイル boot.cfg は、mboot.c32 または mboot.efi ブート ローダが ESXi のインストールで使用するカーネル、カーネル オプション、およびブート モジュールを指定します。

boot.cfg ファイルは ESXi のインストーラで提供されます。boot.cfg ファイルの kernelopt 行を変更して、インストール スクリプトの場所を指定したり、ほかのブート オプションを渡したりすることができます。

boot.cfg ファイルの構文は次のとおりです。
# boot.cfg -- mboot configuration file
#
# Any line preceded with '#' is a comment.

title=STRING
prefix=DIRPATH
kernel=FILEPATH
kernelopt=STRING
modules=FILEPATH1 --- FILEPATH2... --- FILEPATHn

# Any other line must remain unchanged.

boot.cfg に記述されるコマンドがブート ローダーを構成します。

表 1. boot.cfg に記述されるコマンド
コマンド 説明
title=STRING ブート ローダーのタイトルを STRING に設定します。
prefix=STRING (オプション)kernel= コマンドおよび modules= コマンド内の「/」または http:// で始まらないすべての FILEPATH の前に DIRPATH/ を追加します。
kernel=FILEPATH カーネル パスを FILEPATH に設定します。
kernelopt=STRING カーネル ブート オプションに STRING を追加します。
modules=FILEPATH1 --- FILEPATH2... --- FILEPATHn 読み込むモジュールを 3 つのハイフン (---) で区切ってリストします。

カスタムのインストールまたはアップグレードスクリプトを含む、インストーラ ISO イメージの作成およびESXi インストーラのネットワーク ブートを参照してください。

サポートされている、インストールまたはアップグレード スクリプトの保存場所

スクリプトを使用したインストールおよびアップグレードで ESXi インストーラがインストールまたはアップグレード スクリプト (キックスタート ファイル) にアクセスできる場所は、いくつかあります。

インストールまたはアップグレード スクリプトの保存場所として、次のメディアおよび場所を使用できます。

インストールまたはアップグレード スクリプトのパス

インストールまたはアップグレード スクリプトのパスを指定できます。

ks=http://XXX.XXX.XXX.XXX/kickstart/KS.CFG は、ESXi のインストール スクリプトのパスです。XXX.XXX.XXX.XXX には、スクリプトが置かれたマシンの IP アドレスを指定します。スクリプトを使用した ESXi のインストール を参照してください。

対話型インストールの場合にインストール スクリプトを起動するには、ks= オプションを手動で入力します。インストール スクリプトまたはアップグレード スクリプトを開始するための起動オプションの入力 を参照してください。

インストール スクリプトおよびアップグレード スクリプトのコマンド

デフォルトのインストールまたはアップグレード スクリプトを変更する場合や、独自のスクリプトを作成する場合には、サポートされているコマンドを使用します。インストーラの起動時に起動コマンドで指定するインストール スクリプトでは、サポートされているコマンドを使用します。

ESXi をインストールまたはアップグレードするディスクを判断するには、インストール スクリプトに install または upgrade または installorupgrade のいずれかのコマンドが必要です。install コマンドでは、ほかのパーティションが作成されたあとに使用可能なすべての容量を占有する VMFS データストアを含む、デフォルトのパーティションが作成されます。

vSphere 8.0 では、システムにサポートされているデータ処理ユニット (DPU) がある場合、ホスト上の ESXi とともに、DPU での ESXi のインストール、再インストール、またはアップグレードを必ず検討してください。ただし、DPU での ESXi 更新とアップグレードは対話式またはスクリプト化された方法によってサポートされておらず、使用できるのは vSphere Lifecycle Manager だけです。

注: ESX-OSData パーティションを格納するために SD および USB デバイスを使用することは推奨されません。SD デバイスおよび USB デバイスは、ブート バンク パーティション、 boot-bank 0、および boot-bank 1 の作成にのみ使用できます。また、ESX-OSData パーティションをインストールする最小 32 GB のパーシステント ディスクを提供できます。このようなディスクを定義するには、 install コマンドでパラメータ systemDisk を使用します。

accepteula または vmaccepteula(必須)

ESXi の使用許諾契約書に同意します。

clearpart(任意)

ディスク上の既存のパーティションをすべてクリアします。install コマンドを指定する必要があります。既存のスクリプトの clearpart コマンドを編集するときには注意してください。

--drives=
指定したドライブ上のパーティションを削除します。
--alldrives
--drives= の要件を無視し、すべてのドライブのパーティションの削除を可能にします。
--ignoredrives=
指定するドライブ以外のすべてのドライブのパーティションを削除します。 --drives= フラグまたは --alldrives フラグを指定していない場合に必要です。
--overwritevmfs
指定したドライブ上の VMFS パーティションの上書きを可能にします。デフォルトでは、VMFS パーティションの上書きは許可されません。
--firstdisk=
disk-type1
[disk-type2,...]
注: システムに DPU がある場合、PCI スロットも指定します。
最初に検出された、対象となるディスクをパーティショニングします。デフォルトでは、対象となるディスクは次の順序で設定されます。
  1. ローカルに接続されたストレージ (local
  2. ネットワーク ストレージ (remote

引数に添付されたコンマ区切りのリストを使用して、ディスクの順序を変更できます。フィルタ リストを指定すると、デフォルト設定が上書きされます。フィルタ(ESXi がインストールされる最初のディスクのesx、モデルおよびベンダー情報、VMkernel デバイス ドライバの名前など)を組み合わせて、特定のディスクを指定できます。たとえば、モデル名が ST3120814A のディスク、および通常のローカル ディスクではなく mptsas ドライバを使用するディスクを指定する場合、引数は--firstdisk=ST3120814A,mptsas,localになります。localesxESXi イメージを含むローカル ストレージに対して、remoteesxESXi イメージを含むリモート ストレージに対して使用できます。

dryrun(任意)

インストール スクリプトを解析し、確認します。インストールは実行されません。

インストール

これが新規インストールであることを指定します。ESXi をインストールまたはアップグレードするディスクを判断するには、installupgrade、または installorupgrade コマンドが必要です。

--disk= or --drive=
パーティショニングするディスクを指定します。コマンド --disk=diskname では、 diskname に、 ESXi でのディスク名またはディスク ファイルシステムのフル パスを指定できます。例は以下のとおりです。
  • ディスク名︰--disk=naa.6d09466044143600247aee55ca2a6405 または
  • デバイス パス:--disk=/vmfs/devices/disks/mpx.vmhba1:C0:T0:L0

使用できるディスク名形式については、ディスク デバイス名を参照してください。

--firstdisk=
disk-type1,
[ disk-type2,...]
注: システムに DPU がある場合、PCI スロットも指定します。 install --firstdisk --overwritevmfs --dpuPciSlots=<PCIeSlotID>
最初に検出された、対象となるディスクをパーティショニングします。デフォルトでは、対象となるディスクは次の順序で設定されます。
  1. ローカルに接続されたストレージ (local
  2. ネットワーク ストレージ (remote

引数に添付されたコンマ区切りのリストを使用して、ディスクの順序を変更できます。フィルタ リストを指定すると、デフォルト設定が上書きされます。ESX がインストールされた最初のディスクを指定するesx、モデルおよびベンダー情報、VMkernel デバイス ドライバの名前など、フィルタを組み合わせて特定のディスクを指定することができます。たとえば、モデル名が ST3120814A のディスク、および通常のローカル ディスクではなく mptsas ドライバを使用するディスクを指定する場合、引数は--firstdisk=ST3120814A,mptsas,localになります。localesxESXi イメージを含むローカル ストレージに対して、remoteesxESXi イメージを含むリモート ストレージに対して使用できます。

--ignoressd
パーティショニングの対象からソリッド ステート ディスクを除外します。このオプションは、 install コマンドおよび --firstdisk オプションとともに使用できます。このオプションは --firstdiskオプションよりも優先されます。また、 upgrade コマンドおよび installorupgrade コマンドと、 --drive オプションまたは --disk オプションと同時に使用しても無効になります。自動パーティション化の際に SSD のフォーマットを避けるための詳細については、『 vSphere のストレージ』ドキュメントを参照してください。
--overwritevsan
vSAN ディスク グループ内のディスク(SSD または HDD(磁気))に ESXi をインストールする場合は、 --overwritevsan オプションを使用する必要があります。選択したディスクに vSAN パーティションがない状態でこのオプションを使用した場合、インストールは失敗します。 vSAN ディスク グループ内のディスクに ESXi をインストールする場合、結果は選択したディスクによって異なります。
  • SSD を選択した場合は、同じディスク グループ内の SSD および基盤となるすべての HDD がワイプされます。
  • HDD を選択した場合は、ディスク グループのサイズが 2 より大きくなり、選択した HDD のみワイプされます。
  • HDD ディスクを選択した場合は、ディスク グループのサイズが 2 以下になり、SSD および選択した HDD がワイプされます。

vSAN ディスク グループの管理の詳細については、『vSphere のストレージ』ドキュメントを参照してください。

--overwritevmfs
インストール前に、ディスク上の既存の VMFS データストアを上書きするために必要です。
--preservevmfs
インストール時に、ディスク上の既存の VMFS データストアを保持します。
--novmfsondisk
このディスク上に VMFS パーティションが作成されないようにします。ディスク上に VMFS パーティションがある場合は、 --overwritevmfsと共に使用する必要があります。
--systemdisk
USB デバイスまたは SD デバイスを使用すると、 systemDisk では ESX-OSData パーティションをインストールするローカル パーシステント ディスクが指定されます。たとえば、 install --firstdisk = usb --systemDisk=<diskID> です。その結果、ブート バンク パーティションは USB デバイスに配置され、OSData パーティションは systemDisk パラメータで指定されたディスクに配置されます。
--repartitionsystemdisk
USB デバイスまたは SD デバイスを使用しており、 systemDisk パラメータで指定するローカル ディスクが空でない、またはデータストアが含まれている場合、 repartitionSystemDisk を使用して、パーティション ディスクが使用前に再パーティショニングされていることを確認できます。
注: ローカル パーシステント ディスクが使用できない、またはディスク サイズが 32 GB 未満の場合は警告メッセージが表示されますが、インストールは続行されます。
--forceunsupportedinstall

廃止されている CPU のインストールをブロックします。

installorupgrade

ESXi をインストールまたはアップグレードするディスクを判断するには、installupgrade、または installorupgrade コマンドが必要です。

--disk= or --drive=
パーティショニングするディスクを指定します。コマンド --disk=diskname では、 diskname に、 ESXi でのディスク名またはディスク ファイルシステムのフル パスを指定できます。例は以下のとおりです。
  • ディスク名︰--disk=naa.6d09466044143600247aee55ca2a6405 または
  • デバイス パス:--disk=/vmfs/devices/disks/mpx.vmhba1:C0:T0:L0

使用できるディスク名形式については、ディスク デバイス名を参照してください。

--firstdisk=
disk-type1,
[ disk-type2,...]
注: システムに DPU がある場合、PCI スロットも指定します。 installorupgrade --firstdisk --overwritevmfs --dpuPciSlots=<PCIeSlotID>
最初に検出された、対象となるディスクをパーティショニングします。デフォルトでは、対象となるディスクは次の順序で設定されます。
  1. ローカルに接続されたストレージ (local
  2. ネットワーク ストレージ (remote

引数に添付されたコンマ区切りのリストを使用して、ディスクの順序を変更できます。フィルタ リストを指定すると、デフォルト設定が上書きされます。ESX がインストールされた最初のディスクを指定するesx、モデルおよびベンダー情報、VMkernel デバイス ドライバの名前など、フィルタを組み合わせて特定のディスクを指定することができます。たとえば、モデル名が ST3120814A のディスク、および通常のローカル ディスクではなく mptsas ドライバを使用するディスクを指定する場合、引数は--firstdisk=ST3120814A,mptsas,localになります。localesxESXi イメージを含むローカル ストレージに対して、remoteesxESXi イメージを含むリモート ストレージに対して使用できます。

--overwritevsan
vSAN ディスク グループ内のディスク(SSD または HDD(磁気))に ESXi をインストールする場合は、 --overwritevsan オプションを使用する必要があります。選択したディスクに vSAN パーティションがない状態でこのオプションを使用した場合、インストールは失敗します。 vSAN ディスク グループ内のディスクに ESXi をインストールする場合、結果は選択したディスクによって異なります。
  • SSD を選択した場合は、同じディスク グループ内の SSD および基盤となるすべての HDD がワイプされます。
  • HDD を選択した場合は、ディスク グループのサイズが 2 より大きくなり、選択した HDD のみワイプされます。
  • HDD ディスクを選択した場合は、ディスク グループのサイズが 2 以下になり、SSD および選択した HDD がワイプされます。

vSAN ディスク グループの管理の詳細については、『vSphere のストレージ』ドキュメントを参照してください。

--overwritevmfs

ディスク上に VMFS パーティションが存在するが、ESX または ESXi のインストールは存在しない場合に、ESXi をインストールします。このオプションを指定しないと、ディスク上に VMFS パーティションがあっても、ESX または ESXi がない場合は、インストーラの実行に失敗します。

keyboard(任意)

システムのキーボード タイプを設定します。

keyboardType
選択したキーボード タイプのキーボード マップを指定します。 keyboardType は次のいずれかのタイプである必要があります。
  • ベルギー語
  • ポルトガル語 (ブラジル)
  • クロアチア語
  • チェコスロバキア語
  • デンマーク語
  • エストニア語
  • フィンランド語
  • フランス語
  • ドイツ語
  • ギリシャ語
  • アイスランド語
  • イタリア語
  • 日本語
  • ラテン アメリカ言語
  • ノルウェー語
  • ポーランド語
  • ポルトガル語
  • ロシア語
  • スロベニア語
  • スペイン語
  • スウェーデン語
  • フランス語 (スイス)
  • ドイツ語 (スイス)
  • トルコ語
  • ウクライナ語
  • 英語 (英国)
  • 米国デフォルト
  • 米国 Dvorak

serialnum または vmserialnum(任意)

このコマンドは ESXi バージョン 5.1 以降でサポートされています。ライセンスを構成します。指定しなかった場合、ESXi は評価モードでインストールされます。

--esx=<license-key>

使用する vSphere のライセンス キーを指定します。形式は 5 文字のグループを連結したものです (XXXXX-XXXXX-XXXXX-XXXXX-XXXXX)。

network(任意)

システムのネットワーク アドレスを指定します。

--bootproto=[dhcp|static]

ネットワーク設定を DHCP から取得するか手動で設定するかを指定します。

--device=
ネットワーク カードの MAC アドレスを指定するか、 vmnicNN 形式で vmnic0 のようにデバイス名を指定します。このオプションは、仮想スイッチのアップリンク デバイスを参照します。
--ip=
インストールするマシンの IP アドレスを xxx.xxx.xxx.xxx 形式で設定します。 --bootproto=staticオプションを指定する場合に必要です。それ以外の場合は無視されます。
--gateway=
デフォルトのゲートウェイを IP アドレスで、 xxx.xxx.xxx.xxx 形式で指定します。 --bootproto=staticオプションと同時に使用します。
--nameserver=
プライマリ ネーム サーバを IP アドレスとして指定します。 --bootproto=static オプションと同時に使用します。DNS を使用しない場合はこのオプションは省略します。

--nameserver オプションでは、2 つの IP アドレスを指定することもできます。例: --nameserver="10.126.87.104[,10.126.87.120]"

--netmask=
インストールしたシステムのサブネット マスクを 255.xxx.xxx.xxx 形式で指定します。 --bootproto=static オプションと同時に使用します。
--hostname=
インストールしたシステムのホスト名を指定します。
--vlanid= vlanid
システムの VLAN を指定します。 --bootproto=dhcpオプションまたは --bootproto=static オプションと同時に使用します。1 ~ 4096 の整数を指定します。
--addvmportgroup=(0|1)
仮想マシンで使用される仮想マシン ネットワークのポート グループを追加するかどうかを指定します。デフォルト値は 1 です。

paranoid(任意)

警告メッセージでインストールが中断されます。このコマンドを省略した場合、警告メッセージが記録されます。

part または partition(任意)

追加の VMFS データストアをシステムに作成します。作成できるデータストアは、各ディスクにつき 1 つだけです。install コマンドと同じディスクでは使用できません。ディスクごとに 1 つのパーティションしか指定できず、指定するのは VMFS パーティションでなければなりません。

datastore name
パーティションのマウント先を指定します。
--ondisk= or --ondrive=
パーティションを作成するディスクまたはドライブを指定します。
--firstdisk=
disk-type1,
[ disk-type2,...]
注: システムに DPU がある場合、PCI スロットも指定します。
最初に検出された、対象となるディスクをパーティショニングします。デフォルトでは、対象となるディスクは次の順序で設定されます。
  1. ローカルに接続されたストレージ (local
  2. ネットワーク ストレージ (remote

引数に添付されたコンマ区切りのリストを使用して、ディスクの順序を変更できます。フィルタ リストを指定すると、デフォルト設定が上書きされます。ESX がインストールされた最初のディスクを指定するesx、モデルおよびベンダー情報、VMkernel デバイス ドライバの名前など、フィルタを組み合わせて特定のディスクを指定することができます。たとえば、モデル名が ST3120814A のディスク、および通常のローカル ディスクではなく mptsas ドライバを使用するディスクを指定する場合、引数は--firstdisk=ST3120814A,mptsas,localになります。localesxESXi イメージを含むローカル ストレージに対して、remoteesxESXi イメージを含むリモート ストレージに対して使用できます。

reboot(任意)

スクリプトを使用したインストールが完了したあと、マシンを再起動します。

<--noeject>
CD は、インストール後に取り外されません。

rootpw(必須)

システムの root パスワードを設定します。

--iscrypted
パスワードが暗号化されていることを示します。
password
パスワード値を指定します。

アップグレード

ESXi をインストールまたはアップグレードするディスクを判断するには、installupgrade、または installorupgrade コマンドが必要です。

--disk= or --drive=
パーティショニングするディスクを指定します。コマンド --disk=diskname では、 diskname に、 ESXi でのディスク名またはディスク ファイルシステムのフル パスを指定できます。例は以下のとおりです。
  • ディスク名︰--disk=naa.6d09466044143600247aee55ca2a6405 または
  • デバイス パス:--disk=/vmfs/devices/disks/mpx.vmhba1:C0:T0:L0

使用できるディスク名形式については、ディスク デバイス名を参照してください。

--firstdisk=
disk-type1,
[ disk-type2,...]
最初に検出された、対象となるディスクをパーティショニングします。デフォルトでは、対象となるディスクは次の順序で設定されます。
  1. ローカルに接続されたストレージ (local
  2. ネットワーク ストレージ (remote

引数に添付されたコンマ区切りのリストを使用して、ディスクの順序を変更できます。フィルタ リストを指定すると、デフォルト設定が上書きされます。ESX がインストールされた最初のディスクを指定するesx、モデルおよびベンダー情報、VMkernel デバイス ドライバの名前など、フィルタを組み合わせて特定のディスクを指定することができます。たとえば、モデル名が ST3120814A のディスク、および通常のローカル ディスクではなく mptsas ドライバを使用するディスクを指定する場合、引数は--firstdisk=ST3120814A,mptsas,localになります。localesxESXi イメージを含むローカル ストレージに対して、remoteesxESXi イメージを含むリモート ストレージに対して使用できます。

%include または include(任意)

解析する別のインストール スクリプトを指定します。このコマンドはマルチライン コマンドと同様に処理されますが、1 つの引数だけを使用します。

filename
例: %include part.cfg

%pre(任意)

キックスタート構成が評価される前に実行するスクリプトを指定します。たとえば、含めるキックスタート ファイル用にファイルを生成する際に使用できます。

--interpreter
=[python|busybox]
使用するインタプリタを指定します。デフォルトは busybox です。

%post(任意)

パッケージのインストールが完了したあとに、指定したスクリプトを実行します。複数の %post セクションを指定した場合は、インストール スクリプト内に出現する順序で実行されます。

--interpreter
=[python|busybox]
使用するインタプリタを指定します。デフォルトは busybox です。
--timeout=secs
スクリプト実行時のタイムアウトを指定します。タイムアウトになったときにスクリプトが終了していなかった場合、スクリプトは強制的に停止されます。
--ignorefailure
=[true|false]
true を指定した場合、 %post スクリプトがエラーで停止しても、インストールは正常に終了したと見なされます。

%firstboot

最初の起動中にのみ実行する init スクリプトを作成します。このスクリプトは、次回以降の起動では無効になります。複数の %firstboot セクションを指定した場合は、キックスタート ファイル内に出現する順序で実行されます。

注: %firstboot スクリプトのセマンティックの確認は、システムが最初に起動するまで実行できません。 %firstboot スクリプトに、インストールが完了したあとでなければ分からない、深刻なエラーが含まれている場合があります。
重要: ESXi ホスト上でセキュア ブートが有効になっていると、 %firstboot スクリプトは実行されません。
--interpreter
=[python|busybox]
使用するインタプリタを指定します。デフォルトは busybox です。
注: %firstboot スクリプトのセマンティックの確認は、システムが最初に起動するまで実行できません。スクリプトにエラーが含まれていても、インストールが完了するまで検出されません。

ディスク デバイス名

インストール スクリプトのコマンド installupgrade、および installorupgrade では、ディスク デバイス名を指定する必要があります。

表 2. ディスク デバイス名
フォーマット 説明
NAA naa.6d09466044143600247aee55ca2a6405 SCSI INQUIRY 識別子
EUI eui.3966623838646463 SCSI INQUIRY 識別子
T10 t10.SanDisk00Cruzer_Blade000000004C530001171118101244 SCSI INQUIRY 識別子
VML vml.00025261 レガシー VMkernel 識別子
MPX mpx.vmhba0:C0:T0:L0 パスベースの識別子

ストレージ デバイス名の詳細については、『vSphere Storage』ドキュメントの「ストレージ デバイスの名前と識別子」を参照してください。