debuginfoパッケージを導入してパッケージをGDBでデバッグします。
Table of Contents
1 yum-utilsをインストールする
debuginfo-installコマンドはyum-utilsに含まれています。
$ sudo yum install -y yum-utils
2 debuginfoをインストールする
debuginfo-installでパッケージをインストールします。ここの<pkg>はdebuginfoのサフィックスをつけていないものです。
$ sudo debuginfo-install -y <pkg>
3 コマンドをデバッグする
GDBにプログラムを指定します。
$ gdb <prog>
lsコマンドをデバッグする場合は以下の通りです。
$ sudo debuginfo-install -y coreutils $ gdb ls
4 起動しているプロセスをデバッグする
gdb -pでPIDを指定します。プロセスがひとつだけの場合はpidofも使えます。
$ sudo gdb -p $(pidof <prog>)
rsyslogのプロセスをデバッグする場合は以下の通りです。root権限が必要です。
$ sudo debuginfo-install -y rsyslog $ sudo gdb -p $(pidof rsyslogd)