ஸ்ட்ரேஸ், கணினி அழைப்புகளை இடைமறிக்கவும் பதிவு செய்யவும் ஒரு கிளி பயன்பாடு

ஸ்டேஸ்-புள்ளிவிவரங்கள்

ஸ்ட்ரேஸ் என்பது சி.எல்.ஐ பயன்பாடு ஆகும், இது கணினியில் உள்ள பிழைகளை சரிபார்க்க பயன்படுகிறது போன்ற கணினி அழைப்புகளை கண்காணிக்க அனுமதிக்கிறது ஒரு குறிப்பிட்ட நிரல் மற்றும் அது பெறும் அனைத்து சமிக்ஞைகளாலும் பயன்படுத்தப்படுகிறது. பயன்பாடு கண்காணிக்க பயனரை அனுமதிக்கிறது (பதிப்பு 4.15 முதல்) நிரலுக்கும் மையத்திற்கும் இடையிலான தொடர்பு செயல்பாட்டில் தலையிடவும்தற்போதைய கணினி அழைப்புகள், பாப்-அப்கள் மற்றும் செயல்முறை மாற்றங்கள் உட்பட

Ptrace எனப்படும் லினக்ஸ் கர்னலின் அம்சத்தால் இதன் செயல்பாடு சாத்தியமானது. இது மற்ற யூனிக்ஸ் கணினிகளில் கிடைக்கும் டிரஸ் பயன்பாட்டைப் போன்றது. சைக்வின் திட்டம் இதேபோன்ற பயன்பாட்டை வழங்குகிறது. கண்டுபிடிக்கப்பட்ட நிரலுடன் சேர்ந்து தொடங்குவதே இதன் பொதுவான பயன்பாடாகும், இது செயல்படுத்தும் கணினி அழைப்புகளின் பட்டியலை அச்சிடுகிறது.

ஒரு குறிப்பிட்ட திட்டத்தின் தோல்விக்கான காரணத்தைக் கண்டறிய இது பயனுள்ளதாக இருக்கும்அல்லது இது சூழ்நிலைகளைப் புகாரளிப்பதால், எடுத்துக்காட்டாக, நிரல் இல்லாத கோப்பை அணுக முயற்சிக்கிறது அல்லது அதற்கான வாசிப்பு அனுமதி இல்லை.

ஸ்ட்ரேஸிலிருந்து தனித்துவமான குணாதிசயங்களில், பின்வருபவை தனித்து நிற்கின்றன:

  • கண்டுபிடிக்கப்பட வேண்டிய ஒரு சிஸ்கால் பெயர் வடிப்பானைக் குறிப்பிட முடியும் (-e trace = விருப்பத்தைப் பயன்படுத்தி): குளோன், ஃபோர்க், விஃபோர்க் போன்ற பெயரால்; % ipc அல்லது% கோப்பு போன்ற முன் வரையறுக்கப்பட்ட குழுக்களில் ஒன்றைப் பயன்படுத்துதல்; அல்லது (பதிப்பு 4.17 முதல்) கடிகாரம்_ * போன்ற வழக்கமான வெளிப்பாடு தொடரியல் பயன்படுத்தி.
  • கண்டுபிடிக்க வழிகளின் பட்டியலைக் குறிப்பிடவும் (எடுத்துக்காட்டாக -P /etc/ld.so.cache).
  • I / O ஐ வெளியேற்ற வேண்டிய கோப்பு விளக்கங்களின் பட்டியலைக் குறிப்பிடவும்
  • செயல்படுத்தல் நேரம் மற்றும் சிஸ்கால் எண்ணிக்கை
  • உறவினர் அல்லது முழுமையான நேர முத்திரைகளை அச்சிடுதல்
  • குறிப்பிட்ட கணினி அழைப்புகளின் வருவாய் மற்றும் பிழைக் குறியீட்டை மாற்றியமைத்து, செயல்படுத்திய பின் சமிக்ஞைகளை செலுத்துங்கள்
  • கோப்பு விளக்கிகளில் தகவல் பிரித்தெடுத்தல் (சாக்கெட்டுகள் உட்பட).
  • (பதிப்பு 4.21 முதல்) கோரிக்கை சின்னம் (-k) உட்பட சுவடு அச்சிடுதல்.
  • சிஸ்கால் திரும்பும் நிலை மூலம் வடிகட்டுதல்
  • BTRFS_ *, V4L2_ *, DM_ *, NSFS_ *, MEM *, EVIO *, KVM_ * மற்றும் பல போன்ற சில ioctl கட்டளை வகுப்புகளின் வாதங்களை டிகோடிங் செய்வதை ஸ்ட்ரேஸ் ஆதரிக்கிறது.

