linux strace ½ø³Ì¸ú×Ù
linux strace ½ø³Ì¸ú×Ù
µ÷ÓÃ:
strace [ -dffhiqrtttTvxx ] [ -acolumn ] [ -eexpr ] ...
[ -ofile ] [ -ppid ] ... [ -sstrsize ] [ -uusername ] [ command [ arg ... ] ]
strace -c [ -eexpr ] ... [ -Ooverhead ] [ -Ssortby ] [ command [ arg ... ] ]
¹¦ÄÜ:
¸ú×Ù³ÌʽִÐÐʱµÄϵͳµ÷ÓúÍËù½ÓÊÕµÄÐźÅ.ͨ³£µÄÓ÷¨ÊÇstraceÖ´ÐÐÒ»Ö±µ½commande½áÊø.
²¢ÇÒ½«Ëùµ÷ÓõÄϵͳµ÷ÓõÄÃû³Æ¡¢²ÎÊýºÍ·µ»ØÖµÊä³öµ½±ê×¼Êä³ö»òÕßÊä³öµ½-oÖ¸¶¨µÄÎļþ.
straceÊÇÒ»¸ö¹¦ÄÜÇ¿´óµÄµ÷ÊÔ,·ÖÎöÕï¶Ï¹¤¾ß.Ä㽫·¢ÏÖËûÊÇÒ»¸ö¼«ºÃµÄ°ïÊÖÔÚÄãÒªµ÷ÊÔÒ»¸öÎÞ·¨¿´µ½Ô´Âë»òÕßÔ´ÂëÎÞ·¨ÔÚ±àÒëµÄ³ÌÐò.
Ä㽫ÇáËɵÄѧϰµ½Ò»¸öÈí¼þÊÇÈçºÎͨ¹ýϵͳµ÷ÓÃÀ´ÊµÏÖËûµÄ¹¦ÄܵÄ.¶øÇÒ×÷Ϊһ¸ö³ÌÐòÉè¼ÆÊ¦,Äã¿ÉÒÔÁ˽⵽ÔÚÓû§Ì¬ºÍÄÚºË̬ÊÇÈçºÎͨ¹ýϵͳµ÷ÓúÍÐźÅÀ´ÊµÏÖ³ÌÐòµÄ¹¦ÄܵÄ.
straceµÄÿһÐÐÊä³ö°üÀ¨ÏµÍ³µ÷ÓÃÃû³Æ,È»ºóÊDzÎÊýºÍ·µ»ØÖµ.Õâ¸öÀý×Ó:
strace cat /dev/null
ËûµÄÊä³ö»áÓÐ:
open("/dev/null",O_RDONLY) = 3
ÓдíÎó²úÉúʱ,Ò»°ã»á·µ»Ø-1.ËùÒÔ»áÓдíÎó±êÖ¾ºÍÃèÊö:
open("/foor/bar",)_RDONLY) = -1 ENOENT (no such file or directory)
ÐźŽ«Êä³öιÐźűêÖ¾ºÍÐźŵÄÃèÊö.¸ú×Ù²¢ÖжÏÕâ¸öÃüÁî"sleep 600":
sigsuspend({}
--- SIGINT (Interrupt) ---
+++ killed by SIGINT +++
²ÎÊýµÄÊä³öÓÐЩ²»Ò»ÖÂ.ÈçshellÃüÁîÖÐµÄ ">>tmp",½«Êä³ö:
open("tmp",O_WRONLY|O_APPEND|A_CREAT,0666) = 3
¶ÔÓڽṹָÕë,½«½øÐÐÊʵ±µÄÏÔʾ.Èç:"ls -l /dev/null":
lstat("/dev/null",{st_mode=S_IFCHR|0666},st_rdev=makdev[1,3],...}) = 0
Çë×¢Òâ"struct stat" µÄÉùÃ÷ºÍÕâÀïµÄÊä³ö.lstatµÄµÚÒ»¸ö²ÎÊýÊÇÊäÈë²ÎÊý,¶øµÚ¶þ¸ö²ÎÊýÊÇÏòÍâ´«Öµ.
µ±Äã³¢ÊÔ"ls -l" Ò»¸ö²»´æÔÚµÄÎļþʱ,»áÓÐ:
lstat(/foot/ball",0xb004) = -1 ENOENT (no such file or directory)
char*½«×÷ΪCµÄ×Ö·û´®ÀàÐÍÊä³ö.ûÓÐ×Ö·û´®Êä³öʱһ°ãÊÇchar* ÊÇÒ»¸öתÒå×Ö·û,Ö»Êä³ö×Ö·û´®µÄ³¤¶È.
µ±×Ö·û´®¹ý³¤ÊÇ»áʹÓÃ"..."Ê¡ÂÔ.ÈçÔÚ"ls -l"»áÓÐÒ»¸ögepwuidµ÷ÓöÁÈ¡passwordÎļþ:
read(3,"root::0:0:System Administrator:/"...,1024) = 422
µ±²ÎÊýÊǽṹÊý×éʱ,½«°´ÕÕ¼òµ¥µÄÖ¸ÕëºÍÊý×éÊä³öÈç:
getgro
Ïà¹ØÎĵµ£º
MySQL :: Linux ÏÂ×Ô¶¯±¸·ÝÊý¾Ý¿âµÄ shell ½Å±¾
Linux ·þÎñÆ÷ÉϵijÌÐòÿÌì¶¼ÔÚ¸üРMySQL Êý¾Ý¿â£¬ÓÚÊǾÍÏëÆðдһ¸ö shell ½Å±¾£¬½áºÏ crontab£¬¶¨Ê±±¸·ÝÊý¾Ý¿â¡£Æäʵ·Ç³£¼òµ¥£¬Ö÷Òª¾ÍÊÇʹÓà MySQL ×Ô´øµÄ mysqldump ÃüÁî¡£
½Å±¾ÄÚÈÝÈçÏ£º
#!/bin/sh
# File: /home/mysql/backup.sh
# Database info
DB_NAME=" ......
Æô¶¯mysql: /etc/rc.d/init.d/mysql start
ÐÞ¸ÄÃÜÂë: ¸ñʽ£ºmysqladmin -uÓû§Ãû -p¾ÉÃÜÂë password ÐÂÃÜÂë
ʹÓÃÃÜÂëµÇ¼: mysql -u root -p
ÏÔʾÊý¾Ý¿â: show databases;
Ñ¡ÔñÊý¾Ý¿â: use Êý¾Ý¿âÃû;
ÏÔʾ±í: show tables;
ÏÔʾ±í½á¹¹: descibe ±íÃû;
Ô¶³ÌµÇ¼mysqlÐèÒª¿ªÆôÈ ......
http://sourceware.org/ml/glibc-bugs/2008-11/msg00073.html
http://www.nabble.com/-Bug-nptl-7057--New:-pthread-rwlock-does-not-implement-'writer-preferred'-option-td20703744.html
pthread rwlock does not implement 'writer preferred' option
linux ¶ÁÐ´Ëø
¶¨Ò壨ȫ¾Ö±äÁ¿£©£º
pthread_rwlock_t &nbs ......
linuxÖеĴ󲿷ÖÇý¶¯³ÌÐò,ÊÇÒÔÄ£¿éµÄÐÎʽ±àдµÄ.ÕâЩÇý¶¯³ÌÐòÔ´Âë¿ÉÒÔÐ޸ĵ½ÄÚºËÖÐ,Ò²¿ÉÒÔ°ÑËûÃDZàÒë³ÉÄ£¿éÐÎÊÆ,ÔÚÐèÒªµÄʱºò¶¯Ì¬¼ÓÔØ.
Ò»¸öµäÐ͵ÄÇý¶¯³ÌÐò,´óÌåÉÏ¿ÉÒÔ·ÖΪÕâô¼¸¸ö²¿·Ö:
1¡¢×¢²áÉ豸
ÔÚϵͳ³õÆô,»òÕßÄ£¿é¼ÓÔØÊ±ºò,±ØÐ뽫É豸µÇ¼Çµ½ÏàÓ¦µÄÉ豸Êý×é,²¢·µ»ØÉ豸µÄÖ÷Çý¶¯ºÅ,ÀýÈç:¶Ô¿ìÉ豸À´Ëµµ÷ÓÃrefister_b ......