Linux ûÓж¨ÒåµÄ·ûºÅ µ÷ÊÔ·½·¨ nmÃüÁî
nmÃüÁî
[
ÔÚGNU CÓïÑÔ¿âÌṩµÄÄÚÈÝÖУ¬ÓнӿڿÉÒÔÓÃÀ´×öÕâ¼þÊ¡£ÓÃÏÂÃæµÄÃüÁî²é¿´£º
nm -D /lib/libc.so.6 | grep log
]
nmÃüÁÊDZȽϼòµ¥¶øÇÒÇ¿´óµÄ¡£ËüÓÃÀ´ÁгöÒ»¸öÄ¿±êÎļþÖеĸ÷ÖÖ·ûºÅ¡£·ûºÅµÄÖÖÀàºÜ¶à£¬ÒÔÏÂÊÇһЩ³£¼ûµÄ·ûºÅÀàÐÍ
nmÊä³ö×Ö·û
º¬Òå
R
Read only symbol. ±ÈÈçÔÚ´úÂëÖÐÓÐÒ»¸öconst MAXDATA = 3095; ÔòMAXDATA¾ÍÊÇÒ»¸öRead only symbol
N
ÕâÊÇÒ»¸öµ÷ÊÔ·ûºÅ
D
ÕâÊÇÒ»¸öÒѾ³õʼ»¯µÄ±äÁ¿µÄ·ûºÅ¡£±ÈÈç´úÂëÖÐint i = 1ºÍchar *str = "Hello"ÔòiºÍstr¶¼ÊÇÕâÖÖÀàÐ͵ķûºÅ
T
Text¶ÎµÄ·ûºÅ¡£×Ó³ÌÐò¶¼ÊÇÕâÖÖ·ûºÅ£¬±ÈÈçÎļþÖÐʵÏÖÁËÒ»¸öº¯Êýfunction£¬Ôòfunction¾ÍÊÇÕâÖÖ·ûºÅ
U
䶨ÒåµÄ·ûºÅ¡£Èç¹ûÎļþÖÐÒýÓÃÁ˲»´æÔڵĺ¯Êý£¬ÔòÕâЩ䶨ÒåµÄº¯Êý·ûºÅ¾ÍÊÇÕâÖÖÀàÐÍ
S
δ³õʼ»¯µÄ·ûºÅ£¬±ÈÈçÈ«¾Ö±äÁ¿int s;ÔòsµÄ·ûºÅ¾ÍÊÇ´ËÀàÐÍ
nmÃüÁîµÄÏêϸÓ÷¨ÒÔ¼°Àý×Ó¼ûÕýÎÄ¡£
ÏÈÀ´Àý×Ó£¬ÒÔÏÂÊÇa.cµÄÄÚÈÝ£º
#include <stdio.h>
static int s_global;
int i = 1;
char *str = "hello, world";
const ID = 10;
extern int e_global;
void function()
{
printf("Hello");
}
int get_x()
{
int x;
x = 33;
return x;
}
ÔÚÖ´ÐÐ"gcc -g -O -c a.c"²úÉúa.oÖ®ºó£¬ÓÃ"nm -A a.o"µÄÊä³öΪ£º
a.o:00000000 R ID
a.o:00000000 T function
a.o:00000014 T get_x
a.o:00000000 D i
a.o: U printf
a.o:00000000 b s_global
a.o:00000004 D str
nmµÄÓ÷¨
nmµÄÓ÷¨ºÜ¼òµ¥£¬ÒÔϼ¸¸ö¹Ø¼ü×ֱȽϳ£Óãº
1¡¢"-A"£¬Áгö·ûºÅÃûµÄʱºòͬʱÏÔʾÀ´×ÔÓÚÄĸöÎļþ¡£
ÕâÔÚͬʱÁгö¶à¸öÎļþ£¨±ÈÈçÒ»¸öÁ´½Ó¿â£©µÄ·ûºÅʱ±È½ÏÓÐÓÃ
2¡¢"-a"£¬ÁгöËùÓзûºÅ
Õ⽫»á°Ñµ÷ÊÔ·ûºÅÒ²ÁгöÀ´¡£Ä¬ÈÏ״̬ϵ÷ÊÔ·ûºÅ²»»á±»Áгö¡£
3¡¢"-l"£¬Áгö·ûºÅÔÚÔ´´úÂëÖжÔÓ¦µÄÐкÅ
Ö¸¶¨Õâ¸ö²ÎÊýºó£¬nm½«ÀûÓõ÷ÊÔÐÅÏ¢ÕÒ³öÎļþÃûÒÔ¼°·ûºÅµÄÐкš£¶ÔÓÚÒ»¸öÒѶ¨Òå·ûºÅ£¬½«»áÕÒ³öÕâ¸ö·ûºÅ¶¨ÒåµÄÐкţ¬¶ÔÓÚ䶨Òå·ûºÅ,ÏÔʾΪ¿Õ
4¡¢"-n"£¬¸ù¾Ý·ûºÅµÄµØÖ·À´ÅÅÐò
ĬÈÏÊǰ´·ûºÅÃû³ÆµÄ×Öĸ˳ÐòÅÅÐòµÄ
5¡¢"-u"£¬Ö»Á
Ïà¹ØÎĵµ£º
linux limits.conf ÅäÖÃ
¡¡¡¡limits.conf Îļþʵ¼ÊÊÇ Linux PAM£¨²åÈëʽÈÏ֤ģ¿é£¬Pluggable Authentication Modules£©ÖÐ pam_limits.so µÄÅäÖÃÎļþ£¬¶øÇÒÖ»Õë¶ÔÓÚµ¥¸ö»á»°¡£
¡¡¡¡limits.confµÄ¸ñʽÈçÏ£º
¡¡¡¡username|@groupname type resource limit
¡¡¡¡username|@groupname£ºÉèÖÃÐèÒª±»ÏÞÖÆµÄÓû§Ãû£¬×éÃûÇ°Ãæ¼Ó@º ......
linuxÄÚºËÉè¼ÆÓëʵÏÖ£¨9£©¶¨Ê±Æ÷ºÍʱ¼ä¹ÜÀí
ʱ¼ä¹ÜÀíÔÚÄÚºËÖÐÕ¼Óзdz£ÖØÒªµÄµØÎ»¡£Ïà¶ÔÓÚʼþÇý¶¯£¬ÄÚºËÖÐÓдóÁ¿µÄº¯Êý¶¼ÊÇ»ùÓÚʱ¼äÇý¶¯µÄ¡£Äں˱ØÐë¹ÜÀíϵͳµÄÔËÐÐʱ¼äÒÔ¼°µ±Ç°µÄÈÕÆÚºÍʱ¼ä¡£
ÖÜÆÚ²úÉúµÄʼþ¶¼ÊÇÓÉϵͳ¶¨Ê±Æ÷Çý¶¯µÄ¡£ÏµÍ³¶¨Ê±Æ÷ÊÇÒ»Öֿɱà³ÌÓ²¼þоƬ£¬ËüÒѹ̶¨ÆµÂʲúÉúÖ ......
ʹÓÃselectº¯Êý¿ÉÒÔÒÔ·Ç×èÈûµÄ·½Ê½ºÍ¶à¸ösocketͨÐÅ¡£³ÌÐòÖ»ÊÇÑÝʾselectº¯ÊýµÄʹÓ㬹¦Äܷdz£¼òµ¥£¬¼´Ê¹Ä³¸öÁ¬½Ó¹Ø±ÕÒÔºóÒ²²»»áÐ޸ĵ±Ç°Á¬½ÓÊý£¬Á¬½ÓÊý´ïµ½×î´óÖµºó»áÖÕÖ¹³ÌÐò¡£
1. ³ÌÐòʹÓÃÁËÒ»¸öÊý×éfd_A£¬Í¨ÐÅ¿ªÊ¼ºó°ÑÐèҪͨÐŵĶà¸ösocketÃèÊö·û¶¼·ÅÈë´ËÊý×é¡£
2. Ê×ÏÈÉú³ÉÒ»¸ö½Ðsock_fdµÄsocketÃèÊö·û£¬ÓÃÓÚ¼àÌý¶Ë¿ ......
linuxϾ²Ì¬¿âǶÌ×ʹÓÃ
ǰÌáÊÇÄã»áÔÚlinuxϵ÷Óþ²Ì¬¿âºÍ¶¯Ì¬¿âºÍMakfile±à³Ì(µ±È»²»»áMakfileÖ±½ÓÔÚÖÕ¶ËÃüÁîÒ²³É)
±¾ÀýÊÇÏÈÓÉStringLen.h,StringLen.cÉú³Élibrak.a
È»ºóÀûÓÃStringLen2.h£¬StringLen2.²¢µ÷ÓÃlibrak.aÉú³Élibrak2.a
×îºóÀûÓÃStringLen3.h,StringLen3.cµ÷ÓÃlibrak2.a Éú³Élibrak3.so
------------------ ......
Çл»µ½rootÓû§ÏÂ,
service iptables status ÓÃÓڲ鿴ÊÇ·ñÓпªÆô·À·½Ç½.
service iptables stop ÓÃÓڹرշÀ»ðǽ.
service iptables start ÓÃÓÚ´ò¿ª·À»ðǽ.
·À»ðǽµÄ¿ªÆôÓÐʱ»áÏÞÖÆÍⲿ·ÃÎÊ·þÎñÆ÷ÉϵĶ˿Úʧ°Ü. ......