Linuxパッケージ
必要なモジュールを Linuxカーネルに追加するには、セットアッププログラムに次の Linuxパッケージが必要です。
- カーネルのヘッダーまたはソースを持つパッケージ。パッケージのバージョンは、カーネルのバージョンに一致している必要があります。
- GNU コンパイラ コレクション(GCC)コンパイラ システム(GCCはカーネルがコンパイルされたバージョンである必要があります)
- makeツール
- perlインタプリタ。
- 4.15以降で、CONFIG_UNWINDER_ORC=yで設定される、カーネルのビルドのための
libelf-dev
、libelf-devel
、またはelfutils-libelf-devel
ライブラリ。Fedora 28など一部のディストリビューションでは、カーネルのヘッダーとは別にインストールする必要があります。
これらのパッケージの名前は、Linux ディストリビューションによって異なります。
Red Hat Enterprise Linux、CentOS、および Fedora では、通常、パッケージはセットアッププログラムによってインストールされます。その他のディストリビューションで、パッケージがインストールされていない場合や、必要なバージョンがインストールされていない場合は、パッケージをインストールする必要があります。
必要なパッケージが既にインストールされていることを確認
パッケージが既にインストールされていることを確認するには、次の手順を実施します。
-
カーネルのバージョンと必要な GCCバージョンを確認するには、次のコマンドを実行します。
cat /proc/version
このコマンドにより、次のような行が返されます。
Linux version 2.6.35.6
およびgcc version 4.5.1
-
makeツールと GCC コンパイラがインストールされているかどうかを確認するには、次のコマンドを実行します。
make -v
gcc -vgccの場合、コマンドによって返されるバージョンが手順1の
gcc version
と同じであることを確認します。makeについては、コマンドが実行されることを確認します。 -
カーネルモジュールを作成するパッケージの適切なバージョンがインストールされているかどうかを確認します。
-
Red Hat Enterprise Linux、CentOS、および Fedora で次のコマンドを実行します。
yum list installed | grep kernel-devel
-
Ubuntu の場合、次のコマンドを実行します。
dpkg --get-selections | grep linux-headers
dpkg --get-selections | grep linux-image
どちらの場合でも、パッケージのバージョンが手順1の
Linux version
と同じであることを確認します。 -
-
次のコマンドを実行して、perl インタプリタがインストールされているかどうか確認します。
perl --version
perl のバージョンに関する情報が表示された場合、インタプリタはインストールされています。
-
Red Hat Enterprise Linux、CentOS、およびFedoraでは、次のコマンドを実行して
elfutils-libelf-devel
がインストールされているかどうかを確認します。yum list installed | grep elfutils-libelf-devel
ライブラリのバージョンに関する情報が表示される場合、ライブラリはインストールされています。
レポジトリからのパッケージのインストール
次の表では、さまざまな Linux ディストリビューションで必要なパッケージをインストールする方法について説明します。
Linuxディストリビューション | パッケージ名 | インストール方法 |
---|---|---|
Red Hat Enterprise Linux |
kernel-devel |
セットアップ プログラムは、Red Hatのサブスクリプションを使用して、自動的にパッケージをダウンロードしてインストールします。 |
perl |
次のコマンドを実行します。 yum install perl |
|
CentOS Fedora |
kernel-devel |
セットアップ プログラムは、自動的にパッケージをダウンロードしてインストールします。 |
perl |
次のコマンドを実行します。 yum install perl |
|
Ubuntu Debian |
linux-headers |
次のコマンドを実行します。 sudo apt-get update |
SUSE Linux OpenSUSE |
kernel-source |
sudo zypper install kernel-source |
パッケージはディストリビューションのレポジトリからダウンロードされ、インストールされます。
他の Linux ディストリビューションについては、必要なパッケージの正確な名前およびインストール方法に関してディストリビューションのドキュメントを参照してください。
手動のパッケージインストール
次の場合には、パッケージを手動でインストールする必要があります。
- コンピュータに Red Hatの有効なサブスクリプションまたはインターネット接続がない場合。
- プログラムの設定がカーネルのバージョンに対応するkernel-develまたはgccバージョンを見つけることができない場合。利用できるkernel-develがご使用のカーネルより新しい場合は、カーネルをアップデートするか一致するkernel-develバージョンを手動でインストールする必要があります。
- 必要なパッケージが既にローカル ネットワークにあるため、自動的な検索とダウンロードに時間をかけないようにする場合。
ローカル ネットワークまたは信頼されているサードパーティのウェブ サイトからパッケージを入手して、次のようにインストールします。
-
Red Hat Enterprise Linux、CentOS、または Fedora で、ルートユーザーとして次のコマンドを実行します。
rpm -ivh PACKAGE_FILE1 PACKAGE_FILE2 PACKAGE_FILE3
-
Ubuntu の場合は、次のコマンドを実行します。
sudo dpkg -i PACKAGE_FILE1 PACKAGE_FILE2 PACKAGE_FILE3
例:Fedora 14にパッケージを手動でインストールする
32 ビットコンピュータの Fedora 14 に必要なパッケージをインストールするには、次の手順に従います。
-
カーネルのバージョンと必要な GCC バージョンを確認するには、次のコマンドを実行します。
cat /proc/version
このコマンドの出力には、次の内容が含まれます。
Linux version 2.6.35.6-45.fc14.i686
gcc version 4.5.1 -
このカーネルのバージョンに対応するkernel-develおよびgccパッケージを取得します。
kernel-devel-2.6.35.6-45.fc14.i686.rpm
gcc-4.5.1-4.fc14.i686.rpm -
Fedora 14用のmakeパッケージを取得します。
make-3.82-3.fc14.i686
-
ルートユーザーとして次のコマンドを実行して、パッケージをインストールします。
rpm -ivh kernel-devel-2.6.35.6-45.fc14.i686.rpm
rpm -ivh gcc-4.5.1.fc14.i686.rpm
rpm -ivh make-3.82-3.fc14.i686これらすべてのパッケージは、1つの
rpm
コマンドで指定できます。インストールするこれらのパッケージの一部では、依存性を解決するために、追加パッケージのインストールが必要になることがあります。