विज्ञापन

क्रिप्टो एक्सचेंज बोनस पाएँ

सिर्फ़ साइन अप करने पर मिलने वाले बोनस। शर्तें हर एक्सचेंज की घोषणा से ज्यों की त्यों ली गई हैं।

strace

प्रोसेस और सिस्टम

इस्तेमाल

strace [-f] -p <pid>

किसी प्रक्रिया के हर सिस्टम कॉल को छापता है, इससे दिखता है वह कहाँ अटकी है; आउटपुट stderr पर जाता है, इसलिए `2>&1` से मोड़ें, ptrace अनुमति (आम तौर पर sudo) चाहिए, और यह केवल Linux पर है (macOS में dtruss)।

आम विकल्प

विकल्पअर्थ
-p <pid>Attach to a process that is already running.
-fFollow child processes and threads too.
-e trace=openat,connectOnly the syscalls you care about.
-s 200Show 200 characters of each string instead of the default 32.
-o <file>Write to a file, since output goes to stderr.
-cA summary count per syscall instead of every line.
-ttTimestamps with microseconds, to see where the time went.

उदाहरण

strace -f -e trace=openat ./app 2>&1 | grep config

Find which config file it actually reads.

sudo strace -p 1234 -s 200

See what a stuck process is waiting on.

sudo dtruss -p 1234

The macOS counterpart; needs elevated privileges and often SIP changes.

क्या चल रहा है और क्या मशीन खा रहा है। मारने से पहले पहचानना क्रम है।

कैसे पढ़ें

  • बड़े कोष्ठक [ ] उस हिस्से को दिखाते हैं जिसे छोड़ा जा सकता है।
  • तीन बिंदु … का मतलब है एक से ज़्यादा दिए जा सकते हैं।
  • विकल्पों में बड़े-छोटे अक्षर मायने रखते हैं — कुछ कमांड में -r और -R अलग काम करते हैं।

आम सवाल

Qstrace क्या करता है?

किसी प्रक्रिया के हर सिस्टम कॉल को छापता है, इससे दिखता है वह कहाँ अटकी है; आउटपुट stderr पर जाता है, इसलिए `2>&1` से मोड़ें, ptrace अनुमति (आम तौर पर sudo) चाहिए, और यह केवल Linux पर है (macOS में dtruss)।

Qइसे कैसे लिखें?

strace [-f] -p <pid> — बड़े कोष्ठक वह हिस्सा दिखाते हैं जो छोड़ा जा सकता है।

Qकितने विकल्प जानने लायक़ हैं?

यहाँ 7 दिए हैं; पूरी सूची man strace में है। यह कमांड प्रोसेस और सिस्टम में आती है।

मिलती-जुलती कमांड

man पेज: man strace