strace

צילום מסך תוכנה:
strace
פרטי תוכנה:
גרסה: 4.19 מעודכן
טען תאריך: 23 Nov 17
רשיון: ללא תשלום
פופולריות: 72

Rating: 4.5/5 (Total Votes: 2)

strace הוא קוד פתוח ותוכנה המופצת בחופשיות המיועדת למפתחים ומנהלי מערכות, ומספקת נותב שיחות המערכת מיושם ב- C ונועדה לפעול באופן בלעדי תחת מערכות ההפעלה של גנו / לינוקס.

התוכנית היא כלי מאוד שימושי באגים, הדרכה ואבחון שיכולים לאסוף את כל השיחות המערכת שנוצר על ידי תוכנית או תהליך, ולהדפיס את עקבותיו. תוכנית שורת פקודה שניתן להשתמש בה רק מסביבת קונסולה או באמצעות יישום אמולטור מסוף.

ניתן להשתמש בכלי זה על ידי אבחון, פותר בעיות, וכן מנהלי מערכת שרוצים פתרון יקר ערך לפתרון בעיות בתוכניות מקור סגור. הוא נכתב על ידי דמיטרי V. לוין, רולנד מקגראת וויכרט אקרמן.


אפשרויות שורת פקודה

כמו כל תוכנת שורת פקודה אחרת, Strace מציעה מגוון רחב של אפשרויות שורת פקודה המאפשרות למשתמש להשתמש בקלות בכל הפונקציונליות והתכונות שלו כדי להשיג את המשימות שלהם. כל אפשרויות שורת הפקודה שלה ניתן לראות במבט אחד על ידי הפעלת & lsquo; strace --help & rsquo; הפקודה.

בין אפשרויות שורת הפקודה המעניינות ביותר, אנו יכולים להזכיר תמיכה לספירת פעמים, שיחות וטעויות עבור כל syscall, תמיכה לסיכום זמן המתנה של syscall, תמיכה במעקב אחר גישות לנתיב מסוים, תמיכה בהפעלת פלט debug ל stdr, כמו גם תמיכה להפעלת תהליך נותב כנכד מנותק, לא כהורה.

בנוסף, תוכל לשלוח מידע עקבות לקובץ מסוים במקום stdr, כדי להגדיר את התקורה למעקב אחר syscalls ל usecs תקורה, כדי להגדיר קובץ PID עבור תהליך עקבות, כדי להגביל את אורך מחרוזות ההדפסה כדי להרוס את השורות, להריץ פקודות כשירות שם משתמש setgid ו / או setuid, וכן לנתק על syscall מסוים.


תחילת העבודה עם החסד

strace מופץ רק כמו tarball מקור, אבל זה יכול להיות מותקן בקלות על הפצות רבות של לינוקס ממאגרי התוכנה העיקריים שלהם. כדי להתקין אותו ממקורות, פשוט להוריד את הגירסה האחרונה מ Softoware, לשמור את הארכיון על מיקום על פי בחירתך לפרוק אותו.

פתח יישום מסוף, עבור אל המיקום של קבצי הארכיון שחולצו (למשל cd /home/softoware/strace-4.9), הפעל את ./configure && make & rsquo; הפקודה כדי להגדיר ולעבוד strace, ולאחר מכן לבצע את & lsquo; להפוך את ההתקנה & rsquo; הפקודה או השורש & lsquo; sudo להפוך את ההתקנה & rsquo; הפקודה כמשתמש מועדף להתקין מערכת strace רחב.

