Comment installer un package contenant des symboles de débogage du noyau Ubuntu?

19

Le -genericpaquet du noyau Ubuntu par défaut ne semble pas avoir de symboles.

J'essaie d'éviter de compiler manuellement un noyau avec des informations de débogage.

Ubuntu fournit-il un paquet avec des symboles de débogage du noyau?

Marguerite
la source

Réponses:

25
  1. Créez d'abord un ddebs.listutilisant:

    echo "deb http://ddebs.ubuntu.com $(lsb_release -cs) main restricted universe multiverse" | sudo tee /etc/apt/sources.list.d/ddebs.list
  2. Ajoutez ensuite la clé GPG pour ddebs.ubuntu.com:

    wget -O - http://ddebs.ubuntu.com/dbgsym-release-key.asc | sudo apt-key add -
  3. Exécutez ensuite:

    sudo apt-get update
  4. Installez ensuite le package de symboles en utilisant:

    sudo apt-get install linux-image-`uname -r`-dbgsym

    C'est plutôt énorme (> 680 Mo), alors préparez-vous à attendre pendant que vous le téléchargez.

J'utilise les symboles de débogage du noyau Linux pour des outils comme systemtapsur le noyau.

Colin Ian King
la source
apt-cache search dbgsymrenvoie pkg-create-dbgsymuniquement, était-ce dans un autre référentiel?
marguerite
3
@ warl0ck Oui, les -dbgsympackages se trouvent dans des référentiels spéciaux que vous devez activer pour les installer. Cela explique comment .
Eliah Kagan du
J'ai maintenant mis à jour le message pour clarifier comment procéder.
Colin Ian King
l'étape se apt-get updatetraduit par un message d'avertissement: W: GPG error: http://ddebs.ubuntu.com trusty Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY ECDCAD72428D7C01c'est pourquoi j'étends cela avec une solution pour ce cas.
Pro Backup
1
sudo apt-get install linux-image-$(uname -r)-dbgsym=3.13.0-49.83 Reading package lists... Done Building dependency tree Reading state information... Done E: Unable to locate package linux-image-3.13.0-49-generic-dbgsym E: Couldn't find any package by regex 'linux-image-3.13.0-49-generic-dbgsym'
Kenny Evitt
7

J'ai essayé la réponse de Colin Ian King et cela n'a pas fonctionné pour moi. J'ai découvert que je dois ajouter deux lignes supplémentaires/etc/apt/sources.list.d/ddebs.list

Modifiez le fichier via

sudo nano /etc/apt/sources.list.d/ddebs.list

et ajoutez les deux lignes ci-dessous

deb http://ddebs.ubuntu.com trusty-updates main restricted universe multiverse
deb http://ddebs.ubuntu.com trusty-proposed main restricted universe multiverse

Remplacez trustypar votre version que vous obtenez lorsque vous exécutez

lsb_release -cs
dragosb
la source
1
Cela fonctionne pour moi!
Howard Shane
7

Pour 16.04+ :

Importation de clé GPG

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys C8CAB6595FDFF622 

Ajouter une configuration de référentiel

codename=$(lsb_release -c | awk  '{print $2}')
sudo tee /etc/apt/sources.list.d/ddebs.list << EOF
deb http://ddebs.ubuntu.com/ ${codename}      main restricted universe multiverse
deb http://ddebs.ubuntu.com/ ${codename}-security main restricted universe multiverse
deb http://ddebs.ubuntu.com/ ${codename}-updates  main restricted universe multiverse
deb http://ddebs.ubuntu.com/ ${codename}-proposed main restricted universe multiverse
EOF

sudo apt-get update
sudo apt-get install linux-image-$(uname -r)-dbgsym

(crédit à Ubuntu Wiki )

Philipp Claßen
la source