この記事の複製元:[http://www.oolap.com/2015-11-07-ubuntu-install-dbgsym](http://www.oolap.com/2015-11-07-ubuntu-install-dbgsym)
linuxでsystemtapスクリプトを実行する場合は、システムカーネルのdebug-infoをインストールする必要があります。debug-infoはredhatと呼ばれ、ubuntuではdebugシンボルと呼ばれ、dbgsymと省略されます。 ubuntuがデフォルトでインストールされている場合、dbgsymはインストールされず、デフォルトのウェアハウスにdbgsymパッケージはありません。 dbgsymパッケージは別の倉庫にあります。公式の倉庫アドレスは http:// ddebs.ubuntu.com /で、パッケージ名のサフィックスも .debから .ddebに変更されているようです。
dbgsymをインストールする手順は次のとおりです。
/etc/apt/sources.list**ファイルを編集してdbgsymソースを追加dbgsymパッケージをインストールするには、このソースを手動で追加できます。 / etc / apt / sources.listファイルを編集して、最後に次の2行を追加します。
deb http://ddebs.ubuntu.com/ precise main
deb http://ddebs.ubuntu.com/ precise-updates main
preciseがubuntuリリースの名前に置き換えられている場合、次のコマンドを使用して操作を完了することができます
python2 -c 'import sys; print "\n".join(sys.argv[1:])'"deb http://ddebs.ubuntu.com/ $(lsb_release --short --codename)"{,-updates}" main #restricted universe multiverse"| sudo tee -a /etc/apt/sources.list
他のソフトウェアのdbgsymをインストールする場合は、「main」以外の他のコンポーネントを有効にする必要がある場合があります。
ソースを初めて追加した後で sudo apt-get updateを実行すると、最後に次のエラーメッセージが表示される場合があります。
パッケージリストを読む...実施する
W:GPGエラー:http://ddebs.ubuntu.com precise Release:公開鍵がないため、次の署名は検証できません。いいえ_PUBKEY ECDCAD72428D7C01
W:GPGエラー:http://ddebs.ubuntu.com precise-updates Release:公開鍵がないため、次の署名は検証できません。いいえ_PUBKEY ECDCAD72428D7C01
これは、ソース公開キーが追加されていないためです。次のコマンドを使用して、ubuntuキーサーバーからソース公開キーを追加できます。
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys ECDCAD72428D7C01
最後のパラメータ ECDCAD72428D7C01は、上記で報告されたPUBKEYです。http:// ddebs.ubuntu.com /の場合、この値は修正する必要があります。
公開鍵を追加した後、次のコマンドを再度実行して、ソース情報を更新します。
sudo apt-get update
ソースを更新した後、通常のソフトウェアパッケージをインストールするのと同じように、dbgsymを見つけてインストールできます。検索するときに、「-dbgsym」サフィックスを追加できます。カーネル関連のdbgsymを検索する場合は、次のコマンドを使用して検索できます。
sudo aptitude search 'linux-image-.*-dbgsym'
バージョン番号を取得して、現在のカーネルのdbgsymを直接検索することもできます。
sudo aptitude search 'linux-image-'$(uname -r)'-dbgsym'
Linuxカーネルバージョンは頻繁に繰り返し更新されるため、dbgsymの現在のカーネルバージョンがオンラインとオフラインであり、対応するdbgsymが見つからず、インストールされていない可能性があります。現時点では、対応するdbgsymを持つカーネルバージョンを再インストールすることをお勧めします。カーネルの最新バージョンが強力でない場合必要に応じて、dbgsymリストから古いが比較的安定したバージョンを選択することをお勧めします。
たとえば、現在、次のdbgsymバージョンリストがあります。
p linux-image-3.13.0-30-generic-dbgsym - Linux kernel debug image for version 3.13.0 on 64 bit x86 SMP
p linux-image-3.13.0-30-generic-dbgsym:i386 - Linux kernel debug image for version 3.13.0 on 32 bit x86 SMP
p linux-image-3.13.0-32-generic-dbgsym - Linux kernel debug image for version 3.13.0 on 64 bit x86 SMP
p linux-image-3.13.0-32-generic-dbgsym:i386 - Linux kernel debug image for version 3.13.0 on 32 bit x86 SMP
p linux-image-3.13.0-65-generic-dbgsym - Linux kernel debug image for version 3.13.0 on 64 bit x86 SMP
p linux-image-3.13.0-65-generic-dbgsym:i386 - Linux kernel debug image for version 3.13.0 on 32 bit x86 SMP
p linux-image-3.13.0-66-generic-dbgsym - Linux kernel debug image for version 3.13.0 on 64 bit x86 SMP
p linux-image-3.13.0-66-generic-dbgsym:i386 - Linux kernel debug image for version 3.13.0 on 32 bit x86 SMP
p linux-image-3.13.0-67-generic-dbgsym - Linux kernel debug image for version 3.13.0 on 64 bit x86 SMP
p linux-image-3.13.0-67-generic-dbgsym:i386 - Linux kernel debug image for version 3.13.0 on 32 bit x86 SMP
次に、 3.13.0-32-genericバージョンをインストールすることを選択します。linux-imageとlinux-headersは同時にインストールするのが最適です。次のコマンドを使用して、対応するカーネルとdbgsymを同時にインストールできます。
sudo aptitude install linux-{image,headers}-3.13.0-32-generic linux-image-3.13.0-32-generic-dbgsym
linux-imageはlinux-headersのインストールを推奨(推奨)しますが、推奨しません(推奨)。aptitudeを使用してソフトウェアパッケージをインストールする場合、推奨ソフトウェアパッケージはデフォルトでインストールされますが、推奨ソフトウェアパッケージは制御されません。通常、推奨ソフトウェアパッケージは多数あります。必要ありません。インストールする必要がある場合は、手動で指定できます。
dbgsymの公式ソースは海外にあり、ミラーが見つからないため、ソースからのダウンロードとインストールは通常非常に遅くなります。ダウンロードしたインストールパッケージをコピーして、 dpkg-iを使用してインストールすることもできます。
sudo dpkg -i linux-image-3.13.0-32-generic-dbgsym_3.13.0-32.57~precise1_amd64.ddeb
Recommended Posts