ローカルプロセス(process attach --name procname --waitfor
)を待機して接続する方法を知っています。
また、リモートdebugserver
を実行して接続する方法も知っています。lldbによるリモートデバッグ - プロセスの待機
しかし、プロセスがリモートホストで起動してそれに接続するのを待つ方法はありますか?
EDIT
私は@Jim's suggestionを試してみました、そしてデバッグサーバが実際に添付するをしようとしているが、がを失敗のように思えます。
私は正しいので、彼の答えを受け入れていますが、なぜ私は本当にプロセスをデバッグすることができないのか知ってうれしいです。
参考JB iPhoneでmdmd(mdmデーモンサービス)をデバッグしようとしています。このプロセスは、mdmサーバーと通信するために数秒間起動してから終了します。
これは、ターゲットの端末からである:
~ root# debugserver *:1234
debugserver-310.2 for arm64.
Listening to port 1234 for a connection from *...
Got a connection, waiting for process information for launching or attaching.
Attach succeeded, ready to debug.
Exiting.
そして、これはlldb年代からである:
これを実行する最も簡単な方法は、接続するためのポートのみを使用してリモートdebugserverを起動することです(lldb) process connect connect://localhost:1234
(lldb) process attach --name mdmd --waitfor
error: attach failed: unable to attach
通常、デーモンはデバッグ可能ではないので、最近のdarwinベースのシステムでは、私はその添付ファイルが拒否されると予想します。たとえば、OS Xでこれをやろうとした場合、rootでも同じエラーが発生します。しかし、私は刑務所に壊れた装置に関する経験は一切持っていません。 –