கணினி அழைக்கும் விவரங்களை மட்டும் விவரிக்கையில், குனு பிழைத்திருத்தி (ஜி.டி.பி) போன்ற குறியீடு பிழைத்திருத்தியின் பல சிக்கல்களைக் கண்டறிய இதைப் பயன்படுத்த முடியாது. இருப்பினும், குறியீடு பிழைத்திருத்தியைக் காட்டிலும் பயன்படுத்த எளிதானது, மேலும் இது கணினி நிர்வாகிகளுக்கு மிகவும் பயனுள்ள கருவியாகும். பின்னர் மறுதொடக்கம் செய்வதற்கான கணினி அழைப்பு தடயங்களை உருவாக்க ஆராய்ச்சியாளர்களால் இது பயன்படுத்தப்படுகிறது.

ஸ்ட்ரேஸ் 5.3 இன் புதிய பதிப்பைப் பற்றி

சமீபத்தில் ஸ்ட்ரேஸ் 5.3 இன் புதிய பதிப்பு வழங்கப்பட்டது சோதனை பதிப்பிற்கான குறியீடு உரிமம் BSD இலிருந்து LGPLv2.1 + மற்றும் GPLv2 + ஆக மாற்றப்பட்டது.

அங்குள்ள மாற்றங்களுக்குள்ளும் இருக்கிறது seccomp வடிப்பான்களை உருவாக்குவதன் மூலம் கணினி அழைப்புகளை வடிகட்டுவதற்கான ஆதரவு ("–Seccomp-bpf"), அதே போல் திரும்பும் குறியீடு ("-e status = ...").

இந்த புதிய பதிப்பின் அறிவிப்பில் குறிப்பிடத்தக்க மற்றொரு மாற்றம் டெவலப்பர்கள் சேர்த்தது pidfd_open மற்றும் clone3 டிகோடிங் சிஸ்டம் அழைப்புகளுக்கான ஆதரவு, io_cancel, io_submit, s390_sthyi மற்றும் syslog கணினி அழைப்புகளின் மேம்பட்ட டிகோடிங்.

விளம்பரத்திலும் அது சிறப்பிக்கப்படுகிறது ioctl கட்டளை லினக்ஸ் 5.3 கர்னலுடன் ஒத்திசைக்கிறது

மற்ற மாற்றங்களில் விளம்பரத்தில் குறிப்பிடப்பட்டுள்ளவை:

  • மேம்படுத்தப்பட்ட NETLINK_ROUTE நெறிமுறை டிகோடிங்
  • டிகோட் செய்யப்பட்ட பிணைய இணைப்பு பண்பு UNIX_DIAG_UID மற்றும் WDIOC_ * ioctl கட்டளைகள்
  • நிலையான பட்டியல்கள் AUDIT_ *, BPF_ *, ETH_ *, KEYCTL_ *, KVM_ *, MAP_ *, SO_ *, TCP_ *, V4L2_ *, XDP_ * மற்றும் * _MAGIC ஆகியவை புதுப்பிக்கப்பட்டுள்ளன

உபுண்டு மற்றும் வழித்தோன்றல்களில் ஸ்ட்ரேஸ் 5.3 ஐ எவ்வாறு நிறுவுவது?

ஸ்ட்ரேஸ் பயன்பாட்டை உபுண்டு களஞ்சியங்கள் மற்றும் அதன் வழித்தோன்றல்களுக்குள் காணலாம், ஆனால் இதுவரை இந்த புதிய பதிப்பிற்கு, இது களஞ்சியங்களில் சேர்க்கப்படவில்லை. பின்வரும் கட்டளையை செயல்படுத்துவதன் மூலம் களஞ்சியங்கள் மூலம் நிறுவல் செய்ய முடியும்:

sudo apt install strace

இப்போது இந்த புதிய பதிப்பை நிறுவ விரும்புவோர் மூலக் குறியீட்டைப் பதிவிறக்கி தொகுக்க வேண்டும் உங்கள் கணினியில்.

அவர்கள் மூலக் குறியீட்டை இதனுடன் பதிவிறக்குகிறார்கள்:

git https://gitlab.com/strace/strace.git

அவர்கள் இதில் நுழைகிறார்கள்:

cd strace

அவர்கள் இதனுடன் தொகுக்கிறார்கள்:

./configure && make && make install

இறுதியாக பயன்பாடு தொடர்பாக, நீங்கள் வலையில் சில வழிகாட்டிகளைக் காணலாம்.