linuxÍøÂç±à³Ì
ÍøÂç³ÌÐòºÍÆÕͨ³ÌÐò×î´óµÄÇø±ð¾ÍÊÇ,ÍøÂç³ÌÐòÊÇÓÉÁ½²¿·Ö×é³ÉµÄ--server/client.Ò»°ãÇé¿öÏÂ,ÊÇÏÈÔËÐÐserver¶ËÉϵijÌÐò,È»ºóµÈ´ýclient¶ËÉϵijÌÐòÔËÐв¢½¨Á¢Á¬½Ó,server¶ËÉϵijÌÐòÔÚÒ»¸ö¶Ë¿Ú¼àÌý,µÈ´ýclient¶Ë·¢À´µÄÇëÇó.
int socket(int domain,int type,int protocol)
domain:˵Ã÷ͨѶ³ÌÐòËùÔÚÖ÷»úËù²ÉÓõÄͨѶÐÒéÀà(AF_INETºÍAF_UNIXµÈ);AF_UNIXÖ»ÄÜÓÃÓÚµ¥Ò»µÄUNIXϵͳ½ø³Ì¼äͨѶ,AF_INETÊÇÕë¶ÔinternetµÄ,¿ÉÒÔÓÃÓÚÔ¶³ÌÖ÷»ú¼äµÄͨѶ;
type:ÍøÂç³ÌÐòËù²ÉÈ¡µÄͨѶÐÒé(SOCK_STREAMºÍSOCK_DGRAM);
protocl:Ëù²ÉÈ¡µÄÐÒé,Ò»°ãÉèÖÃΪ0¾Í¿ÉÒÔÁË,Ö÷»ú»á×Ô¶¯Ñ¡ÔñºÏÊʵÄÐÒé.
int bind(int sockfd,struct sockaddr * myaddr,int addrlen)
sockfd:ÊÇsocketµÄ·µ»ØµÄÎļþÃèÊö·û,ÓÃÓÚ¼àÌýµÄsocket;
addrlen:ÊÇsockaddr½á¹¹µÄ³¤¶È;
myaddr:ÊÇÒ»¸öÖ¸ÏòsockaddrµÄ½á¹¹ÌåµÄÖ¸Õë;
¶ÔÓÚsockaddr½á¹¹ÌåµÄ¶¨Òå:
struct sockaddr
{
unsigned short as_family;
char as_data[14];
}
ÓÉÓÚϵͳµÄ¼æÈÝÐÔ,ÓÃÁíÍâÒ»¸ö½á¹¹ÌåÌæ´ú,sockaddr_in:
struct sockaddr_in
{
unsigned short sin_family;
unsigned short sin_port;
struct in_addr sin_addr;
unsigned char sin_zero[8];
}
sin_addrÒ»°ãÊÇÉèÖÃΪINADDR_ANY,¿ÉÒÔ½ÓÊÜÈκÎÖ÷»úµÄͨѶ,sin_portÊÇÒª¼àÌýµÄ¶Ë¿Ú,bind()½«±¾µØ¶Ë¿ÚºÍsocket°ó¶¨ÔÚÒ»Æð,³É¹¦ºó·µ»Ø0,ʧ°Üʱ·µ»Ø-1,ºÍsocket()Ò»Ñù.
int listen(int sockfd,int queuelen)
sockfd:bind()µÄsocketÃèÊö·û,ÓÃÓÚ¼àÌýµÄsocketÃèÊö·û;
queuelen:µÈºòÅŶӵÄ×î´ó³¤¶È.listen()½«bind()µÄsocketÃèÊö·û±äΪ¼àÌýµÄÌ×½Ó×Ö,·µ»ØµÄÇé¿öºÍbind()Ò»Ñù.
int accept(int sockfd,struct sockaddr * addr,int addrlen)
sockfd:ÊÇlistenºóµÄÎļþÃèÊö·û;
addrºÍaddrlen:ÊǸøclient¶Ë³ÌÐòÌîдµÄ,·þÎñÆ÷Ö»Òª´«µÝÖ¸Õë¾Í¿ÉÒÔÁË;
bind(),listen()ºÍaccept()ÊÇ·þÎñ¶ËÓõĺ¯Êý,accept()º¯Êýµ÷ÓÃʱ,server¶Ë»áÒ»Ö±×èÈûµ½ÓÐÒ»¸öclient·¢³öÁËÁ¬½ÓÇëÇó,accept()³É¹¦Ê±·µ»Ø×îºóµÄ·þÎñÆ÷¶ËµÄÎļþÃèÊö·û,ÏÖÔÚ·þÎñÆ÷¶Ë¿ÉÒÔÏò¸ÃÃèÊö·ûдÐÅÏ¢ÁË.ʧ°Üʱ·µ»Ø-1.
int connect(int sockfd,struct sockaddr *servaddr,int addrlen)
sockfd:socket()·µ»ØµÄÎļþÃèÊö·û;
servaddr:´æ´¢ÁËserver¶ËµÄÁ¬½ÓÐÅÏ¢,ÀïÃæµÄsin_familyÊÇ·þÎñÆ÷¶ËµÄµØÖ·
addrlen:servaddrµÄ³¤¶È;
connect()ÊÇ
Ïà¹ØÎĵµ£º
1£®¹ØÓÚÎļþ/Ŀ¼´¦ÀíµÄÖ¸Áî
1.1 ls Ö¸Áî
lsµÄÒâÒåΪ“list”£¬Ò²¾ÍÊǽ«Ä³Ò»¸öĿ¼ÏµÄÄÚÈÝÏÔʾ³öÀ´¡£
lsÓÐһЩ²ÎÊý£¬¿ÉÒÔ¸øÓèʹÓÃÕ߸ü¶àÓйصÄ×ÊѶ£¬ÈçÏ£º
-a£ºÔÚlinuxÖÐÈôÒ»¸öĿ¼»òÎļþÃû×ֵĵÚÒ»¸ö×ÖԪΪ“.”£¬ÔòʹÓÃls½«²»»áÏÔʾ³öÕâ¸öÎļþµÄÃû×Ö£¬ÎÒÃdzƴËÀàÎļþΪÒþ²ØÎļþ¡£Èç¹ûÎÒà ......
ǶÈëʽLinuxϲÊÉ«LCDÇý¶¯µÄÉè¼ÆÓëʵÏÖ
ÕªÒª£º±¾ÎĽéÉÜÁËÈçºÎÔÚǶÈëÔÚ¿ª·¢²ÊÉ«LCDÏÔʾÇý¶¯µÄ·½·¨£¬²¢¶ÔLinuxÖеÄÏÔʾÇý¶¯³ÌÐò½á¹¹ºÍ¿ò¼Ü×÷Ò»½éÉÜ¡£
³¤ÆÚÒÔÀ´£¬ÔÚ³£¼ûµÄÕÆÉϵçÄÔ£¨PDA£©µÈСÐÍÊÖ³ÖʽÉ豸ÉÏ£¬ÓÉÓÚÓ²¼þÌõ¼þµÈµÄÏÞÖÆ£¬ÎÒÃÇ¿´µ½µÄÏÔʾÆ÷¼þͨ³£Êǵ¥É«LCD£¬Óû§½çÃæÒ²·Ç³£¼òµ¥£¬¼¸ºõ¿´²»µ½ PC ......
ÀïѧϰlinuxÎļþϵͳ¼¼ÇÉ£¬¹ÒÔØUÅÌÊÇ·ñÁ¬½ÓµÄ¼¼ÇÉ£¬ÎÄÖÐÒÔ°¸Àý½²½â¡£ÍûÄܸø´ó¼Ò´øÀ´Ð¡Ð¡µÄ°ïÖú¡£
LinuxÎļþϵͳÊÇÒì²½µÄ£¬Ò²¾ÍÊÇ˵дһ¸öÎļþ²»ÊÇÁ¢¿Ì±£´æµ½½éÖÊ£¨Ó²ÅÌ£¬UÅ̵ȣ©ÖУ¬¶øÊÇ´æµ½»º³åÇøÄÚ£¬µÈ»ýÀÛµ½Ò»¶¨³Ì¶ÈÔÙÒ»Æð±£´æµ½½éÖÊÖС£Èç¹ûûÓÐumount¾Í·Ç·¨°Î³ö UÅÌ£¬³ÌÐòÊDz»ÖªµÀµÄ£¬fopen,fwriteµÈº¯Êý¶¼ÒÀÈ»·µ»ØÕý ......
To enable dumps for every daemon:
ulimit -c unlimited >/dev/null 2>&1 (-c maximum size of core files)
ulimit -S -c ${DAEMON_COREFILE_LIMIT:-0} >/dev/null 2>&1
Dump for system
:
DAEMON_COREFILE_LIMIT='unlimited'
The same for every daemon (in /etc/sysconfig/_daemon_ ......
Here is small script that does this. Debian or Ubuntu GNU/Linux does
not comes with any SYS V init script (located in /etc/init.d directory)
.
You create a script as follows and use it to stop or flush the iptables rules.
Please don't type rules at command prompt. Use the script to sp ......