Ò׽ؽØͼÈí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

linuxϵĵ÷ÊÔ¹¤¾ß


linuxϵĵ÷ÊÔ¹¤¾ß
   Ëæ×ÅXPµÄÁ÷ÐУ¬ÈËÃÇÔ½À´Ô½×¢ÖØÈí¼þµÄÇ°ÆÚÉè¼Æ¡¢ºóÆÚµÄʵÏÖ£¬ÒÔ¼°¹á´©ÓÚÆäÖеIJâÊÔ¹¤×÷£¬¾­¹ýÕâ¸ö¹ý³Ì³öÀ´µÄ×ÔÈ»ÊǸßÖÊÁ¿µÄÈí¼þ¡£ÉõÖÁÓÐÈËÉù³ÆXP »áÌÔÌ­µ÷ÊÔÆ÷£¡Õ⵱ȻÊÇÓÐÒ»¶¨µÀÀíµÄ£¬È»¶ø¾ÍÄ¿Ç°µÄÏÖʵÀ´¿´£¬Õ⻹ÊÇÒ»ÖÖÀíÏë¡£ÔÚÈÕ³£¹¤×÷ÖУ¬µ÷ÊÔ¹¤¾ß»¹ÊDZز»¿ÉÉٵġ£ÔÚLinuxÏ£¬µ÷ÊÔ¹¤¾ß²¢·ÇÖ»ÓÐ gdb£¬»¹ÓкܶàÆäËüµ÷ÊÔ¹¤¾ß£¬ËüÃǶ¼¸÷ÓÐËù³¤£¬²àÖØ·½ÃæÒ²ÓÐËù²»Í¬¡£±¾ÎĽéÉܼ¸ÖÖ±ÊÕß³£Óõĵ÷ÊÔ¹¤¾ß£º
 
