³¬ÊÊÓÃµÄ Linux ¸ß¼¶ÏÂÁ³ÌÐòÔ±Ò»¶¨Òª¶®£¡
Ç°ÑÔ
ÔÚÔËάµÄ¿ÓÀïÃþÅÀ¹ö´òºÃ¼¸ÄêÁË£¬ÎÒ»¹¼ÇµÃÎÒ¸Õ×îÏȵÄʱ¼ä£¬ÎÒÖ»»áʹÓÃһЩ¼òÆÓµÄÏÂÁд¾ç±¾µÄʱ¼ä£¬Ò²ÊÇÒª¶à¼òÆÓÓжà¼òÆÓ£¬ÒÔÊÇÓÐʱ¼äд³öÀ´µÄ¾ç±¾ÓÖ³¤ÓÖ³ô¡£
ÏñһЩ¸ß¼¶µãµÄÏÂÁºÃ±È˵ Xargs ÏÂÁî¡¢¹ÜµÀÏÂÁî¡¢×Ô¶¯Ó¦´ðÏÂÁîµÈ£¬ÈôÊǵ±³õÎÒÒªÊÇÖªµÀ£¬ÄÇÎÒÒ²¿ÉÄÜд³ö¾«Á·¸ßЧµÄ¾ç±¾¡£
²»¹Ü³öÓÚÈκÎÔµ¹ÊÔÓÉ£¬ÎÒ¶¼Ïë¶ÔһЩ Linux ʹÓõĸ߼¶ÏÂÁî¾ÙÐÐÓ÷¨ËµÃ÷£¬ÀûÈËÀû¼º£¬ÒԺ󲻼ǵõĻ°£¬ÎÒÒ²¿ÉÒÔתͷ·À´¿´¿´¡£
Ò»¡¢ÊÊÓÃµÄ xargs ÏÂÁî
ÔÚƽʱµÄʹÓÃÖУ¬ÎÒÒÔΪ xargs Õâ¸öÏÂÁîÕվɽÏΪÖ÷ÒªºÍÀû±ãµÄ¡£ÎÒÃÇ¿ÉÒÔͨ¹ýʹÓÃÕâ¸öÏÂÁ½«ÏÂÁîÊä³öµÄЧ¹û×÷Ϊ²ÎÊýת´ï¸øÁíÒ»¸öÏÂÁî¡£
ºÃ±È˵ÎÒÃÇÏëÕÒ³öij¸ö·¾¶ÏÂÒÔ .conf ×îºóµÄÎļþ£¬²¢½«ÕâЩÎļþ¾ÙÐзÖÀ࣬ÄÇôͨË×µÄ×ö·¨¾ÍÊÇÏȽ«ÒÔ .conf ×îºóµÄÎļþÏÈÕÒ³öÀ´£¬È»ºóÊä³öµ½Ò»¸öÎļþÖУ¬½Ó×Å cat Õâ¸öÎļþ£¬²¢Ê¹Óà file Îļþ·ÖÀàÏÂÁîÈ¥¶ÔÊä³öµÄÎļþ¾ÙÐзÖÀà¡£
Õâ¸öͨË×µÄÒªÁ컹¼òÖ±ÊÇÂÔÏÔƶÀ§£¬ÄÇôÕâ¸öʱ¼ä xargs ÏÂÁî¾ÍÅÉÉÏÓó¡ÁË¡£
Àý1£ºÕÒ³ö / Ŀ¼ÏÂÒÔ .conf ×îºóµÄÎļþ£¬²¢¾ÙÐÐÎļþ·ÖÀà
ÏÂÁ
find / -name *.conf -type f -print | xargs file
µÇ¼ºó¸´ÖÆ
Êä³öЧ¹ûÈçÏÂËùʾ£º
xargs ºóÃæ²»µ«½ö¿ÉÒÔ¼ÓÎļþ·ÖÀàµÄÏÂÁÄ㻹¿ÉÒÔ¼ÓÆäËûµÄÐí¶àÏÂÁºÃ±È˵×ÅʵһµãµÄtarÏÂÁÄã¿ÉÒÔʹÓÃfindÏÂÁîÅäºÏtarÏÂÁ½«Ö¸¶¨Â·¾¶µÄÌØÊâÎļþʹÓÃfindÏÂÁîÕÒ³öÀ´£¬È»ºóÅäºÏtarÏÂÁÕÒ³öµÄÎļþÖ±½Ó´ò°ü£¬ÏÂÁîÈçÏ£º
find / -name *.conf -type f -print | xargs tar cjf test.tar.gz
µÇ¼ºó¸´ÖÆ
¶þ¡¢ÏÂÁî»ò¾ç±¾ºǫ́ÔËÐÐ
ÓÐʱ¼äÎÒÃǾÙÐÐһЩ²Ù×÷µÄʱ¼ä£¬²»Ï£ÍûÎÒÃǵIJÙ×÷ÔÚÖն˻Ự¶ÏÁËÖ®ºó¾ÍËæ×ŶÏÁË£¬ÌØÊâÊÇһЩÊý¾Ý¿âµ¼Èëµ¼³ö²Ù×÷£¬ÈôÊÇÉæ¼°µ½´óÊý¾ÝÁ¿µÄ²Ù×÷£¬ÎÒÃDz»¿ÉÄÜ°ü¹ÜÎÒÃǵÄÍøÂçÔÚÎÒÃǵIJÙ×÷ʱ´ú²»³öÎÊÌ⣬ÒÔÊǺǫ́ÔËÐо籾»òÕßÏÂÁî¶ÔÎÒÃÇÀ´ËµÊÇÒ»´ó°ü¹Ü¡£
ºÃ±È˵ÎÒÃÇÏë°ÑÊý¾Ý¿âµÄµ¼³ö²Ù×÷ºǫ́ÔËÐУ¬²¢ÇÒ½«ÏÂÁîµÄ²Ù×÷Êä³ö¼Í¼µ½Îļþ£¬ÄÇôÎÒÃÇ¿ÉÒÔÕâô×ö£º£¨·´Ð±¸Ü´ú±í»»ÐУ¬¿ÉÒÔºöÂÔ£©
nohup mysqldump -uroot -pxxxxx ¡ªall-databases > ./alldatabases.sql &£¨xxxxxÊÇÃÜÂ룩
µÇ¼ºó¸´ÖÆ
ËäÈ»ÈôÊÇÄã²»ÏëÃÜÂëÃ÷ÎÄ£¬Ä㻹¿ÉÒÔÕâô×ö£º
nohup mysqldump -uroot -pxxxxx ¡ªall-databases > ./alldatabases.sql £¨ºóÃæ²»¼Ó&·ûºÅ£©
µÇ¼ºó¸´ÖÆ
Ö´ÐÐÁËÉÏÊöÏÂÁîºó£¬»áÌáÐѽÐÄãÊäÈëÃÜÂ룬ÊäÈëÃÜÂëºó£¬¸ÃÏÂÁÔÚǰ̨ÔËÐУ¬¿ÉÊÇÎÒÃǵÄÄ¿µÄÊǺóÌìÔËÐиÃÏÂÁÕâ¸öʱ¼äÄã¿ÉÒÔ°´ÏÂCtrl+Z£¬È»ºóÔÚÊäÈëbg¾Í¿ÉÒÔµÖ´ïµÚÒ»¸öÏÂÁîµÄЧ¹û£¬ÈøÃÏÂÁîºǫ́ÔËÐУ¬Í¬Ê±Ò²¿ÉÒÔÈÃÃÜÂëÒþ²ØÊäÈë¡£
ÏÂÁîºǫִ́ÐеÄЧ¹û»áÔÚÏÂÁîÖ´ÐеÄÄ¿½ñĿ¼ÏÂÁôÏÂÒ»¸önohup.outÎļþ£¬Éó²éÕâ¸öÎļþ¾ÍÖªµÀÏÂÁîÓÐûÓÐÖ´Ðб¨´íµÈÐÅÏ¢¡£
Èý¡¢ÕÒ³öÄ¿½ñϵͳÄÚ´æʹÓÃÁ¿½Ï¸ßµÄÀú³Ì
ÔÚÐí¶àÔËάµÄʱ¼ä£¬ÎÒÃÇ·¢Ã÷ÄÚ´æºÄÓýÏΪÑÏÖØ£¬ÄÇôÔõôÑù²Å»ªÕÒ³öÄÚ´æÏûºÄµÄÀú³ÌÅÅÐòÄØ£¿
ÏÂÁ
ps -aux | sort -rnk 4 | head -20
µÇ¼ºó¸´ÖÆ
Êä³öµÄµÚ4ÁоÍÊÇÄÚ´æµÄºÄÓðٷֱȡ£×îºóÒ»ÁоÍÊÇÏà¶ÔÓ¦µÄÀú³Ì¡£
ËÄ¡¢ÕÒ³öÄ¿½ñϵͳCPUʹÓÃÁ¿½Ï¸ßµÄÀú³Ì
ÔÚÐí¶àÔËάµÄʱ¼ä£¬ÎÒÃÇ·¢Ã÷CPUºÄÓýÏΪÑÏÖØ£¬ÄÇôÔõôÑù²Å»ªÕÒ³öCPUÏûºÄµÄÀú³ÌÅÅÐòÄØ£¿
ÏÂÁ
ps -aux | sort -rnk 3 | head -20
µÇ¼ºó¸´ÖÆ
Êä³öµÄµÚ3ÁÐΪCPUµÄºÄÓðٷֱȣ¬×îºóÒ»ÁоÍÊǶÔÓ¦µÄÀú³Ì¡£
Å£±Æ°¡£¡½Ó˽»î±Ø±¸µÄ N ¸ö¿ªÔ´ÏîÄ¿£¡¸ÏæÕä²Ø
µÇ¼ºó¸´ÖÆ
ÎÒÏë¸÷ÈËÓ¦¸ÃÒ²·¢Ã÷ÁË£¬sort ÏÂÁîºóµÄ3¡¢4×Åʵ¾ÍÊÇ´ú±í×ŵÚ3ö¾ÙÐÐÅÅÐò¡¢µÚ4ö¾ÙÐÐÅÅÐò¡£
Î塢ͬʱÉó²é¶à¸öÈÕÖ¾»òÊý¾ÝÎļþ
ÔÚÒ»Ñùƽ³£ÊÂÇéÖУ¬ÎÒÃÇÉó²éÈÕÖ¾ÎļþµÄ·½·¨¿ÉÄÜÊÇʹÓÃtailÏÂÁîÔÚÒ»¸ö¸öµÄÖÕ¶ËÉó²éÈÕÖ¾Îļþ£¬Ò»¸öÖն˾Ϳ´Ò»¸öÈÕÖ¾Îļþ¡£°üÀ¨ÎÒÔÚÄÚÒ²ÊÇ£¬¿ÉÊÇÓÐʱ¼äÒ²»áÒÔΪÕâÖÖ·½·¨ÂÔÏÔƶÀ§£¬×ÅʵÓиö¹¤¾ß½Ð×ömultitail¿ÉÒÔÔÚͳһ¸öÖÕ¶ËͬʱÉó²é¶à¸öÈÕÖ¾Îļþ¡£
Ê×ÏÈ×°ÖÃmultitail£º
wget ftp://ftp.is.co.za/mirror/ftp.rpmforge.net/redhat/el6/en/x86_64/dag/RPMS/multitail-5.2.9-1.el6.rf.x86_64.rpm yum -y localinstall multitail-5.2.9-1.el6.rf.x86_64.rpm
µÇ¼ºó¸´ÖÆ
multitail¹¤¾ßÖ§³ÖÎı¾µÄ¸ßÁÁÏÔʾ£¬ÄÚÈݹýÂËÒÔ¼°¸ü¶àÄã¿ÉÄÜÐèÒªµÄ¹¦Ð§¡£
ÈçϾÍÀ´Ò»¸öÓÐÓõÄÀý×Ó£º
´ËʱÎÒÃǼÈÏëÉó²ésecureµÄÈÕÖ¾Ö¸¶¨¹ýÂËÒªº¦×ÖÊä³ö£¬ÓÖÏëÉó²éʵʱµÄÍøÂçpingÇéÐΣº
ÏÂÁîÈçÏ£º
multitail -e "Accepted" /var/log/secure -l "ping www.zonelele.com"
µÇ¼ºó¸´ÖÆ
²»ÊǺÜÀû±ã£¿ÈôÊÇƽʱÎÒÃÇÏëÉó²éÁ½¸öÈÕÖ¾Ö®¼äµÄ¹ØÁªÐÔ£¬¿ÉÒÔÊÓ²ìÈÕÖ¾Êä³öÊÇ·ñÓд¥·¢µÈ¡£ÈôÊÇÍÑÀëÁ½¸öÖն˿ÉÄÜÍù·µ¾ÙÐÐÇл»ÓеãÆÌÕÅʱ¼ä£¬Õâ¸ömultitail¹¤¾ßÉó²éδ³¢²»ÊÇÒ»¸öºÃÒªÁì¡£
Áù¡¢Ò»Á¬ping²¢½«Ð§¹û¼Í¼µ½ÈÕÖ¾
Ðí¶àʱ¼ä£¬ÔËά×Ü»áÌýµ½Ò»¸öÉùÒô£¬ÊDz»ÊÇÍøÂç³öʲôÎÊÌâÁË°¡£¬µ¼ÖÂÓªÒµ·ºÆð¹ÖÒìµÄÖ¢×´£¬Ò»¶¨ÊÇЧÀÍÆ÷ÍøÂç³öÎÊÌâÁË¡£Õâ¸ö¾ÍÊÇË׳Ƶı³¹ø£¬ÓªÒµ³öÁËÎÊÌ⣬µÚһʱ¼äÏà¹ØÖ°Ô±ÕÒ²»µ½Ôµ¹ÊÔÓÉÐí¶àÇéÐÎϾͻá°ÑÎÊÌâ¹é½áÓÚЧÀÍÆ÷ÍøÂçÓÐÎÊÌâ¡£
Õâ¸öʱ¼äÄãÈ¥ping¼¸¸ö°ü°ÑЧ¹û¶ª³öÀ´£¬È˼һáÅú²µÄ㣬¸Õ¸ÕÄǶÎʱ¼äÓÐÎÊÌâ°ÕÁË£¬ÏÖÔÚÓªÒµ¶¼»Ö¸´Õý³£ÁË£¬ÍøÂçÒ»¶¨Õý³£°¡£¬Õâ¸öʱ¼äÔ¤¼ÆÄãÒªÆøËÀ¡£
ÄãÒªÊÇÔÙÄóözabbixµÈÍøÂç¼à¿ØµÄÊý¾Ý£¬Õâ¸öʱ¼ä¾Í²»Ì«Îȵ±ÁË£¬zabbixµÄÊÕÂÞÊý¾Ý¾àÀëÄã²»¿ÉÄÜÉèÖóÉ1ÃëÖÓ1´Î°É£¿Ð¡±à¾ÍÓöµ½¹ýÕâÑùµÄÎÊÌ⣬Ч¹ûÎÒͨ¹ýÒÔϵÄÏÂÁî¾ÙÐÐÁËping¼à¿ØÊÕÂÞ¡£
È»ºóÔÙÓÐÈËÈÃÎÒ±³¹øµÄʱ¼ä£¬ÎҰѳöÎÊÌâʱ¼ä¶ÎµÄpingÊý¾Ý¿â½ØÈ¡³öÀ´£¬¸÷È˹ûÕæ̸£¬Ð§¹ûÄǴα»ÎÒµð¸Ü»ØÈ¥ÁË£¬ÒÔºóËûÃǶ¼²»¸ÒÈÝÒ×˦¹øÁË£¬Õâ¸ö¸ÐÊܺð¡¡£
ÏÂÁ
ping api.jpush.cn | awk '{ print $0 " " strftime(¡°%Y-%m-%d %H:%M:%S¡±,systime()) }' >> /tmp/jiguang.log &
µÇ¼ºó¸´ÖÆ
Êä³öµÄЧ¹û»á¼Í¼µ½/tmp/jiguang.log ÖУ¬Ã¿ÃëÖÓÐÂÔöÒ»Ìõping¼Í¼£¬ÈçÏ£º
Æß¡¢Éó²étcpÅþÁ¬×´Ì¬
Ö¸¶¨Éó²é80¶Ë¿ÚµÄtcpÅþÁ¬×´Ì¬£¬ÓÐÀûÓÚÆÊÎöÅþÁ¬ÊÇ·ñÊÍ·Å£¬»òÕß¹¥»÷ʱ¾ÙÐÐ״̬ÆÊÎö¡£ÁíÍ⣬ËÑË÷ÃñÖÚºÅJava¼Ü¹¹Ê¦ÊÖÒÕºǫ́»Ø¸´¡°ÃæÊÔÌ⡱£¬»ñÈ¡Ò»·Ý¾ªÏ²Àñ°ü¡£
ÏÂÁ
netstat -nat |awk '{print $6}' |sort|uniq -c|sort -rn
µÇ¼ºó¸´ÖÆ
°Ë¡¢²éÕÒ80¶Ë¿ÚÇëÇóÊý×î¸ßµÄÇ°20¸öIP
ÓÐʱ¼äÓªÒµµÄÇëÇóÁ¿Í»È»ÉÏÈ¥ÁË£¬ÄÇôÕâ¸öʱ¼äÎÒÃÇ¿ÉÒÔÉó²éÏÂÇëÇóȪԴIPÇéÐΣ¬ÈôÊÇÊǼ¯ÖÐÔÚÉÙÊýIPÉϵģ¬ÄÇô¿ÉÄÜÊDZ£´æ¹¥»÷ÐÐΪ£¬ÎÒÃÇʹÓ÷À»ðǽ¾Í¿ÉÒÔ¾ÙÐзâ½û¡£ÏÂÁîÈçÏ£º
netstat -anlp|grep 80|grep tcp|awk '{print $5}' |awk -F: '{print $1}'|sort|uniq -c|sort -nr|head -n20
µÇ¼ºó¸´ÖÆ
¾Å¡¢sshʵÏֶ˿Úת·¢
¿ÉÄÜÐí¶àµÄÅóÙ¶¼Ìý˵¹ýsshÊÇlinuxϵÄÔ¶³ÌµÇ¼Çå¾²ÐÒ飬¾ÍÊÇͨË×µÄÔ¶³ÌµÇ¼ÖÎÀíЧÀÍÆ÷¡£¿ÉÊÇÓ¦¸ÃºÜÉÙÅóÙ»áÌý˵¹ýssh»¹¿ÉÒÔ×ö¶Ë¿Úת·¢¡£×ÅʵsshÓÃÀ´×ö¶Ë¿Úת·¢µÄ¹¦Ð§ÕվɺÜÇ¿Ê¢µÄ£¬ÏÂÃæ¾ÍÀ´×öÊ÷Ä£¡£
ʵÀýÅä¾°£ºÎÒÃǹ«Ë¾ÊÇÓб¤ÀÝ»úµÄ£¬ÈκβÙ×÷¾ùÐèÒªÔÚ±¤ÀÝ»úÉϾÙÐУ¬ÓÐд¿ª·¢Ö°Ô±ÐèÒª»á¼ûELasticSearchµÄheadÃæ°åÉó²é¼¯Èº×´Ì¬£¬¿ÉÊÇÎÒÃDz¢²»Ï뽫ElasticSearchµÄ9200¶Ë¿ÚÓ³Éä³öÈ¥£¬ÒÀÈ»Ïëͨ¹ý±¤ÀÝ»ú¾ÙÐлá¼û¡£ÒÔÊDzŻὫͨÍù±¤ÀÝ»ú£¨192.168.1.15£©µÄÇëÇóת·¢µ½Ð§ÀÍÆ÷ElasticSearch£¨192.168.1.19£©µÄ9200ÉÏ¡£
Àý×Ó£º
½«·¢Íù±¾»ú£¨192.168.1.15£©µÄ9200¶Ë¿Ú»á¼ûת·¢µ½192.168.1.19µÄ9200¶Ë¿Ú
ssh -p 22 -C -f -N -g -L 9200:192.168.1.19:9200 ihavecar@192.168.1.19
µÇ¼ºó¸´ÖÆ
¼Çס£ºÌõ¼þÊÇÏȾÙÐÐÃØÔ¿´«Êä¡£
ÏÂÁîÖ´ÐÐÍêºó£¬»á¼û192.168.1.15:9200¶Ë¿ÚÔòÕæʵÊÇ»á¼û192.168.1.19:9200¶Ë¿Ú¡£
ÒÔÉϾÍÊdz¬ÊÊÓÃµÄ Linux ¸ß¼¶ÏÂÁ³ÌÐòÔ±Ò»¶¨Òª¶®£¡µÄÏêϸÄÚÈÝ£¬¸ü¶àÇë¹Ø×¢±¾ÍøÄÚÆäËüÏà¹ØÎÄÕ£¡