Jak zainstalować pakiet zawierający symbole debugowania jądra Ubuntu?

19

Domyślny -genericpakiet jądra Ubuntu nie wydaje się zawierać symboli.

Próbuję uniknąć ręcznego kompilowania jądra z informacjami o debugowaniu.

Czy Ubuntu zapewnia pakiet z symbolami debugowania jądra?

stokrotka
źródło

Odpowiedzi:

25
  1. Najpierw utwórz za ddebs.listpomocą:

    echo "deb http://ddebs.ubuntu.com $(lsb_release -cs) main restricted universe multiverse" | sudo tee /etc/apt/sources.list.d/ddebs.list
  2. Następnie dodaj klucz GPG dla ddebs.ubuntu.com:

    wget -O - http://ddebs.ubuntu.com/dbgsym-release-key.asc | sudo apt-key add -
  3. Następnie uruchomić:

    sudo apt-get update
  4. Następnie zainstaluj pakiet symboli, używając:

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

    Jest to dość duże (> 680 MB), więc przygotuj się na czekanie, aż go pobierzesz.

Używam symboli debugowania jądra Linux dla narzędzi takich jak systemtapw jądrze.

Colin Ian King
źródło
apt-cache search dbgsymzwraca pkg-create-dbgsymtylko, czy było to w innym repozytorium?
stokrotka
3
@ warl0ck Tak, -dbgsympakiety znajdują się w specjalnych repozytoriach, które należy włączyć, aby je zainstalować. To wyjaśnia jak .
Eliah Kagan
Zaktualizowałem post, aby wyjaśnić, jak to zrobić.
Colin Ian King,
krok apt-get updatepowoduje wyświetlenie komunikatu ostrzegawczego: 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 ECDCAD72428D7C01dlatego rozszerzam to o rozwiązanie dla tej sprawy.
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

Próbowałem odpowiedzi Colina Iana Kinga , ale to nie zadziałało. Dowiedziałem się, że muszę dodać dwie dodatkowe linie/etc/apt/sources.list.d/ddebs.list

Edytuj plik za pomocą

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

i dodaj dwie linie poniżej

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

Zamień trustyna wersję, którą otrzymujesz po uruchomieniu

lsb_release -cs
dragosb
źródło
1
To mi działa!
Howard Shane,
7

Dla 16.04+ :

Import klucza GPG

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

Dodaj konfigurację repozytorium

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

(Podziękowania dla Wiki Ubuntu )

Philipp Claßen
źródło