1. mtrace
ÔÚlinuxÏ¿ª·¢Ó¦ÓóÌÐò£¬ÓÃC/C++ÓïÑԵľӶࡣÄÚ´æй¶ºÍÄÚ´æÔ½½çµÈÄÚ´æ´íÎó£¬ÎÞÒÉÊÇÆäÖÐ×îÍ·ÌÛµÄÎÊÌâÖ®Ò»¡£glibcΪ½â¾öÄÚ´æ´íÎóÌṩÁËÁ½ÖÖ·½°¸£º
Ò»ÖÖÊÇhookÄÚ´æ¹ÜÀíº¯Êý¡£hookÄÚ´æ¹ÜÀíº¯Êýºó£¬Äã¿ÉÒÔͨ¹ý¼ÇÏÂÄÚ´æ·ÖÅäµÄÀúÊ·¼Ç¼£¬ÔÚ³ÌÐòÖÕֹʱ²é¿´ÊÇ·ñÓÐÄÚ´æй¶£¬ÕâÑù¾Í¿ÉÒÔÕÒ³öÄÚ´æй¶µÄµØ·½ÁË¡£ÄãÒ²¿ÉÒÔͨ¹ýÔÚËù·ÖÅäÄÚ´æµÄÊ×βдÈëÌØÊâµÄ±êÖ¾£¬ÔÚÊÍ·ÅÄÚ´æʱ¼ì²é¸Ã±êÖ¾ÊÇ·ñ±»ÆÆ»µÁË£¬ÕâÑù¾Í¿ÉÒÔ´ïµ½¼ì²éÄÚ´æÔ½½çÎÊÌâµÄÄ¿µÄ¡£
ÁíÍâÒ»ÖÖ·½·¨¸ü¼òµ¥£¬glibcÒѾ­ÎªµÚÒ»ÖÖ·½°¸ÌṩÁËĬÈϵÄʵÏÖ£¬ÄãÒª×öµÄÖ»ÊÇÔÚÌض¨µÄλÖõ÷ÓÃmtrace/muntraceÁ½¸öº¯Êý£¬ËüÃǵĺ¯ÊýÔ­ÐÍÈçÏ£º
#include
void mtrace(void);
void muntrace(void);
Äã¿ÉÄÜ»áÎÊ£¬ÔÚÄÄÀïµ÷ÕâÁ½ÖÖº¯Êý×îºÃ£¿ÕâûÓй̶¨µÄ´ð°¸£¬ÒªÊÓ¾ßÌåÇé¿ö¶ø¶¨¡£¶ÔÓÚС³ÌÐòÀ´Ëµ£¬ÔÚ½øÈëmainʱµ÷ÓÃmtrace£¬ÔÚÍ˳ömainº¯Êýʱµ÷ÓÃmuntrace¡£¶ÔÓÚ´óÐÍÈí¼þ£¬ÕâÑù×ö¿ÉÄÜ»á¼Ç¼¹ý¶àµÄÐÅÏ¢£¬·ÖÎöÕâЩ¼Ç¼»á±È½ÏÂý£¬Õâʱ¿ÉÒÔÔÚÄãËù»³ÒÉ´úÂëµÄÁ½¶Ëµ÷Óá£
ÁíÍ⣬»¹ÐèÒªÉèÖÃÒ»¸ö»·¾³±äÁ¿MALLOC_TRACE£¬ËüÊÇÒ»¸öÎļþÃû£¬Òª±£Ö¤µ±Ç°Óû§ÓÐȨÏÞ´´½¨ºÍдÈë¸ÃÎļþ¡£glibcµÄÄÚ´æ¹ÜÀíÆ÷»á°ÑÄÚ´æ·ÖÅäµÄÀúÊ·ÐÅϢдÈëµ½MALLOC_TRACEÖ¸¶¨µÄÎļþÖС£
³ÌÐòÔËÐÐÍê±Ïºó£¬Ê¹ÓÃmtrace¹¤¾ß·ÖÎöÕâЩÄÚ´æ·ÖÅäÀúÊ·ÐÅÏ¢£¬¿ÉÒÔ²é³öÄÚ´æ´íÎóµÄλÖã¨mtraceÔÚglibc-utilsÈí¼þ°üÀï)¡£
2. strace
ÔÚ±à³Ìʱ£¬¼ì²éº¯ÊýµÄ·µ»ØÖµÊÇÒ»ÖÖºÃÏ°¹ß¡£¶ÔÓÚÏñglibcµÈ±ê×¼CµÄº¯Êý£¬¹â¼ì²é·µ»ØÖµÊDz»¹»µÄ£¬»¹ÐèÒª¼ì²éerrnoµÄÖµ¡£ÕâÑùµÄ³ÌÐòÍùÍùÏÔµÃÈß³¤£¬²»¹»¼ò½à¡£Í¬Ê±Ò²¿ÉÄÜÊdzöÓÚ͵ÀÁµÄÔ­Òò£¬´ó¶àÊý³ÌÐòÀﲢûÓÐ×öÕâÑùµÄ¼ì²é¡£
ÕâÑùµÄ³ÌÐò£¬Ò»µ©³öÏÖ´íÎó£¬Óõ÷ÊÔÆ÷Ò»²½Ò»²½¶¨Î»´íÎó£¬È»ºóÏë·¨²é³ö´íÎóµÄÔ­Òò£¬Ò²ÊÇ¿ÉÒԵģ¬²»¹ý±È½ÏÂé·³£¬¶Ôµ÷ÊÔÆ÷À´ËµÓÐЩ´ó²ÄСÓ㬲»Ì«¿ÉÈ¡¡£Õâʱ£¬ÓÃstraceÃüÁî¿ÉÄÜ»á¸ü·½±ãÒ»µã¡£Ëü¿ÉÒÔÏÔʾ¸÷¸öϵͳµ÷ÓÃ/ÐźŵÄÖ´Ðйý³ÌºÍ½á¹û¡£±ÈÈçÎļþ´ò¿ª³ö´í£¬Ò»Ñ۾Ϳ´³ö


Ïà¹ØÎĵµ£º

ÐÞ¸Ä Linux Ö÷»úÃû