מה חדש במהדורה זו:

  • שיפורים:
  • אפשרות נוספת שנוספה להדפסת מידע פרוטוקול ופנייה המשויכים לתיאורי שקעים.
  • מורחב & quot; - לקריאה = set & quot; ו- & quot; -e כתוב = set & quot; אפשרויות לכסות Sendmsg, recvmsg, sendmmsg ו- recvmmsg syscalls.
  • פענוח מלא של פענוח 32 סיביות של פקודות ioctl (כתובות כתובת Debian Bug # 692913 ו- bud Fedora # 902788).
  • יישום API של PTRACE_GETREGS API ב- ia64.
  • מיישם את תמיכת ה- API של PTRACE_GETREGS ב- mips.
  • תמיכה ב- API של PTRACE_GETREGSET מיושמת ב- s390 / s390x.
  • פענוח של getrandom ו- seccomp syscalls.
  • פענוח מלא של ערכות יכולת של 64 סיביות.
  • פענוח של כל פקודות prctl.
  • פענוח של פקודות ioctl פרמטריות.
  • פענוח של פקודות evdev ioctl.
  • פענוח של פקודות v4l ioctl.
  • פענוח של פקודות SG_IO v4 ioctl.
  • פענוח של פקודות FIFREEZE / FITHAW / FITRIM ioctl.
  • פענוח מיושם של FALLOC_FL_ * דגלים מסולסלים.
  • פענוח של מסיכת אותות rt_sigreturn ב- aarch64, x32 ו- x86_64.
  • מפענח שקע משופר כדי לתמוך בשקעי Bluetooth.
  • פענוח משופר של פקודות ioctl לא רשומות.
  • פענוח משופר של gotockopt ו- setockopt syscall.
  • פענוח משופר של sysinfo syscall.
  • פענוח משופר של build cmsghdr.
  • פענוח משופר של סטטוס ההמתנה.
  • תמיכה משופרת ב- Aio בארכיטקטורות שאינן x86 באמצעות libaio.h חיצוני.
  • נוסף O_TMPFILE לרשימת הדגלים במצב הפתוח.
  • עודכנה רשימה של קבועי סוג הקבצים המשמשים לפענוח של מערכות Syscalls של statfs.
  • רשימה מעודכנת של קבועי CAP_ *, PR_ *, PTRACE_ *, SCHED_ *, SO_ *, SOL_ *, SWAP_FLAG_ * ו- TFD_ *.
  • רשימות מעודכנות של קבועי אותיות מ- Linux 3.19.
  • רשימות מעודכנות של קבועי שגיאות מ- Linux 3.19.
  • רשימות מעודכנות של פקודות ioctl מ- Linux 3.9.
  • נוסף ערכי syscall חדשים כך שיתאימו ל- Linux 3.19.
  • תיקוני באגים:
  • תיקנו שגיאות שונות במיפוי בין מספרים syscall ומידע קשור כמו מספר ארגומנטים syscall, שם syscall, מפענח syscall.
  • בעיות מצטברות קבועות בהדפסת תיאורים, שמות קבצים, שמות ממשק רשת, חברי struct utsname, שמות התקנים / אמצעי אחסון של פקודות BLK * ioctl.
  • פענוח פענוח uid_t / git_t.
  • פוטנציאל קבוע מחוץ לתחום לקרוא בעיות getdents / getdents64 מפענחים.
  • פוטנציאל קבוע לפתוח דגל חתוך על כמה ארכיטקטורות.
  • פענוח קבוע של struct ifreq.ifr_name.
  • פענוח קבוע של פקודת SIOCSIFNAME ioctl.
  • פענוח קבוע של דגלים של RENAME_ * renameat2.
  • פענוח קבוע של מבני זמן UTIME_NOW / UTIME_OMIT.
  • פענוח קבוע של subcalls ipc עקיף על כמה ארכיטקטורות.
  • פענוח קבוע של syscall fanotify_mark בארכיטקטורות של 32 סיביות.
  • פענוח קבוע של מבני Stat 32 סיביות בארכיטקטורות של 64 סיביות.
  • פענוח קבוע של cmsghdr של 32 סיביות מובנית בארכיטקטורות של 64 סיביות.
  • פענוח קבוע של 32 סיביות preadv / pwritev קיזוז בארכיטקטורות של 64 סיביות.
  • פענוח קבוע של מסיכת אותות sigreturn / rt_sigreturn ב- ia64, ppc, ppc64, sparc, sparc64, mips ו- s390.
  • פלט קבוע של מצביע הוראה (אופציה) על ארכיטקטורות התומכות במספר אישים.
  • התנהגות קבועה של & quot; -e read = set & quot; ו- & quot; -e כתוב = set & quot; כאשר קבוצות קריאה וכתיבה מצטלבות.
  • קבוע לבנות על מערכות שבו sructaction מובנה אין חבר sa_restorer.
  • קבוע לבנות עם uclibc ו libl musl.
  • ניידות:
  • ליבת לינוקס & gt; = 2.5.46 נדרשת. גירסאות ישנות יותר ללא תמיכה הוגנת של PTRACE_SETOPTIONS לא יפעלו.
  • ב- mips, נדרש גרעין לינוקס & gt; = 2.6.15. גרסאות ישנות יותר ללא תמיכת PTRACE_GETREGS הוגנת לא יפעלו.
  • ב- s390 ו- s390x, נדרש גרעין לינוקס & gt; = 2.6.27. גירסאות ישנות יותר ללא תמיכה הוגנת PTRACE_GETREGSET לא יעבדו.

מה חדש בגירסה 4.9:

  • שינויים בהתנהגות:
  • תמיכה ב- OABI מושבתת על מערכות ARM EABI כברירת מחדל, הוספה - אפשרות לזמין-אופבי כדי לאפשר לה להגדיר בזמן.
  • שיפורים:
  • הוספת אפשרות ניסיונית -k להדפסת ערימת העקבות לאחר כל סיסקל עוקב.
  • אפשרות נוספת שנוספה כדי להפיק נתונים סטטיסטיים על זמן האחזור של syscall. (כתובת דביאן באג # 457497).
  • הוספת תמיכה בארכיטקטורת ARC.
  • נוספה תמיכת API של PTRACE_GETREGS ב- PowerPC.
  • תמיכה ביונית ביונית מוגברת ותמיכה ב- libl musl.
  • מעקב משופר אחר תהליכי אישיות של x86 ב- x86_64 וב- x32.
  • מעקב משופר אחר תהליכי האישיות של ARM ב- AArch64.
  • זיהוי אישיות משופר 32 / 64bit ב- PowerPC.
  • פענוח מיושם של add_key, ioprio_get, ioprio_set, kexec_load, keyctl, renameat2 ו- user_key syscalls.
  • פענוח משופץ של syscalls בחר, pselect ו- io_submit.
  • פענוח משופר של delete_module, fanotify_init, fanotify_mark, fcntl, setdomainname, sethostname, setns ו- sync_file_range syscalls.
  • פענוח משופר של סיביות סיביות.
  • פענוח משופר של מתארי קבצים.
  • פענוח siginfo_t משופר.
  • פענוח PF_NETLINK משופר.
  • מעודכן CLOCK_ * קבועים (כתובות פדורה באג # 1088455).
  • נוסף ערכי syscall חדשים התואמים ל- Linux 3.16.
  • תיקוני באגים:
  • הוספת shmat ו- shmdt למערכת של מיפוי זיכרון קשור syscalls.
  • ניתוק קבוע מתהליכים שנעצרו.
  • פענוח fanotify_mark קבוע בארכיטקטורות של 32bit.
  • פענוח קיזוז קבוע ב- preadv ו- pysitev syscalls.
  • פענוח נבחר קבוע עבור glibc במצב _FORTIFY_SOURCE.
  • פענוח קבוע של syscall epoll_ctl עם ארגומנט EPOLL_CTL_DEL.
  • תוקן בעת ​​יצירה וסכסוך (כתובות Fedora bug # 993384).
  • תיקונים שונים בדף הידני. (כתובת דביאן באג # 725987).

מה חדש בגירסה 4.8:

  • שינויים בהתנהגות:
  • במקרה של סיום סטנדרטי תקין, כאשר הפלט עקבות מופנה לצינור, החסימה סוגרת אותו ומחכה לסיום תהליך הצינור לפני היציאה.
  • שיפורים:
  • ביצוע מעקב באמצעות ממשק PTRACE_SEIZE API (כאשר זמין).
  • יישום של זיהוי אישיות תהליך תהליך מבוסס PTRACE_GETREGSET אמין יותר ב- x86-64 וב- x32 (כאשר זמין).
  • נוסף-עקבות = אפשרות זיכרון למעקב אחר syscalls מיפוי זיכרון.
  • אפשרות מתועדת .b
  • הודעות סטטוס יציאה מותרות ניתנות לדיכוי על ידי מתן אפשרות -q פעמיים.
  • נוסף תמיכת ארכיטקטורה של AArch64 (כתובות של Debian Bug # 693074 ו- bud Fedora # 969858).
  • תמיכה נוספת עבור ארכיטקטורות OpenRISC 1000, Meta ו- Xtensa.
  • נוסף תמיכה אישיות tilegx עבור טייל.
  • תמיכה משופרת בארכיטקטורות NOMMU.
  • פענוח משופר של gddents, mmap, perf_event_open, ptrace ו- quotacl syscalls.
  • נוסף ערכי syscall חדשים שתואמים ל- Linux 3.9.
  • מחדש את רשימת שמות ioctl משותף מ לינוקס 3.9.
  • עודכנה רשימה של קבועי שגיאה.
  • רשימות מעודכנות של קבועים של AF_ *, MADV_ *, MAP_ *, MSG_ *, MS_ *, PF_ *, PR_ *, PTRACE_O_ * ו- TCP_ *.
  • פענוח של UBI ioctls.
  • הוסר מיותר & quot; * 32 & quot; ioctl שמות.
  • תיקוני באגים:
  • קבוע ERESTARTNOINTR דולף למרחב המשתמשים על גרעינים עתיקים (כתובות Fedora באג # 659382).
  • ניתוח מחרוזת גרסאות קבועה של ליבה (כתובות Debian באג # 702309).
  • פענוח קבוע של * xattr syscalls (כתובות פדורה באג # 885233).
  • טיפול קבוע בקבצים עם מספרי 64 אינפוד של 32 סיביות (כתובת פדורה באג # 912790).
  • מזלגות עוקבות קבועות ב- SPARC.
  • פענוח קבוע של fadvise64, מסיר, ftruncate64, io_submit, Preadv, preadv, pwrite, pwritev, readahead, sigaltstack, sync_file_range, sysctl ו- truncate64 syscalls.
  • קטגוריות קבועות של syscalls מרובות ברוב הארכיטקטורות הנתמכות.
  • פענוח קבוע של לא-יליד של 32 סיביות אישיות recv [m] syscalls.
  • פענוח קבוע של מספר syscalls של 32 סיביות על x32.
  • פענוח קבוע של ארגומנטים ארוכי טווח ארוכים על ארכיטקטורות ARM, MIPS / o32, PowerPC, S390x ו- Tile.
  • פענוח semtimedop קבוע ב- S390x.
  • פענוח sram_alloc קבוע ב- Blackfin.
  • קבוע לבנות כאשר process_vm_readv הוא דקירה.
  • קבוע לבנות עם גרסאות ישנות יותר של libaio.h.

מה חדש בגירסה 4.7:

  • זוהי גרסה יציבה, עם תיקוני באגים רגילים, תמיכה משופרת בגרעיני לינוקס טריים ואחרים. שיפורים.

מה חדש בגירסה 4.6:

  • זוהי גרסה יציבה, עם תיקוני באגים רגילים, תמיכה משופרת עבור גרסאות לינוקס טריות, ושיפורים אחרים, כולל שיטה חדשה של שיבוט, מזלג, ו vfork syscalls באמצעות מתקני מפורטים של ליבה של לינוקס למעקב אחר יצירת חוטים ותהליכים הילד.

מה חדש בגרסה 4.5.20:

  • שיפורים:
  • פענוח מיושן של syscalls לינוקס חדש: inotify_init1, recvmmsg.
  • פענוח בסיסי של לינוקס חדש syscalls: preadv, pwritev, rt_tgsigqueueinfo, perf_event_open.
  • פענוח משופר של syscalls שנוספו לאחרונה בארכיטקטורות שאינן x86 על-ידי החלפת מפענח חשוף עם מנתחים משוכללים שהופעלו קודם לכן עבור x86 / x86-64.
  • אפשרות מיושמת -C לשלב פלט רגיל ו- c. (כתובת Debian באג # 466196)
  • פענוח משופר של syscalls mbind ו- mremap.
  • פענוח אפשרויות שקע SOL_PACKET משופרות.
  • רשימה מחדש של שמות ioctl מ- Linux 2.6.33.
  • נוסף תמיכה בארכיטקטורה של Tile.
  • תיקוני באגים:
  • מבנה קבוע עם כותרות לינוקס של Linux 2.6.32-rc5 +. (כתובת דביאן באג # 560516 ו באג פדורה # 539044)
  • קבוע לבנות על mips.
  • טיפול קבוע במערכות לינוקס ללא מבנה statfs64.
  • מסכת אותות דיווח קבועה על-ידי sigreturn ב- powerpc.
  • ערימת פוטנציאלית קבועה הצפת מאגר במאגר לבחור. (כתובת פדורה באג # 556678)
  • הודעות מתוקנות פענוח ipccall עקיף.
  • פענוח מתוקן של 64bit syscalls. (כתובת דביאן באג # 570603)
  • פענוח מתקבל gotockopt על ארכיטקטורות שבהן גודל (ארוך) & gt; גודל (int). (כתובת דביאן באג # 494844)
  • פענוח מתוקן של epoll_pwait. (כתובת Debian באג # 513014)
  • טיפול מתוקן בחוטים שנרצחו.

תוכנה דומה

LDasm
LDasm

3 Jun 15

ipdbplugin
ipdbplugin

11 May 15

Fenris
Fenris

3 Jun 15

YARI
YARI

12 May 15

תגובות ל strace

תגובות לא נמצא
להוסיף הערה
הפעל את התמונות!