Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

LinuxÍø¿¨µÄ¶Áд±à³Ì

LinuxÍø¿¨µÄ¶Áд±à³Ìzz
LinuxϵͳµÄËùÓÐÉ豸¶¼ÊÇÒÔÎļþµÄÐÎʽ´æÔڵģ¬ËùÒÔ¶ÔϵͳµÄ²Ù×÷¿ÉÒÔת»»Îª¶ÔÎļþµÄ²Ù×÷¡£±¾³ÌÐòʵÏÖ¶ÔÍø¿¨Õâ¸öÓ²¼þÉ豸½øÐжÁÈ¡²Ù×÷£¬¼´Ò²ÊǶÔÉ豸µÄÎļþ½øÐжÁд²Ù×÷¡£´úÂë¿´ËÆÂé·³£¬µ«È´²»¸´ÔÓ¡£
Ö÷ÒªµÄϵͳº¯ÊýÓУºsocket(),ioctl(),memcpy(),strcpy()¡£
Á½¸ö¸´ÔӵĽṹÌ壺sockaddr_in,ifreq¡£
...£¯
#include<stdio.h>
#include<unistd.h>
#include<sys/ioctl.h>
#include<stdlib.h>
#include<sys/socket.h>
#include<netinet/in.h>
#include<arpa/inet.h>
#include<sys/types.h>
#include<net/if.h>
#include<string.h>
unsigned char g_eth_name[16];
unsigned char g_macaddr[6];
unsigned char g_ipaddr;
unsigned char g_subnetmask;
unsigned char g_broadcast_ipaddr;
void init_net(void)
{
int i;
int sock;
struct sockaddr_in sin;
struct ifreq ifr;
sock=socket(AF_INET,SOCK_DGRAM,0);
if(sock==-1)
printf("get the socket file descriptor faild!\n");
strcpy(g_eth_name,"etho");
strcpy(ifr.ifr_name,g_eth_name);
strcpy("eth name:\t%s\n",g_eth_name);
if(ioctl(sock,SIOCGIFHWADDR,&ifr)<0)
printf("get the network card addr faild!\n");
memcpy(g_macaddr,ifr.ifr_hwaddr.sa_data,6);
printf("the network card addr is:");
for(i=0;i<5;i++)
printf("%.2x:",g_macaddr[i]);
printf("%.2x:",g_macaddr[i]);
if(ioctl(sock,SIOCGIFADDR,&ifr)<0)
printf("get the net ip addr faild!\n");
memcpy(&sin,&ifr.ifr_addr,sizeof(sin));
g_ipaddr=sin.sin_addr.s_addr;
printf("local eth0:\t%s\n",inet_ntoa(sin.sin_addr));
if(ioctl(sock,SIOCGIFBRDADDR,&ifr)<0)
printf("get the broadcast ip addr faild!\n");
memcpy(&sin,&ifr.ifr_addr,sizeof(sin));
g_broadcast_ipaddr=sin.sin_addr.s_addr;
printf("broadcast:\t%s\n",inet_ntoa(sin.sin_addr));
if(ioctl(sock,SIOCGIFNETMASK,&ifr)<0)
printf("get the netsubmask faild!\n");
memcpy(&sin,&ifr.ifr_addr,sizeof(sin));
g_subnetmask=sin.sin_addr.s_addr;
printf("subnetmask:\t%s\n",inet_ntoa(sin.sin_addr));
close(sock);
}
int main()
{
init_ne


Ïà¹ØÎĵµ£º

linux socketѧϰ±Ê¼Ç£¨µÚÈýÕ£©


  IPµØÖ·ÊÇÒ»¸ö32λµÄ¶þ½øÖÆÊý£¬ËüÓɵã·ÖÊ®½øÖƼǷ¨±íʾ£¬Ã¿Ò»¸öÊ®½øÖÆÊý´ú±íÒ»¸ö8λÎÞ·ûºÅÕûÐÍÊý£¬ËùÒÔ·¶Î§ÔÚ0-255Ö®¼ä¡£
Ò»¸öIPµØÖ··ÖÎªÍøÂçµØÖ·ºÍÖ÷»úµØÖ·£¬ÍøÂçµØÖ·Çø·Ö²»Í¬ÍøÂ磬Ö÷»úµØÖ·Çø·ÖÏàÍ¬ÍøÂçÖв»Í¬Ö÷»ú¡£²»Í¬µÄIPµØÖ·ÀàËûÃǵÄÖ÷»úÍøÂçµØÖ·Ò²ÊDz»¹Ì¶¨µÄ£¬A,B,CÀàµØÖ·¶¨ÒåÁËijһÖ÷»úÌØ¶¨µÄIPµØÖ·£ ......

linuxÏÂapache+php°²×°³£¼ûÎÊÌâ

1¡¢Apache
¡¡¡¡ÔÚÈçÏÂÒ³ÃæÏÂÔØapacheµÄfor Linux µÄÔ´Âë°ü
¡¡¡¡http://www.apache.org/dist/httpd/;
¡¡¡¡´æÖÁ/home/xxĿ¼£¬xxÊÇ×Ô½¨Îļþ¼Ð£¬ÎÒ½¨ÁËÒ»¸öwjµÄÎļþ¼Ð¡£
¡¡¡¡ÃüÁîÁÐ±í£º
¡¡¡¡
cd /home/wj
¡¡¡¡tar -zxvf httpd-2.0.54.tar.gz
¡¡¡¡mv httpd-2.0.54 apache
¡¡¡¡cd apache
¡¡¡¡./configure --prefix=/u ......

Linux¿ªÆôSSH

#pacman -S openssh #°²×°openssh
°²×°Íê³ÉºóÔÚ/etc/rc.confµÄ×îµ×²¿DAEMONSºóÌí¼ÓsshdÈÃϵͳÆô¶¯Ê±×Ô¶¯Æô¶¯openssh
DAEMONS=(syslog-ng network netfs crond sshd)
Ò²¿ÉÊÖ¶¯Æô¶¯openssl,Ö´ÐÐ
#/etc/inin.d/sshd start
ĬÈÏÇé¿öÏÂÆäËüµçÄÔÊDz»ÄÜͨ¹ýsshÀ´·ÃÎÊarchlinuxµÄ,ÐèÒªÐÞ¸ÄÁ½¸öÎļþÀ´ÊµÏÖ:
/etc/h ......

linuxÔ´ÂëÔĶÁ£¨1£©£ºÅäÖà lxrºÍglimpse

1. °²×°apache2, lxr, glimpse
$ sudo apt-get install apache2
$ sudo apt-get install lxr
ÏÂÔØglimpse
°²×°glimpse:
$ ./configure
$ make
$ sudo make install
2. ÅäÖÃlxr
$ sudo vim /usr/share/lxr/http/lxr.conf
ÐÞ¸ÄΪ£ºbaseurl:http://localhost/lxr/http
           &n ......

ʹÓÃPHP×öLinux/UnixÊØ»¤½ø³Ì

http://linux.chinaitlab.com/administer/774036.html
[  ÆðÔ´ ]Linux/UnixÏÂÊØ»¤½ø³Ì£¨Daemon£©´ó¼Ò¶¼ÖªµÀ£¬±ÈÈçÎÒÃdz£ÓõÄhttpd¡¢mysqldµÈµÈ£¬¾ÍÊdz£×¤ÄÚ´æÔËÐеijÌÐò£¬ÀàËÆÓÚWindowsϵķþÎñ¡£Ò»°ãÊØ»¤½ø³Ì¶¼ÊÇʹÓÃC/C++À´Ð´£¬¾ÍÊÇͨ¹ýforkÉú³É×Ó½ø³Ì£¬µ±Ç°Ì¨shellϵĸ¸½ø³Ì±»É±µô£¬×Ó½ø³Ì¾Íתµ½ºǫ́ÔËÐУ¬ÎªÁ˲» ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