¿Cómo instalar un paquete que contiene símbolos de depuración del kernel de Ubuntu?

19

El -genericpaquete predeterminado del kernel de Ubuntu no parece tener símbolos.

Estoy tratando de evitar compilar un kernel con información de depuración manualmente.

¿Ubuntu proporciona un paquete con símbolos de depuración del núcleo?

margarita
fuente

Respuestas:

25
  1. Primero cree un ddebs.listuso:

    echo "deb http://ddebs.ubuntu.com $(lsb_release -cs) main restricted universe multiverse" | sudo tee /etc/apt/sources.list.d/ddebs.list
  2. Luego agregue la clave GPG para ddebs.ubuntu.com:

    wget -O - http://ddebs.ubuntu.com/dbgsym-release-key.asc | sudo apt-key add -
  3. Entonces corre:

    sudo apt-get update
  4. Luego instale el paquete de símbolos usando:

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

    Esto es bastante grande (> 680 MB), así que prepárese para esperar mientras lo descarga.

Utilizo los símbolos de depuración del kernel de Linux para herramientas como systemtapen el kernel.

Colin Ian King
fuente
apt-cache search dbgsympkg-create-dbgsymsolo regresa , ¿estaba en algún otro repositorio?
margarita
3
@ warl0ck Sí, los -dbgsympaquetes están en repositorios especiales que debe habilitar para instalarlos. Esto explica cómo .
Eliah Kagan
Ahora he actualizado la publicación para aclarar cómo hacer eso.
Colin Ian King
el paso apt-get updateda como resultado un mensaje de advertencia: 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 ECDCAD72428D7C01es por eso que estoy extendiendo esto con una solución para ese caso.
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

Intenté la respuesta de Colin Ian King y no funcionó para mí. Descubrí que debo agregar dos líneas adicionales en/etc/apt/sources.list.d/ddebs.list

Edite el archivo a través de

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

y agregue las dos líneas a continuación

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

Reemplace trustycon su versión que obtiene cuando ejecuta

lsb_release -cs
dragosb
fuente
1
Esto me funciona!
Howard Shane
7

Para 16.04+ :

Importación de clave GPG

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

Agregar configuración de repositorio

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édito a Ubuntu Wiki )

Philipp Claßen
fuente