DRBD RPM パッケージの構築

DRBD構築システムには、DRBD ソースツリーから 直接RPMパッケージを構築する機能が含まれています。 RPMを構築する場合にも、makeによる構築とインストールについては 「構築の前提条件の確認」の条件が実質的に同様に適用されます。 もちろん、加えてRPM構築ツールも必要です。

コンパイル済みヘッダが使用可能な場合に 実行中のカーネルに対して構築を行う場合以外は、 「カーネルソースツリーの準備」も参照してください。

構築システムでは2つの方法でRPMを構築することができます。 最上位のメークファイルで rpmターゲットを呼び出す方法が簡単です。

cd /usr/src/drbd-x.y.z
make rpm

この方法では、定義済みのテンプレートからspecファイルが自動的に生成され、 このspecファイルを使用してバイナリRPMパッケージを構築できます。

もう1つはより柔軟な方法で、 drbd.spec.inファイルを drbd.specにコピーして必要な変更を加え、 RPM構築プロセスを手動で呼び出します。

cd /usr/src/drbd-x.y.z
cp drbd.spec.in drbd.spec
vi drbd.spec rpmbuild -bb drbd.spec

RPM構築プロセスによって、次の2つのバイナリRPMパッケージが作成されます。

  1. DRBDユーザスペースツールを含むパッケージ(drbd-x.y.z-BUILD.ARCH.rpm)

  2. DRBDカーネルモジュールを含む個別のパッケージ(drbd-km-version-x.y.z-BUILD.ARCH.rpm)

make rpmを使用した場合は、 2つのパッケージがDRBDソースツリーのdist/RPMSサブディレクトリに作成されます。 独自のspecファイルを作成してrpmbuildを呼び出した場合は、 システムのRPM構成(または独自の~/.rpmmacros構成)が指定する場所に RPMが作成されます。

これらのパッケージを作成したら、 システムの他のRPMパッケージと同様に インストール、アップグレード、アンインストールを行うことができます。

カーネルをアップグレードした場合は、 新しいカーネルに合わせて新しいdrbd-kmパッケージを生成する必要があります。 一方、drbdパッケージの場合は、 新規バージョンのDRBDにアップグレードしたときにのみ再作成が必要です。 新規カーネルおよび新規バージョンのDRBDにアップグレードした場合は、 両方のパッケージをアップグレードする必要があります。