23.4. キックスタート設定の例

23.4.1. 高度なパーティションの例

以下に、clearpartzerombrpartraidvolgroup、および logvol キックスタートオプションを使用した例を示します。

例23.9 高度なパーティションの例

clearpart --drives=hda,hdc
zerombr
# Raid 1 IDE config
part raid.11 --size 1000 --asprimary --ondrive=hda
part raid.12 --size 1000 --asprimary --ondrive=hda
part raid.13 --size 2000 --asprimary --ondrive=hda
part raid.14 --size 8000 --ondrive=hda
part raid.15 --size 16384 --grow --ondrive=hda
part raid.21 --size 1000 --asprimary --ondrive=hdc
part raid.22 --size 1000 --asprimary --ondrive=hdc
part raid.23 --size 2000 --asprimary --ondrive=hdc
part raid.24 --size 8000 --ondrive=hdc
part raid.25 --size 16384 --grow --ondrive=hdc

# You can add --spares=x
raid / --fstype xfs --device root --level=RAID1 raid.11 raid.21
raid /safe --fstype xfs --device safe --level=RAID1 raid.12 raid.22
raid swap --fstype swap --device swap --level=RAID1 raid.13 raid.23
raid /usr --fstype xfs --device usr --level=RAID1 raid.14 raid.24
raid pv.01 --fstype xfs --device pv.01 --level=RAID1 raid.15 raid.25

# LVM configuration so that we can resize /var and /usr/local later
volgroup sysvg pv.01
logvol /var --vgname=sysvg --size=8000 --name=var
logvol /var/freespace --vgname=sysvg --size=8000 --name=freespacetouse
logvol /usr/local --vgname=sysvg --size=1 --grow --name=usrlocal
この高度な例では、RAID を使用した LVM や、将来的なデータの増加に応じてさまざまなディレクトリーのサイズを変更できる機能が実装されています。
まず、clearpart コマンドを使って hda および hdc のドライブを消去します。zerombr コマンドは、未使用のパーティションテーブルを初期化します。
次に 2 つのドライブにパーティション設定がなされ、RAID 設定の準備をします。各ドライブは 5 つのパーティションに分割され、同一のレイアウトでパーティション設定されます。
次の部分では、これらの物理パーティションのペアを使って RAID1 レベル (ミラーリング) で ソフトウェア RAID デバイスを作成します。最初の 4 つのRAID デバイスは、/ (root)、/safeswap および /usr に使用されます。5 番目の一番大きいパーティションは pv.01 と命名され、以下の部分で LVM 用の物理ボリュームとして使用されます。
最後のコマンドセットは、まずpv.01 物理ボリューム上に sysvg という名前のボリュームグループを作成します。次に、3 つの論理 ボリューム (/var/var/freespace および /usr/local) が作成され、sysvg ボリュームグループに追加されます。/var および /var/freespace ボリュームは 8 GB の決まったサイズで、/usr/local ボリュームは --grow オプションを使って利用可能な残りの領域すべてを満たします。

23.4.2. ユーザー入力の例

以下では、bash を使用してユーザーに入力を要求し、その入力を読み込み変数として保存する例を示します。

例23.10 ユーザー入力の例

exec < /dev/tty6 > /dev/tty6 2> /dev/tty6
chvt 6
IFS=$'\n'
echo -n "Enter input: "
read USERINPUT
echo
echo -n "You entered:" "$USERINPUT"
echo
chvt 1
exec < /dev/tty1 > /dev/tty1 2> /dev/tty1
キックスタートが作動する方法のために、スクリプトはユーザー入力を読み込む前に新規の仮想マシンに切り替える必要があります。これは、exec < /dev/tty6 > /dev/tty6 2> /dev/tty6chvt 6 のコマンドで実行されています。read USERINPUT が enter を押すまで入力を読み取り、変数 USERINPUT で保存します。echo -n "You entered:" "$USERINPUT" コマンドが You entered: とその後に続くユーザー入力を表示します。最後に、chvt 1exec < /dev/tty1 > /dev/tty1 2> /dev/tty1 のコマンドが元の端末に切り替え、キックスタートインストールの続行を可能にします。

23.4.3. Red Hat Enterprise Linux Atomic Host のキックスタートファイルの例

以下は、Red Hat Enterprise Linux Atomic Host のインストール時に参考となるキックスタートファイルの例です。

例23.11 Red Hat Enterprise Linux Atomic Host のキックスタートファイルの例

lang en_US.UTF-8
keyboard us
timezone America/New_York
rootpw --iscrypted password_hash

clearpart --all --initlabel
zerombr
autopart

%include /usr/share/anaconda/interactive-defaults.ks
rootpw コマンドでは password を事前に設定することができ、--iscryped オプションは既に作成済みのパスワードのハッシュを受け取ります。clearpart --all --initlabel コマンドはアタッチされたネットワークストレージを含む、インストーラーが達することが可能な全ディスクを消去します。zerombr を使用すると、Anaconda が確認をプロンプトすること防ぎ、完全な無人インストールが可能になります。autopart コマンドはパーティション設定をデフォルト値に設定します。Red Hat Enterprise Linux Atomic Host ではこれが推奨オプションになります。%include コマンドは、OSTree リポジトリーをポイントするコマンドを含むファイルをポイントし、cloud-init サービスを無効にします。このコマンドは、Red Hat Enterprise Linux Atomic Host では必須です。