Befehl zum Installieren von Linux-Headern schlägt fehl

5

Ich muss meine Linux-Header für eine Nvidia-Treiberinstallation installieren. Dabei erhalte ich jedoch eine Fehlermeldung:

peter@peter-deb:~$ sudo 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-2.6.32-5-amd64
E: Couldn't find any package by regex 'linux-headers-2.6.32-5-amd64'

Wie kann ich das zum Laufen bringen?

Edit: Ich benutze Deb 6.

@Warren Young:

peter@peter-deb:~$ sudo apt-get install -qy linux-headers-$(uname -r)
[sudo] password for peter: 
Reading package lists...
Building dependency tree...
Reading state information...
E: Unable to locate package linux-headers-2.6.32-5-amd64
E: Couldn't find any package by regex 'linux-headers-2.6.32-5-amd64'

Und auch

peter@peter-deb:~$ apt-cache search linux-headers
linux-headers-3.0.0-1-all - All header files for Linux 3.0.0 (meta-package)
linux-headers-3.0.0-1-all-amd64 - All header files for Linux 3.0.0 (meta-package)
linux-headers-3.0.0-1-amd64 - Header files for Linux 3.0.0-1-amd64
linux-headers-3.0.0-1-common - Common header files for Linux 3.0.0-1
linux-headers-3.0.0-1-common-rt - Common header files for Linux 3.0.0-1-rt
linux-headers-3.0.0-1-rt-amd64 - Header files for Linux 3.0.0-1-rt-amd64
linux-headers-2.6-amd64 - Header files for Linux amd64 configuration (dummy package)
linux-headers-2.6-rt-amd64 - Header files for Linux rt-amd64 configuration (dummy package)
linux-headers-amd64 - Header files for Linux amd64 configuration (meta-package)
linux-headers-rt-amd64 - Header files for Linux rt-amd64 configuration (meta-package)

Und sources.list:

# Debian packages for testing
deb http://mirror.transact.net.au/debian/ testing main contrib non-free
# Uncomment the deb-src line if you want 'apt-get source'
# to work with most packages.
# deb-src http://mirror.transact.net.au/debian/ testing main contrib non-free

# Security updates for stable
# deb http://security.debian.org/ stable/updates main contrib non-free

Beachten Sie auch, dass ich aktualisiert werden kann und dies keinen Unterschied machte.

ptrcao
quelle
Je nach Distribution wird möglicherweise ein virtuelles Paket aufgerufen linux-headers-virtual. Ich weiß, dass es das neueste Ubuntu und seine Derivate gibt.
Sean C.
Dies scheint der Name eines Debian-Pakets zu sein. Haben Sie Ubuntu- und Debian-Repositories gemischt?
Enzotib
1
@Sean C .: Das Paket, von dem Sie sprechen, ist für virtuelle Maschinen gedacht. Das linux-headers-generichängt wohl immer von den neuesten Headern ab. Der neueste Kernel ist jedoch nicht unbedingt der, von dem Sie booten.
Enzotib
1
@enzotib: Ja. Es installiert die Header für den aktuellsten Kernel und, ja, für virtuelle Maschinen. Ich habe fälschlicherweise angenommen, dass es sich um ein "virtuelles" Paket handelt, da Debian und seine Derivate virtuelle Pakete verwenden, um auf eine Gruppe von Paketen zu verweisen, die installiert werden, wenn Sie das einzelne virtuelle Paket auswählen.
Sean C.
Ich benutze Debian 6.
ptrcao

Antworten:

8

Ubuntu liefert kein AMD64-spezifisches Kernel-Header-Paket aus.

Was Sie wahrscheinlich wollen, ist linux-headers-2.6.32-5-generic. Hier werden Linux-Header für 32- und 64-Bit-Intel x86-CPU-Varianten kombiniert.

Sagen Sie apt-cache search linux-headers, um Ihre anderen Möglichkeiten zu sehen.

Warren Young
quelle
Ich benutze Debian 6 - gilt das auch?
ptrcao
1
Nein, das tut es nicht. Ich habe gerade Ihren Befehl auf einem frisch installierten Debian 6 AMD64-System ausprobiert, und es funktioniert. Ich vermute, dass Sie ein Problem mit Ihren ausgewählten Debian-Spiegeln haben. Bitte hängen Sie die Ausgabe von sudo apt-get install -qy linux-headers-$(uname -r)an Ihre Nachricht an.
Warren Young
Siehe oben. Was jetzt?
ptrcao
Versuchen Sie den apt-cacheobigen Befehl. Ich gehe davon aus, dass Sie feststellen werden, dass kein -amd64Paket aufgeführt ist. Wenn ja, sudo apt-get updatekann es behoben werden. Wenn nicht, enthält der ausgewählte Spiegelsatz aus irgendeinem Grund das Paket nicht.
Warren Young
1
Ich denke dein Problem ist, dass du von Stable auf Testing umgestiegen bist. Wie Sie sehen, werden im Testbaum neuere Kernel als der 2.6.32-5 ausgeliefert, auf dem Sie gerade arbeiten. Wechseln Sie entweder wieder zu Stable, oder aktualisieren Sie Ihren Kernel, damit Sie Header aus dem Testbaum verwenden können. Sie sollten natürlich zuerst überprüfen, ob dieser nVidia-Treiber mit den neueren Kerneln funktioniert.
Warren Young
-1

Tipp einfach:

$ apt-cache search linux-headers

und wähle welche linux-headerswie meine wahlen:

linux-headers-3.14-kali1-amd64

Und installieren Sie es mit diesem Befehl:

$ sudo apt-get install linux-headers-3.14-kali1-amd64

Es hat bei mir funktioniert.

hecham
quelle