DRBD Debianパッケージの構築

DRBD構築システムには、DRBDソースツリーから直接Debianパッケージを構築する機能が含まれています。Debianパッケージを構築する場合にも、makeによる構築とインストールについては、「構築の前提条件の確認」の条件が実質的に同様に適用されます。加えて、Debianパッケージツールを含む dpkg-devパッケージも必要です。さらに、root以外のユーザとしてDRBDを構築する場合には、 fakerootも必要です(この方法を強く推奨)。

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

DRBDソースツリーには、Debianパッケージ作成に必要なファイルを含む debianサブディレクトリがあります。ただし、このサブディレクトリはDRBDのソースtarファイルには含まれていません。代わりに、特定のDRBDリリースに関連付けられたタグの Gitチェックアウトを作成する必要があります。

このようなチェックアウトを作成したら、次のコマンドを実行してDRBD Debianパッケージを構築します。

dpkg-buildpackage -rfakeroot -b -uc

[注記]注記

この例では、drbd-buildpackageを呼び出して、バイナリのみの構築を有効にし(-b)、ユーザをroot以外とし(-rfakeroot)、さらに変更ファイルの暗号化シグネチャを無効にします(-uc)。もちろん、他の構築オプションを指定することもできます。詳細は、dpkg-buildpackageの manページを参照してください。

この構築プロセスにより、次の2つのDebianパッケージが作成されます。

  1. DRBDユーザスペースツールを含むパッケージ(drbd8-utils_x.y.z-BUILD_ARCH.deb)

  2. module-assistant に対応したモジュールソースパッケージ(drbd8-module-source_x.y.z-BUILD_all.deb)

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

Debianのmodule-assistant機能を使用すれば、インストールしたモジュールソースパッケージから実際のカーネルモジュールを簡単に構築してインストールできます。

module-assistant auto-install drbd8

上記のコマンドの短縮形も使用できます。

m-a a-i drbd8

カーネルをアップグレードした場合は、新しいカーネルに合わせてカーネルモジュールを再構築する必要があります (上述の module-assistant を使用)。一方、drbd8-utilsdrbd8-module-source パッケージの場合は、新規バージョンのDRBDにアップグレードしたときにのみ再作成が必要です。新規カーネルおよび新規バージョンの DRBDにアップグレードした場合は、両方のパッケージをアップグレードする必要があります。