LINUXÍøÂç±à³Ì,¼òµ¥µÄÁÄÌì³ÌÐò
·þÎñÆ÷¶Ë£º
½¨Á¢socket£¬±¾µØµØÖ·°ó¶¨bind£¬È»ºó½¨Á¢¼àÌý£¬Èç¹ûÓпͻ§¶ËÇëÇóÔòÏìÓ¦Ö®£¬È»ºó½øÐÐÊý¾ÝµÄ·¢ËͺͽÓÊÕ
Ô´´úÂë:
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <sys/time.h>
#include <string.h>
#include <fcntl.h>
#define MAXDATASIZE 100
#define SERVPORT 3333
#define BACKLOG 10//×î´óÁ¬½ÓÊý
#define STDIN 0 //±ê×¼ÊäÈë
int main(void)
{
FILE *fp;
int sockfd,client_fd;//socket.sock_fd¼àÌý,socket.new_fdÊý¾Ý´«Êä
int sin_size;
struct sockaddr_in my_addr,remote_addr;//±¾»úµØÖ·ÐÅÏ¢£¬¿Í»§µØÖ·ÐÅÏ¢
char buf[256]; //ÓÃÓÚÁÄÌìµÄ»º³åÇø
char buff[256];//ÓÃÓÚÊäÈëÓû§ÃûµÄ»º³åÇø
char send_str[256];
int recvbytes;
fd_set rfd_set,wfd_set,efd_set;//±»select¼àÊӵĶÁ£¬Ð´£¬Òì³£´¦ÀíµÄÎļþÃèÊö·û¼¯ºÏ
struct timeval timeout;
int ret;
if((sockfd=socket(AF_INET,SOCK_STREAM,0))==-1)
{
perror("socket");
exit(1);
}
/*¶ËÌî³äsockaddr½á¹¹*/
bzero(&my_addr,sizeof(struct sockaddr_in));
my_addr.sin_family=AF_INET;//µØÖ·×å
my_addr.sin_port=htons(SERVPORT);
inet_aton("127.0.0.1",&my_addr.sin_addr);
if(bind(sockfd,(struct sockaddr *)&my_addr,sizeof(struct sockaddr))==-1)
{
perror("bind");
exit(1);
}
if(listen(sockfd,BACKLOG)==-1)
{
perror("listen");
exit(1);
}
sin_size=sizeof(struct sockaddr_in);
if((client_fd=accept(sockfd,(struct sockaddr *)&remote_addr,&sin_size))==-1)
{
perror("accept");
exit(1);
}
fcntl(client_fd,F_SETFD,O_NONBLOCK);//·þÎñÆ÷Ϊ·Ç×èÈû
recvbytes=recv(client_fd,buff,MAXDATASIZE,0);
buff[recvbytes]='\0';
fflush(stdout);
/*Ç¿ÖÆÁ¢¼´ÄÚÈÝ*/
if((fp=fopen("name.txt","a+"))==NULL)
{
printf("can not open filie,exit...\n");
return -1;
}
fprintf(fp,"%s\n",buff);
/*½«Óû§ÃûдÈëname.txtÖÐ*/
while(1)
{
FD_ZERO(&rfd_set);//¶ÁÎļþÃèÊö·ûÇå
Ïà¹ØÎĵµ£º
linuxϵÄlddÃüÁî(ת)
1¡¢Ê×ÏÈldd²»ÊÇÒ»¸ö¿ÉÖ´ÐгÌÐò£¬¶øÖ»ÊÇÒ»¸öshell½Å±¾
2¡¢lddÄܹ»ÏÔʾ¿ÉÖ´ÐÐÄ£¿éµÄdependency£¬ÆäÔÀíÊÇͨ¹ýÉèÖÃһϵÁеĻ·¾³±äÁ¿£¬ÈçÏ£º LD_TRACE_LOADED_OBJECTS¡¢LD_WARN¡¢LD_BIND_NOW¡¢LD_LIBRARY_VERSION¡¢ LD_VERBOSEµÈ¡£µ±LD_TRACE_LOADED_OBJECTS»·¾³±äÁ¿²»Îª¿Õʱ£¬ÈκοÉÖ´ÐгÌÐòÔÚÔËÐÐʱ ......
LinuxµÄĿ¼½á¹¹ etc: ÅäÖÃÎļþ£¬Èçinittab
proc: procÎļþϵͳ£¬ÏµÍ³ÔËÐйý³ÌÓ³É䣬½ø³ÌÓ³Éä
É豸Çý¶¯µÄÁ½ÖÖ·½Ê½£º Ö±½Ó±àÒë½øÄںˣ»ÒÔmodule²åÈë
PCµÄLinuxÆô¶¯£ºBIOS->GRUB->KERNEL
SHELL±à³Ì
Ï൱ÓÚDOSµÄÅú´¦Àí,¿É ......
Windows ÏÂÖ±½ÓÔËÐÐ LinuxµÄLive CD°æµÄ·½·¨
Ò»¸öżȻµÄ»ú»á,ÎÒ·¢ÏÖ.Live CD °æµÄLinux¿ÉÒÔ½èÖú qumeÔÚWindowsÏÂÖ±½ÓÔËÐÐ;·½·¨ÊÇÏÂÔØlinux-tr127 ÏÂÔØµØÖ·http://www.orsoon.com/down.asp?id=1372&downid=8
ʵ
¼ÊÉÏÕâ¸öÈí¼þ°üÊÇÓÉtr127 ÓÃqumeÕâ¸öÐéÄâ»úÖÆ×÷µÄ¿ÉÔÚWindowsÏÂÔËÐеÄÐé ......
ÊÖ¶¯ÉèÖÃ
££ifconfig etn0 192.168.1.2,ÉèÖÃÍø¿¨IPµØÖ·
»òÖ±½ÓÔËÐÐifconfig,ÕâʱºòҪעÒâÁË,ÔÚÍøÂç½Ó¿ÚÖÐÓÐÒ»¸ölo½Ó¿Ú,Ò²¾ÍÊÇÍøÂç»Ø»·(loopback).
ÔÙʹÓÃpingÃüÁî
££ping 192.168.1.2 -c 3
²âÊÔ3´Î,¿´ÄÜ·ñÕý³£ÏìÓ¦.
Æô¶¯Óë¹Ø±ÕÍø¿¨
/etc/rc.d/init.d/network restart <===ÖØÐÂÆô¶¯ÍøÂç
ifup eth0 &l ......
Ö±½ÓÔÚÖÕ¶ËÊäÈëtopÃüÁî¾ÍÐÐ
µÚÒ»ÐУ¬ºÜÈÝÒ׿´³öÀ´Á˰É
¼òµ¥ËµÒ»ÏÂload average: * * *
µÚÒ»¸öÊýÊÇ£ºÆ½¾ù£µ·ÖÖÓÒÔÄÚÓжàÉÙ½ø³ÌÔÚ¾ºÕù£Ã£Ð£Õ
µÚ¶þ¸öÊýÊÇ£ºÆ½¾ù£±£°·ÖÖÓÒÔÄÚÓжàÉÙ½ø³ÌÔÚ¾ºÕù£Ã£Ð£Õ
µÚÈý¸öÊýÊÇ£ºÆ½¾ù£±£µ·ÖÖÓÒÔÄÚÓжàÉÙ½ø³ÌÔÚ¾ºÕù£Ã£Ð£Õ
µÚ¶þÐУº
Tasks: *
¶àÉÙ¸öÈÎÎñÊ ......