独自のファイルを追加して、イメージング配布を変更する必要が生じる場合があります。追加のプログラム、スクリプト、データファイル、更新されたLinuxドライバなどです。
次の方法を使用すると、イメージングリソースファイルを更新できます。
この方法について、この節で説明します。
次の各節では、イメージングリソースファイルを変更する様々な方法について説明します。
実際のイメージング処理(スクリプトなど。通常はドライバモジュールではありません)を開始するときに使用できるように、イメージングブートCDに追加するファイルがある場合は、イメージングCDの/addfilesディレクトリにそのファイルをコピーできます。initrdまたはrootファイルシステムを変更することなく、スクリプトまたはその他のファイルを配布に挿入するには、この方法が簡単です。ただし、これらのファイルは、ブート中およびモジュールロード中の段階では使用できません。
イメージングブートCDには/addfilesという名前のディレクトリがあり、ここにファイルを追加できます。このディレクトリの下位に、正しいディレクトリ名で保存する必要があります。こうすると、イメージング処理中に、このディレクトリ構造内で使用できるようになります。
ファイルの追加方法の例:
通常のイメージング処理の代わりに独自のスクリプトを実行する場合は、myscript.sという名前のスクリプトを作成し、ブートCDに配置します。たとえば、/addfiles/bin/myscript.sとします。
重要:スクリプトファイルには、DOS CRやLFなどの行末文字ではなく、Linuxで必要となる適切なLF行区切りが必要です。つまり、スクリプトの作成にNotepad.exeは使用できません。LinuxまたはUNIXと互換性のあるTextPadなどのテキストエディタを使用する必要があります。
settings.txtファイルに次の行を含めるには、次のように入力します。
export IMGCMD=/bin/myscript.s
イメージングを実行すると、通常のimg autoコマンドを使用する代わりに、/bin/myscript.sを実行します。
イメージングリソースファイルを更新するには、この方法が適しており、Linux環境で実行する必要があります。
以下の手順を実行する前に、変更を予定しているファイル(特に/srv/tftp/boot/initrdファイル)のバックアップコピーを作成したことを確認してください。イメージングCD上のファイルを変更する場合は、winisoなどのプログラム、またはbootcd.isoイメージファイル内のファイルを抽出および置換するためのその他の処理が必要です。
重要:initrdまたはrootファイルシステム内のファイルおよびLinuxドライバを更新または追加する場合は、変更内容を書き留めておいてください。Novellから更新されたリソースファイルを取得する際、それらのファイルには独自の変更内容は含まれていません。Novellからの新しいリソースファイルでカーネルバージョンが変更された場合は、メーカーから新しいバージョンを入手するか、正しいLinuxカーネルバージョンソースを使用してドライバを再コンパイルして、前回追加したドライバを更新する必要があります。
rootファイルシステムで以下の手順を使用する場合は、手順内の“initrd”を“root”に置き換えてください。ただし、Linuxドライバは常に、rootファイルシステムではなく、initrdファイルシステムに保存する必要があります。
rootファイルシステムにファイルを追加するには、セクション 65.4.3, driverupdateファイル方法の使用で説明されているdriverupdateの方法も使用できます。
initrdまたはrootファイルシステムを変更するには、次の操作を行います。
Linuxマシンを使用して、作業ディレクトリを作成し、そのディレクトリに移動します。
initrdをPXEサーバまたはブートCDから新しい作業ディレクトリにコピーするには、次の操作を行います。
initrdをinitrd.gzに名前変更するには、次のように入力します。
cp initrd initrd.gz
initrd.gzファイルを解凍するには、次のように入力します。
gunzip initrd.gz
以降の手順でマウントポイントとして使用する、別の作業ディレクトリを作成するには、次のように入力します。
mkdir work
initrdファイルシステムを/workディレクトリにマウントするには、次のように入力します。
mount -o loop initrd work
ファイルまたは更新されたドライバをマウント済みのinitrdファイルシステムにコピーするには、次のように入力します。
cp /your_path/module.ko work/lib/modules/2.6.5-override-default/initrd
your_pathは、module.koファイルへのパスで、moduleはモジュール名です。
initrdファイルシステムに追加するその他のファイルは、適切なディレクトリにコピーする必要があります。
initrdファイルシステムをアンマウントするには、次のように入力します。
umount work
initrdファイルを圧縮するには、次のように入力します。
gzip -v9c initrd > initrd.gz
initrd.gzのファイル名をinitrdに戻すには、次のように入力します。
cp initrd.gz initrd
ファイルを元の場所にコピーするには、次の操作を行います。
Linuxサーバでのdriverupdateファイル方法の使用については、『Novell ZENworks 7 Linux Management管理ガイド』の「ddriverupdateファイル方法の使用」を参照してください。この方法は、NetWareおよびWindowsプラットフォームでは使用されません。