Skip to end of metadata
Go to start of metadata

症状


通常、システム管理者は、それらのマシンの再起動を避けるのは当たり前のことです。しかし、最新のカーネルバージョンを持っていない場合は、r1soft hcpdriver を構築するためのkernel-devel パッケージをyum から得られないという状況に入り込む可能性があります。

理由


システムの古いカーネルをアップグレードしようとしますが、実行中のカーネル用のkernel-devel パッケージが標準のCentOS リポジトリにありません。

修正方法


リポジトリに保存していないカーネルを使用する場合があります。この際、すべての古いパッケージをhttp://vault.centos.org で参照できます。最初のステップは、実行しているCentOS バージョンを確認することです。以下のコマンドをご覧ください。

[root@centos~]# cat /etc/redhat-release CentOS release 5.6 (Final)

この例のCentOS バージョンは CentOS 5.6 です。お使いのインストールでは、/etc/yum.repos.d/CentOS-Vault.repo に位置するvault リポジトリのエントリがデフォルトで含まれるはずです。

リポジトリのファイルは、以前のバージョンどとに4つのエントリ(base、updates、centosplus、および extras)が含まれています。この例では、簡潔のためにバージョン 5.6 のエントリだけが含まれます。ここの分析の目的は、yum がお使いのバージョンに必要なパッケージをインストールできるように、それぞれのエントリを有効にすることです。そのために、「enable」行を検索し、その値は 0 から 1 に変更します。

enabled=0

enabled=1

変更を実行するには、お好みのエディタを開いて、変更のベースのイネーブルラインを作りましょう、リポジトリのbase およびupdates エントリの「enable」行を更新します。これを完了したら、結果は以下のようになります。

[root@centos~]# nano /etc/yum.repos.d/CentOS-Vault.repo

[C5.6-base] name=CentOS-5.6 - Base baseurl=http://vault.centos.org/5.6/os/$basearch/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5 enabled=1 [C5.6-updates] name=CentOS-5.6 - Updates baseurl=http://vault.centos.org/5.6/updates/$basearch/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5 enabled=1

 場合によっては、お使いのバージョン用のエントリは、CentOS-Vault.repo ファイルに存在しないことがありますが、それにも関わらず必要なエントリを追加するためにファイルを編集できます。このプロセスは、以下のテンプレートからのバージョン番号を含めて、新しいエントリをrepoファイルに追加することを含みます。

[C(Your Version Number)-base] name=CentOS-(Your Version Number) - Base baseurl=http://vault.centos.org/(Your Version Number)/os/$basearch/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5 enabled=1 [C(Your Version Number-updates] name=CentOS-(Your Version Number) - Updates baseurl=http://vault.centos.org/(Your Version Number)/updates/$basearch/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5 enabled=1

一旦CentOS-Vault.repo に変更を加えたら、シェル拡張を使ってカーネルヘッダのインストールを試すことができます。

[root@centos~]# yum install kernel-devel-$(uname -r) -y

PAE またはXen カーネルを実行している場合は、kernel-PAE-devel /kernel-xen-devel と呼ばれる別のdevel パッケージがあります。ここにいくつかコマンドの例を示します。

Xen の場合:

[root@centos ~]# UNAME=$(awk '{gsub(/xen/,"",$3);print $3}' /proc/version) [root@centos ~]# yum install kernel-xen-devel-${UNAME} -y

PAE の場合:

[root@centos ~]# UNAME=$(awk '{gsub(/PAE/,"",$3);print $3}' /proc/version) [root@centos ~]# yum install kernel-PAE-devel-${UNAME} -y

通常、Debian および Ubuntu のユーザーは、カーネルヘッダがベースインストールに含まれているため、上記の問題に直面していません。

関連事項


Page: レプリケーションドライバーを利用できない場合のLinux エージェントエラー (ナレッジベース) Labels: replication, driver, kernel, kernel-devel, kernel-xen-devel, kernel-pae-devel, header
Page: CentOS 用の古いkernel-devel パッケージの検索 (ナレッジベース) Labels: kernel
Page: Virtuozzo カーネルヘッダのインストール (ナレッジベース) Labels: kernel
Labels:
kernel kernel Delete
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.