web-dev-qa-db-ja.com

Debianストレッチ/ Debian 9でLinuxヘッダーを更新できませんでした

以下のコマンドを実行した後、エラーが発生しました:

# apt-get install linux-headers-$(uname -r)
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package linux-headers-4.9.0-3-AMD64
E: Couldn't find any package by glob 'linux-headers-4.9.0-3-AMD64'
E: Couldn't find any package by regex 'linux-headers-4.9.0-3-AMD64'

トラブルシューティングするには、以下を確認しました:

# apt-cache search linux-headers
aufs-dkms - DKMS files to build and install aufs
linux-libc-dev-arm64-cross - Linux Kernel Headers for development (for cross-compiling)
linux-libc-dev-armel-cross - Linux Kernel Headers for development (for cross-compiling)
linux-libc-dev-armhf-cross - Linux Kernel Headers for development (for cross-compiling)
linux-libc-dev-mips-cross - Linux Kernel Headers for development (for cross-compiling)
linux-libc-dev-mips64el-cross - Linux Kernel Headers for development (for cross-compiling)
linux-libc-dev-mipsel-cross - Linux Kernel Headers for development (for cross-compiling)
linux-libc-dev-ppc64el-cross - Linux Kernel Headers for development (for cross-compiling)
linux-libc-dev-s390x-cross - Linux Kernel Headers for development (for cross-compiling)
linux-libc-dev-alpha-cross - Linux Kernel Headers for development (for cross-compiling)
linux-libc-dev-hppa-cross - Linux Kernel Headers for development (for cross-compiling)
linux-libc-dev-m68k-cross - Linux Kernel Headers for development (for cross-compiling)
linux-libc-dev-mips64-cross - Linux Kernel Headers for development (for cross-compiling)
linux-libc-dev-powerpc-cross - Linux Kernel Headers for development (for cross-compiling)
linux-libc-dev-powerpcspe-cross - Linux Kernel Headers for development (for cross-compiling)
linux-libc-dev-ppc64-cross - Linux Kernel Headers for development (for cross-compiling)
linux-libc-dev-sh4-cross - Linux Kernel Headers for development (for cross-compiling)
linux-libc-dev-sparc64-cross - Linux Kernel Headers for development (for cross-compiling)
linux-headers-4.9.0-11-all - All header files for Linux 4.9 (meta-package)
linux-headers-4.9.0-11-all-AMD64 - All header files for Linux 4.9 (meta-package)
linux-headers-4.9.0-11-AMD64 - Header files for Linux 4.9.0-11-AMD64
linux-headers-4.9.0-11-common - Common header files for Linux 4.9.0-11
linux-headers-4.9.0-11-common-rt - Common header files for Linux 4.9.0-11-rt
linux-headers-4.9.0-11-rt-AMD64 - Header files for Linux 4.9.0-11-rt-AMD64
linux-headers-AMD64 - Header files for Linux AMD64 configuration (meta-package)
linux-headers-rt-AMD64 - Header files for Linux rt-AMD64 configuration (meta-package)```


and 

# apt-cache search linux-image
linux-headers-4.9.0-11-AMD64 - Header files for Linux 4.9.0-11-AMD64
linux-headers-4.9.0-11-rt-AMD64 - Header files for Linux 4.9.0-11-rt-AMD64
linux-image-4.9.0-11-AMD64 - Linux 4.9 for 64-bit PCs
linux-image-4.9.0-11-AMD64-dbg - Debug symbols for linux-image-4.9.0-11-AMD64
linux-image-4.9.0-11-rt-AMD64 - Linux 4.9 for 64-bit PCs, PREEMPT_RT
linux-image-4.9.0-11-rt-AMD64-dbg - Debug symbols for linux-image-4.9.0-11-rt-AMD64
linux-image-AMD64 - Linux for 64-bit PCs (meta-package)
linux-image-AMD64-dbg - Debugging symbols for Linux AMD64 configuration (meta-package)
linux-image-rt-AMD64 - Linux for 64-bit PCs (meta-package), PREEMPT_RT
linux-image-rt-AMD64-dbg - Debugging symbols for Linux rt-AMD64 configuration (meta-package)
linux-image-4.9.0-3-AMD64 - Linux 4.9 for 64-bit PCs

apt-cache search linux-imageを実行した後、linux-image-4.9.0-3-AMD64aptの結果で必要なカーネルバージョンを取得します-cache search linux-headersコマンドも。

Sources.listを変更して試してみることを提案する人はほとんどいません。しかし、私はこれに慣れていないので、sources.listの適切なリンクを検索する方法と、私の問題を解決するのに最適なものはわかりません。

私はグーグルで検索しましたが、解決策は見つかりませんでした。ソリューションを提供できるリンクまたはソリューションは、非常に役立ちます。

3
Abhishek Verma

For

apt-get install linux-headers-$(uname -r)

動作するには、あなたはrunningカーネルである必要があります。カーネルはまだディストリビューションリポジトリから入手できます。ほとんどの場合、これは基本的に、ディストリビューションでサポートされている最新のカーネルを実行している必要があることを意味します。

Debianでは、最も簡単なオプションは

apt-get update
apt-get install linux-image-AMD64 linux-headers-AMD64

(アーキテクチャに合わせて)現在のカーネルと一致するヘッダーを取得し、再起動します。

4
Stephen Kitt

linux-headers-4.9.0-3-AMD64は古くなっており、削除され、より新しいパッケージに置き換えられています linux-headers-4.9.0-11-AMD64 通常のリポジトリからインストールできないのはそのためです。

linux-headers-4.9.0-3-AMD64スナップショットアーカイブリポジトリ から:

ソースリストを編集します。

nano /etc/apt/sources.list.d/snapshot.list

次の行を追加します。

deb http://snapshot.debian.org/archive/debian/20170609T034604Z stretch main
deb http://snapshot.debian.org/archive/debian/20170609T034604Z stretch-updates main
deb http://snapshot.debian.org/archive/debian-security/20170920T221221Z stretch/updates main

次に:

apt -o Acquire::Check-Valid-Until=false update
apt install linux-headers-4.9.0-3-AMD64

10日以上経過したValid-Untilを使用してスイートのスナップショットにアクセスするには、aptがスナップショットエントリを無視しないようにするために、ReleaseファイルのValid-Untilヘッダーを無視する必要があります(「Releaseファイルの期限切れ」)。使用する aptitude -o Acquire::Check-Valid-Until=false updateまたはapt-get -o Acquire::Check-Valid-Until=falseこの目的のために更新します。

2
GAD3R