Linux ÏÂʲô¶¼±È½ÏÂé·³£¬¾ÍÁ¬ÐÞ¸ÄÖ÷»úÃûÒ²²»ÀýÍâ¡£
Linux °²×°ºÃºó£¬ÆäĬÈϵÄÖ÷»úÃûÊÇ localhost¡£ÐÞ¸Ä Linux Ö÷»úÃûÐèÒª3²½¡£
ʹÓà hostname Ð޸ĵ±Ç°Ö÷»úÃû¡£
hostname new-hostname
ÐÞ¸Ä /etc/sysconfig/network  ÅäÖÃÎļþ£¬ÒÔ±ãÏ´ÎÖØÆôµÄʱ£¬Ê¹ÓÃеÄÖ÷»úÃû¡£
´ò¿ª /etc/sysconfig/network Îļþ£ ......

Linux¹²Ïí¿â

¹²Ïí¿âµÄÃüÃû¹ßÀý
°´ÕÕ¹²Ïí¿âµÄÃüÃû¹ßÀý£¬Ã¿¸ö¹²Ïí¿âÓÐÈý¸öÎļþÃû£ºreal name¡¢sonameºÍlinker
name¡£ÕæÕýµÄ¿âÎļþ£¨¶ø²»ÊÇ·ûºÅÁ´½Ó£©µÄÃû×ÖÊÇreal
name£¬°üº¬ÍêÕûµÄ¹²Ïí¿â°æ±¾ºÅ¡£ÀýÈçÉÏÃæµÄlibcap.so.1.10¡¢libc-2.8.90.soµÈ¡£
sonameÊÇÒ»¸ö·ûºÅÁ´½ÓµÄÃû×Ö£¬Ö»°üº¬¹²Ïí¿âµÄÖ÷°æ±¾ºÅ£¬Ö÷°æ±¾ºÅÒ»Ö¼´¿É±£Ö¤¿âº¯ÊýµÄ½Ó¿ ......

¡¾×ª¡¿linux VIʹÓÃ

vi±à¼­Æ÷ÊÇËùÓÐUnix¼°Linuxϵͳϱê×¼µÄ±à¼­Æ÷£¬ËüµÄÇ¿´ó²»Ñ·É«ÓÚÈκÎ×îеÄÎı¾±à¼­Æ÷£¬ÕâÀïÖ»ÊǼòµ¥µØ½éÉÜÒ»ÏÂËüµÄÓ÷¨ºÍһС²¿·ÖÖ¸Áî¡£ÓÉÓÚ
¶ÔUnix¼°LinuxϵͳµÄÈκΰ汾£¬vi±à¼­Æ÷ÊÇÍêÈ«ÏàͬµÄ£¬Òò´ËÄú¿ÉÒÔÔÚÆäËûÈκνéÉÜviµÄµØ·½½øÒ»²½Á˽âËü¡£ViÒ²ÊÇLinuxÖÐ×î»ù±¾µÄÎı¾±à
¼­Æ÷£¬Ñ§»áËüºó£¬Äú½«ÔÚLinuxµÄÊÀ½çÀﳩÐÐ ......

¹ØÓÚLINUXÖеÄFORKº¯Êý

Ò»Ö±ÏëдµãLINUXÖеÄFORKº¯Êý,µ«ÊÇ°É,ÎÒʵÔÚÊÇÌ«ÀÁÁË,ÔÙ¼ÓÉÏÎIJɲ»ÔõôºÃ,ËùÒԾʹÓÍøÉÏÕÒÁËƪдµÄ²»´íµÄÎÄÕÂ,¿´ÍêÖ®ºóÓ¦¸Ã¶ÔFORKº¯ÊýÓÐÒ»¶¨µÄÁ˽â~~
 
¸ø³öÈçÏÂC³ÌÐò£¬ÔÚlinuxÏÂʹÓÃgcc±àÒ룺
1 #include "stdio.h"
2 #include "sys/types.h"
3 #include "unistd.h"

5  int  main()
6 ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