質問: ルートであるにもかかわらず、プロセスにstrace / gdbが接続しないのはなぜですか? rootとしてログインしましたが、straceから次のことがわかります。 root @ kyznecov-system:/ home/kyznecov#ps -e | grep 111 3807 pts/2 00:00:00 111 3810 pts/2 00:00:00 111 root @ kyznecov-system:/ home/kyznecov#strace- p 3810 attach:ptrace(ptrace_attach、...):操作は許可されていません プロセスに接続できませんでした。 uidがターゲット プロセスのuidと一致する場合、/ proc/sys/kernel/yama/ptrace_scopeの設定を確認するか、rootユーザーとしてもう一度 を試してください。詳細については、/ etc/sysctl.d/10-ptrace.conf root @ kyznecov-system:/ home/kyznecov root @ kyznecov-system:/ homeを参照してください。/kyznecov#cat /proc/sys/kernel/yama/ptrace_scope 0 その後、gdbを使用して、フォークを使用してeclipse cdtのマルチプロセスプログラムをデバッグしようとしましたが、同じ結果/エラーが発生しました。 何か案は?
回答: エラーが発生する1つの理由:attach: ptrace(ptrace_attach, ...): operation not permittedこれは、プロセスがgdb、straceなどで既にアタッチされているためです。これが当てはまるかどうかを確認するには、次を実行します。grep tracerpid /proc/$the_pid/statusゼロ以外の場合、それはそのプロセスで既にトレースを実行している既存のプログラムのpidです。