Linuxϵͳµ÷Óà sigactionº¯ÊýÏê½â(Ò»)
¹¦ÄÜÃèÊö£º
´¦ÀíÐźš£¼È¿ÉÓÃÓÚÉ趨¶ÔÈÎÒâÐźŵĴ¦Àí·½Ê½£¬Ò²¿ÉÓÃÓÚ¼ìÑé¸ÃÐźŵÄĿǰԤÉè´¦Ö÷½Ê½¡£
Ó÷¨£º
#include <signal.h>
int sigaction(int signum, const struct sigaction *act, struct sigaction *oldact);
²ÎÊý£º
signum£º³ýÁËSIGKILLºÍSIGSTOPÖ®ÍâµÄÆäËüÈκÎÐźűàÂë¡£
act£ºÈç¹ûÖµ·ÇNULL£¬½«°²×°Îªsignum¹ØÁªÐźŵÄд¦Àí·½Ê½¡£
oldact£ºÈç¹ûÖµ·ÇNULL£¬´æ´¢ÒÔǰ¶Ôsignum¹ØÁªÐźŵĴ¦Àí·½Ê½¡£
sigactionµÄ½á¹¹ÐÎ̬ÈçÏ£º
struct sigaction {
void (*sa_handler)(int);
void (*sa_sigaction)(int, siginfo_t *, void *);
sigset_t sa_mask;
int sa_flags;
void (*sa_restorer)(void);
}
ÔÚһЩÌåϵÉÏ£¬sa_handlerºÍsa_sigaction¹²ÓÃÒ»¸öÁªºÏÌå(union)£¬ËùÒÔ²»ÒªÍ¬Ê±Ö¸¶¨Á½¸ö×ֶεÄÖµ¡£
sa_restorer×Ö¶ÎÒÑÌÔÌ£¬²»Ó¦¸ÃÔÙ±»Ê¹Óá£
sa_handler×Ö¶ÎÖ¸¶¨ÓësignumÐźŹØÁªµÄÐÐΪ£¬¿ÉÄÜÊÇSIG_DFLĬÈÏÐÐΪ£¬SIG_IGNºöÂÔ½ÓË͵½µÄÐźţ¬»òÕßÒ»¸öÐźŴ¦Àíº¯ÊýÖ¸Õë¡£Õâ¸öº¯ÊýÒÔÒ»¸öÐźűàÂë×÷ΪËüµÄΨһ²ÎÊý¡£
Èç¹ûsa_flagsÖдæÔÚSA_SIGINFO±êÖ¾£¬ÄÇôsa_sigaction½«×÷ΪsignumÐźŵĴ¦Àíº¯Êý¡£Õâ¸öº¯ÊýµÄµÚÒ»²ÎÊýÊÇÐźűàÂ룬µÚ¶þ²ÎÊýÊÇsiginfo_t½á¹¹µÄÖ¸Õ룬µÚÈý²ÎÊýÊÇucontext_t½á¹¹Ö¸Õë(ÔìÐÍΪvoid *)¡£
sa_maskÖ¸¶¨ÐźŴ¦Àíº¯ÊýÖ´ÐеĹý³ÌÖÐÓ¦±»×èÈûµÄÐźš£ÁíÍ⣬³ýÁËSA_NODEFER±êÖ¾±»Ö¸¶¨Í⣬´¥·¢ÐźŴ¦Àíº¯ÊýÖ´ÐеÄÄǸöÐźÅÒ²»á±»×èÈû¡£
sa_flagsÖ¸¶¨Ò»ÏµÁÐÓÃÓÚÐÞ¸ÄÐźŴ¦Àí¹ý³ÌÐÐΪµÄ±êÖ¾£¬ÓÉÏÂÃæµÄ0¸ö»ò¶à¸ö±ê־ͨ¹ýorÔËËã×éºÏ¶ø³É£º
SA_NOCLDSTOP //´Ë±ê־Ϊonʱ£¬¼ÙÈçsignumµÄÖµÊÇSIGCHLD£¬ÔòÔÚ×Ó½ø³ÌÍ£Ö¹»ò»Ö¸´Ö´ÐÐʱ²»»á´«ÐźŸøµ÷Óñ¾ÏµÍ³µ÷ÓõĽø³Ì¡£
SA_NOCLDWAIT //´Ë±ê־Ϊonʱ£¬µ±µ÷ÓôËϵͳµ÷ÓõĽø³ÌÖ®×Ó½ø³ÌÖÕֹʱ£¬ÏµÍ³²»»á½¨Á¢zombie½ø³Ì¡£
SA_RESETHAND //´Ë±ê־Ϊonʱ£¬ÐźŴ¦Àíº¯Êý½ÓÊÕµ½Ðźź󣬻áÏȽ«¶ÔÐźŴ¦ÀíµÄ·½Ê½ÉèΪԤÉ跽ʽ£¬¶øÇÒµ±º¯Êý´¦Àí¸ÃÐźÅʱ£¬ºóÀ´·¢ÉúµÄÐźŽ«²»»á±»×èÈû¡£
SA_ONSTACK //Èç¹ûÀûÓÃsigaltstack()½¨Á¢ÐźÅרÓöÑÕ»£¬Ôò´Ë±êÖ¾»á°ÑËùÓÐÐźÅËÍÍù¸Ã¶ÑÕ»¡£
SA_RESTART //´Ë±ê־Ϊonʱ£¬ºËÐÄ»á×Ô¶¯ÖØÆôÐźÅÖжϵÄϵͳµ÷Ó
Ïà¹ØÎĵµ£º
½øÐжàÏ̱߳à³Ì£¬×îÍ·Ì۵ľÍÊÇÄÇЩ¹²ÏíµÄÊý¾Ý¡£ÒòΪÄãÎÞ·¨ÖªµÀÄĸöÏ̻߳áÔÚÄĸöʱºò¶ÔËü½øÐвÙ×÷£¬ÄãÒ²ÎÞ·¨µÃÖªÄǸöÏ̻߳áÏÈÔËÐУ¬ÄĸöÏ̻߳áºóÔËÐС£ÏÂÃæ½éÉÜһЩ¼¼Êõ£¬Í¨¹ýËûÃÇ£¬Äã»áºÏÀí°²ÅÅÄãµÄÏß³ÌÖ®¼ä¶Ô×ÊÔ´µÄ¾ºÕù¡£
l »¥³âÌåMutex
l &nbs ......
²é¿´µ±Ç°ÅäÖÃ×Ö·û¼¯ locale
²é¿´È«²¿×Ö·û¼¯ locale -a
ÉèÖÃ×Ö·û¼¯ export LANG=zh_CN.gbk
easy
tcpdump Ò»¸ölinux¼àÌýÍøÂç·ÃÎʵŤ¾ß
¼àÌý·þÎñÆ÷¼°¶Ë¿Ú
tcpdump -nn -i eth0 src host www.codigg.com and src port 80
ÕýÔÚʹÓõÄsql
tcpdump -s 0 -l -w - dst port 3306 | strings ......
UNIXÊÇÀúÊ·×îÓÆ¾ÃµÄͨÓòÙ×÷ϵͳ¡£1969Ä꣬ÃÀ¹ú±´¶ûʵÑéÊÒµÄK.ThompsonºÍD.M.RitchieÔÚ¹æÄ£½ÏС¼°½Ï¼òµ¥µÄ·Öʱ²Ù×÷ϵͳMULTICSµÄ»ù´¡ÉÏ¿ª·¢³öUNIX, µ±Ê±ÊÇÔÚDECµÄPDP—7СÐͼÆËã»úÉÏʵÏֵģ¬1970ÄêÕýʽͶÈëÔËÐС£´ËºóÊýÄ꣬UNIXÒ»Ö±ÊÇÒ»¸öÏÞÓÚÔÚAT&TÄÚ²¿Ê¹ÓõIJÙ×÷ϵͳ¡£1971Ä꣬·¢Õ¹³öÒÔ PDP- ......
tar ÎļþÓëĿ¼ѹËõÃüÁî
tar [-cxtzjvfpPN] ÎļþÓëĿ¼ ....
²ÎÊý£º
-c £º½¨Á¢Ò»¸öѹËõÎļþµÄ²ÎÊýÖ¸Áî(create µÄÒâ˼)£»
-x £º½â¿ªÒ»¸öѹËõÎļþµÄ²ÎÊýÖ¸Á
-t £º²é¿´ tarfile ÀïÃæµÄÎļþ£¡
ÌØ±ð×¢Ò⣬ÔÚ²ÎÊýµÄÏ´ïÖУ¬ c/x/t ½öÄÜ´æÔÚÒ»¸ö£¡²»¿Éͬʱ´æÔÚ£¡ÒòΪ²»¿ÉÄÜͬʱѹËõÓë½âѹËõ¡£
-z £ºÊÇ·ñͬʱ¾ßÓÐ gzip µÄ ......