プランスクリプトの例
このプランスクリプトの例では、いくつかのサンプルのguestfish
コマンドとその構文について説明します。
# Example Image Streamer Plan Script
プランスクリプト内で#
で始まる行はコメントとみなされます。
!echo "File Systems in Golden Image:”
このコマンドは、イメージストリーマーアプライアンスに対してbash
コマンドを実行します。この例では、echo
コマンドの出力が展開ログにキャプチャーされます。展開ログを使用して、プランスクリプトの実行を監視したり、エラーをデバッグしたりできます。
list-filesystems
これは、OSボリューム内のファイルシステムの一覧を表示するguestfish
コマンドです。
list-partitions
これは、OSボリューム内のパーティションの一覧を表示するguestfish
コマンドです。
!echo "Mounting File Systems:"
mount /dev/sda1 /
このコマンドは、パーティション/dev/sda1
を疑似ルートディレクトリ/
にマウントします。このコマンドの実行後、/
を使用してこのパーティションの内容にアクセスできます。例:/tmp/example.sh
!echo "Personalize message.txt content:"
upload -<<EOF /tmp/example.sh
#!/bin/bash
echo “OS name and version”
uname -r
echo “Example attributes and values:”
echo “@ExampleString:Hello World!@”
echo “@ExampleNumber:50@”
EOF
このコマンドシーケンスは、heredoc
構文を使用してbash
スクリプトをオペレーティングシステムに挿入する方法を示しています。この例を実行すると、EOF
マーカー間のプランスクリプトの内容がオペレーティングシステムイメージ内の/tmp/example.sh
ファイルに配置されます。このコマンドシーケンスは、カスタム属性ExampleString
およびExampleNumber
の使用法とデフォルト値も示しています。
umount
このコマンドは、パーソナライゼーションが完了した後にパーティションをアンマウントします。
システム属性を使用するプランスクリプトの例
次の行は、プランスクリプト内でシステム属性を使用してターゲットOSボリュームの詳細にアクセスする方法を示しています。
echo "Target volume device name to mount :@_Target.dev@"
echo "Target name/iqn:@_Target.name@"
echo "Target IP address:@_Target.ip@"
echo "Target port:@_Target.port@ , Target LUN:@_Target.lun@"
次の行は、プランスクリプト内でシステム属性を使用して展開接続1の詳細を表示する方法を示しています。
echo "Initiator-1 MAC:@_Initiator1.mac@"
echo "Initiator-1 name :@_Initiator1.name@"
echo "Initiator-1 IP address:@_Initiator1.ip@ , Initiator-1 netmask:@_Initiator1.netmask@"
echo "Initiator-1 gateway:@_Initiator1.gateway@"
次の行は、プランスクリプト内でシステム属性を使用して展開接続2の詳細を表示する方法を示しています。
echo "Initiator-2 MAC:@_Initiator2.mac@"
echo "Initiator-2 name :@_Initiator2.name@"
echo "Initiator-2 IP address:@_Initiator2.ip@ , Initiator-2 netmask:@_Initiator2.netmask@"
echo "Initiator-2 gateway:@_Initiator2.gateway@"