KIWI を使用してSuSE ( SLES 11 SP1 ) アプライアンスを構築しており、無人インストールを実行する方法を探していました。さらに、ハードウェア (ディスクの数、その容量など) に基づいてパーティショニングを実行する必要があります。
生成された ISO の xml ファイル (autoyast プロファイルと呼ばれる) にインストール手順を入れることができることを示唆する SuSE の AutoYaST 機能に出会いました。また、パーティショニング スクリプト (おそらくfdiskコマンドを使用) を置く場所も必要でした。http://doc.opensuse.org/projects/YaST/openSUSE10.3/autoinstall/createprofile.scripts.htmlにあるSuSE のドキュメントには、 SUSE Linux 10.0 以降のすべてのバージョンでは、fdisk を使用してパーティション分割を変更できることが 明確に記載されています。事前スクリプト
次の場合に実行できることを読みました。
- xml ファイルautoinst.xmlは、CD のルートに置かれます。
- スクリプト (この場合は事前スクリプトと呼ばれます) は、xml ファイル内に埋め込まれます。
- CD からの起動中に、起動パラメーターautoyast=file:///autoinst.xmlが指定されます。
私の autoinst.xml ファイルは次のようになります。
<?xml version="1.0"?>
<!DOCTYPE profile>
<profile xmlns="http://www.suse.com/1.0/yast2ns" xmlns:config="http://www.suse.com/1.0/configns">
<scripts>
<pre-scripts config:type="list">
<script>
<filename>pre.sh</filename>
<interpreter>shell</interpreter>
<feedback config:type="boolean">true</feedback>
<source><![CDATA[
#!/bin/sh
touch /root/pre-output
echo "Running pre-install script" > /root/pre-output
fdisk -l >>/root/pre-output
]]>
</source>
</script>
</pre-scripts>
</scripts>
</profile>
ご覧のとおり、このスクリプトは、簡単に検証できる出力を生成することを目的としています。しかし、これは起こっていません。パッケージautoyast2およびautoyast2-installationをアプライアンスに含めました。指定したブート パラメータで起動すると、「YaST モジュール 'inst_netprobe' の呼び出しに失敗しました」というエラー画面が表示 されます。彼らは、モジュールinst_netprobeの呼び出しが失敗したことと同じことを言っているだけです。
[次へ] を選択すると、インストールは正常に進行し、ログイン プロンプトで終了します。ログイン後、プレスクリプトが生成するはずの変更が表示されず、呼び出されなかったことを示唆しています。
何かが足りない場合、誰かが指摘できますか?
- AutoYaST に関連するパッケージがありませんか?
- xml ファイルを配置する場所 ( ISO の "/" ) は正しいですか?
- xml ファイルは正しくフォーマットされていますか、それとも何か不足していますか? 上記のドキュメント リンクの最後にある例からこのサンプルを取得しました。
- 呼び出し方は正しいですか?( autoyast=file:///autoinst.xmlを与える) ?
また、誰かが SLES 11 で AutoYaST を使用して自動インストールを行った場合は、いくつかの指針を教えてください。