Ãæ¶Ô²»¶ÏÉý¼¶µÄÄںˣ¬ÈçºÎѧϰlinuxÉ豸Çý¶¯
Ãæ¶Ô²»¶ÏÉý¼¶µÄlinuxÄںˡ¢GNU¿ª·¢¹¤¾ß¡¢linux»·¾³Ïµĸ÷ÖÖͼÐο⣬ºÜ¶àlinuxÓ¦ÓóÌÐò¿ª·¢ÈËÔ±ºÍlinuxÉ豸Çý¶¯¿ª·¢ÈËÔ±¼´ÐË·Ü£¬ÓÖ·³Ôê¡£Ð˷ܵÄÊÇеÄÈí¼þÈí¼þ¡¢¹¤¾ß¸øÎÒÌṩÁ˸üÇ¿´óµÄ¹¦ÄÜ£¬·³ÔêµÄÊÇÊÊÓ¦ÐÂÈí¼þµÄÌØÐÔ¡¢´î½¨Ð»·¾³ÊÇÒ»Ïî·Ç³£·±ËöµÄÊÂÇé¡£±¾ÎÄÏë´ÓÒÔÏÂ3¸ö·½ÃæÌ½ÌÖÒ»ÏÂ“Ãæ¶Ô²»¶ÏÉý¼¶µÄÄںˣ¬ÈçºÎѧϰlinuxÉ豸Çý¶¯”¡£
Ò»¡¢Äں˷¢Õ¹µÄÏÖ×´¼°Æä¶Ô¼¼ÊõÈËÔ±µÄÓ°Ïì
LinuxĿǰÖ÷Ҫά»¤2.4ºÍ2.6Á½¸öÄں˰汾¡£ÓÉÓڸ߰汾Äں˲¢²»ÍêÈ«¼æÈݵͰ汾Äںˣ¬ËùÒÔÄÚºËÉý¼¶¶Ô´ÓÊÂlinux¿ª·¢µÄ¼¼ÊõÈËÔ±Ôì³ÉÁËÒ»¶¨µÄÓ°Ïì¡£
Äں˵ÄÉý¼¶¶ÔÓ¦´ÓÊÂlinuxÓ¦ÓóÌÐò¿ª·¢µÄÈËÔ±À´ËµÓ°Ïì½ÏС£¬ÒòΪϵͳµ÷Óûù±¾±£³Ö¼æÈÝ¡£¶øÓ°Ïì±È½Ï ......
netmask ipµØÖ· broadcast ×ÓÍøÑÚÂë gateway Íø¹Ø dns DNS·þÎñÆ÷
vmwareÈýÖÖÍøÂçÁ¬½ÓÉÏÍøÉèÖãº
²é¿´VMNET1ºÍVMNET8µÄIP£¬Íø¹ØÐÅÏ¢£¬¿ÉÒÔipconfigÃüÁî
1
.ÇŽӷ½Ê½(bridge) :
ĬÈÏʹÓÃvmnet0
½«ÐéÄâ»úµÄipÉèÖÃÓëÖ÷»úÍ¬Íø¶ÎδʹÓÃip,ÆäÓàÓëÖ÷»úÏàͬ:
ipµØÖ·ÓëÖ÷»úͬ¶ÎÏàÒì,
×ÓÍøÑÚÂëÓëÖ÷»úÏàͬ,
Íø¹ØÓëÖ÷»úÏàͬ,
DNS·þÎñÆ÷ÓëÖ÷»úÏàͬ¡£
ʵÏÖÐéÄâ»ú<--->Ö÷»úÐéÄâ»ú<---->»¥ÁªÍø ͨÐÅ¡£
2.¹²Ïí·½Ê½(nat) :
ĬÈÏʹÓÃvmnet8
½«ÐéÄâ»úÉèÖóÉʹÓÃdhcp·½Ê½ÉÏÍø,windowsÏÂÑ¡Ôñ"×Ô¶¯»ñÈ¡ip",linuxÏ¿ªÆôdhcp·þÎñ¼´¿É¡£
ÊÖ¶¯ÉèÖÃ:
ipÉèÖÃÓëvmnet8Í¬Íø¶Î£¬
Íø¹ØÉèÖóÉvmnet8µÄÍø¹Ø£¬
DNS·þÎñÆ÷ÉèÖÃÓëÖ÷»úÏàͬ£¬
ʵÏÖÐéÄâ»ú<--->Ö÷»úÐéÄâ»ú<---->»¥ÁªÍø ͨÐÅ¡£
²éÕÒvmnet1µÄÍø¹Ø,ͨ³£ÊÇxxx.xxx.xxx.2
ÀýÈç vmnet8 ip:172.16.249.1 gw :172.16.249.2
ÐéÄâ»úÉèÖÃ: ip :172.16.249.100 gw: 172.16.249.2
3.˽Óз½Ê½(host-only):
ĬÈÏʹÓÃvmnet1
½«ÐéÄâ»úipÉèÖÃÓëvmnet1Í¬Íø¶Î,gatewayÉèÖóÉvm ......
linuxÖÐÏß³ÌÏà¹Øº¯Êý
2010Äê03ÔÂ09ÈÕ ÐÇÆÚ¶þ 22:18
1. ±È½ÏÁ½¸öÏß³Ì ID ÊÇ·ñÒ»Ö¡£
Ïß³ÌID ʹÓà pthread_t Êý¾ÝÀàÐÍÀ´±íʾ¡£Linux ʹÓà unsigned long int ±íʾpthread_t Êý¾ÝÀàÐÍ¡£Solaris 9 °Ñ pthread_t Êý¾ÝÀàÐͱíʾΪ unsigned int¡£FreeBSD5.2.1 ºÍ MAC OS X 10.3 ÓÃÒ»¸öÖ¸Ïò pthread ½á¹¹µÄÖ¸ÕëÀ´±íʾpthread_t Êý¾ÝÀàÐÍ¡£ Òò´ËÈç¹ûÐèÒª¿¼ÂÇÒÆÖ²ÐÔ£¬±ØÐëʹÓú¯ÊýÀ´¶ÔÁ½¸öÏß³ÌID½øÐбȽϡ£
#include <pthread.h>
int pthread_equal(pthread_t tid1, pthread_t tid2);
·µ»ØÖµ£ºÈç¹ûÏàµÈ·µ»Ø·Ç0£¬·ñÔò·µ»Ø0
2.»ñÈ¡Ïß³Ì×ÔÉíµÄÏß³ÌID¡£
#include <pthread.h>
pthread_t pthread_self(void);
·µ»ØÖµ£ºµ÷ÓÃÏ̵߳ÄÏß³ÌID
3.´´½¨Ị̈߳º
#include <pthread.h>
int pthread_create(pthread_t *restrict tidp, const pthread_attr_t *restrict attr, void *(*start_rtn)(void), void *restrict arg);
·µ»ØÖµ£ºÈô³É¹¦·µ»Ø0£»Èç¹ûʧ°Ü£¬·µ»Ø´íÎó±àºÅ
4.Ïß³ÌÖÕÖ¹
Èç¹û½ø³ÌÖеÄÈÎÒ»Ï̵߳÷ÓÃÁË exit£¬_Exit»òÕß _exit º¯Êý£¬ÄÇôÕû¸ö½ø³Ì¾Í»áÍ˳ö¡£Óë´ËÀàËÆ£¬Èç¹ûÐźŵÄĬÈ϶¯×÷ÊÇÖÕÖ¹½ ......
(¼Ó#µÄÃüÁîΪ±ØÐëÔÚ¸ùÓû§È¨ÏÞϲÙ×÷)
Ò»¡¢¹Ø»úÓëÖØÐÂÆô¶¯
1£©#init 0ÖØÆô #init 6¹Ø»ú£¨¸Ä±äϵͳÔËÐм¶±ðµÄ·½·¨£©
2£©#rebootÖØÆô #halt¹Ø»ú£¨ÃüÁî·¨£©
3)#showdown -h +5 (5·ÖÖÓºó¹Ø»ú) #showdown -r +5(5·ÖÖÓºóÖØÆô)
¶þ¡¢³£ÓÃĿ¼²Ù×÷ÃüÁî
1£©ÏÔʾÎļþºÍĿ¼£ºls -a -l
2) ¸´ÖÆÎļþ»òĿ¼£ºcp Ô´Îļþ Ä¿µÄÎļþ
3£©Òƶ¯Îļþ»òĿ¼£ºmv Ô´Îļþ Ä¿µÄÎļþ
4£©ÏÔʾÎļþÄÚÈÝ£ºcat Îı¾Îļþ
5£©·ÖÒ³ÏÔʾÎı¾ÄÚÈÝ£ºmore Îı¾Îļþ »òless Îı¾Îļþ
6£©ÏÔʾÎļþ¿ªÍ·»ò½áβµÄ¼¸ÐУºhead -3 myfile(ÏÔʾmyfileÎļþÍ·3ÐУ©¡£»òtail -5 myfile.
7£©Í³¼ÆÖ¸¶¨Îı¾ÎļþµÄÐÐÊý¡¢×ÖÊý¡¢×Ö·ûÊý£º$wc -l myfile£¨Í³¼ÆmyfileÎļþµÄÐÐÊý£©
8£©ÔÚÎļþϵͳÖвéÕÒÖ¸¶¨µÄÎļþ£º$find -name 'my*'(´Óµ±Ç°Ä¿Â¼ÏÂÕÒÒÔmy¿ªÍ·µÄÎļþ£©
9£©´ÓÖ¸¶¨µÄÒ»¸ö»ò¶à¸öÎı¾ÎļþÖÐÖðÐвéÕÒÖ¸¶¨×Ö·û´®£º
$grep "my*" file1 file2(´ÓÎļþfile1ºÍfile2ÖÐÖðÐвéÕÒmy¿ªÍ·µÄ×Ö·û´®£©
10£©ÏÔʾµ±Ç°¹¤×÷Ŀ¼£ºpwd
11£©´´½¨Ä¿Â¼£ºmkdir mydir1(ÔÚµ±Ç°Ä¿Â¼Ï´´½¨Ò»¸öÃûΪmydir1µÄĿ¼)
12£©É¾³ýĿ¼£ºrmdir mydir1( ......
2009 Äê 4 ÔÂ 23 ÈÕ
±¾ÎÄÖÐÎÒÃÇÕë¶Ô Linux É϶àÏ̱߳à³ÌµÄÖ÷ÒªÌØÐÔ×ܽá³ö 5 Ìõ¾Ñ飬ÓÃÒÔ¸ÄÉÆ Linux ¶àÏ̱߳à³ÌµÄϰ¹ßºÍ±ÜÃâÆäÖеĿª·¢ÏÝÚå¡£ÔÚ±¾ÎÄÖУ¬ÎÒÃÇ´©²åһЩ Windows µÄ±à³ÌÓÃÀýÓÃÒÔ¶Ô±È Linux ÌØÐÔ£¬ÒÔ¼ÓÉî¶ÁÕßÓ¡Ïó¡£
±³¾°
Linux ƽ̨ÉϵĶàÏ̳߳ÌÐò¿ª·¢Ïà¶ÔÓ¦ÆäËûƽ̨£¨±ÈÈç Windows£©µÄ¶àÏß³Ì API ÓÐһЩϸ΢ºÍÒþ»ÞµÄ²î±ð¡£²»×¢ÒâÕâЩ Linux ÉϵÄһЩ¿ª·¢ÏÝÚ壬³£³£»áµ¼Ö³ÌÐòÎÊÌâ²»ÇËÀËø²»¶Ï¡£±¾ÎÄÖÐÎÒÃÇ´Ó 5 ¸ö·½Ãæ×ܽá³ö Linux ¶àÏ̱߳à³ÌÉϵÄÎÊÌ⣬²¢·Ö±ðÒý³öÏà¹Ø¸ÄÉÆµÄ¿ª·¢¾Ñ飬ÓÃÒÔ±ÜÃâÕâЩµÄÏÝÚå¡£ÎÒÃÇÏ£ÍûÕâЩ¾Ñé¿ÉÒÔ°ïÖú¶ÁÕßÃÇÄܸüºÃ¸ü¿ìµÄÊìϤ Linux ƽ̨µÄ¶àÏ̱߳à³Ì¡£
ÎÒÃǼÙÉè¶ÁÕß¶¼ÒѾºÜÊìϤ Linux ƽ̨ÉÏ»ù±¾µÄÏ̱߳à³ÌµÄ Pthread ¿â API ¡£ÆäËûµÄµÚÈý·½ÓÃÒÔÏ̱߳à³ÌµÄ¿â£¬Èç boost£¬½«²»»áÔÚ±¾ÎÄÖÐÌá¼°¡£±¾ÎÄÖÐÖ÷񻃾¼°µÄÌâ²Ä°üÀ¨Ï߳̿ª·¢ÖеÄÏ̹߳ÜÀí£¬»¥³â±äÁ¿£¬Ìõ¼þ±äÁ¿µÈ¡£½ø³Ì¸ÅÄ²»»áÔÚ±¾ÎÄÖÐÉæ¼°¡£
»ØÒ³Ê×
Linux ÉÏÏ߳̿ª·¢ API µÄ¸ÅÒª½éÉÜ
¶àÏ߳̿ª·¢ÔÚ Linux ƽ̨ÉÏÒѾÓгÉÊìµÄ Pthread ¿âÖ§³Ö¡£ÆäÉæ¼°µÄ¶àÏ߳̿ª·¢µÄ×î»ù±¾¸ÅÄîÖ÷Òª°üº¬Èýµã£ºỊ̈߳¬»¥³âËø£¬Ìõ¼þ¡£ÆäÖУ¬Ï̲߳Ù×÷ÓÖ·ÖÏ̵߳Ĵ´½¨£¬Í˳ö£¬µÈ´ý 3 ÖÖ¡£»¥³âË ......
Éè¼ÆÒ»¸ölinuxϵÄdeamon½ø³Ì£¬¹Ø¼üÖ»Óм¸¸ö£º
1.forkÁ½´Î¡£
2.forkµÚÒ»´ÎºÍµÚ¶þ´ÎÖ®¼ä³ÉΪ½ø³Ì×éÍ·¡£
3.¸Ä±ä¹¤×÷Ŀ¼¡£
4.ºöÂÔÐźš£
5.ÉèÖöÁдÑÚÂë¡£
Ò»ÏÂÊÇÒ»¸ö´ÓÍøÂçËѼ¯µ½µÄÀý³Ì£¬·Ç³£ºÃµÄÑÝʾÁËÉÏÊöÒªµã£¬´æ´Ë±¸Íü¡£
#include
#include
#include
#include
void main(int argc, char ** argv)
{
time_t now;
int childpid, fd, fdtablesize;
int error, in, out;
/*ºöÂÔÖÕ¶Ë I/OÐźÅ,STOPÐźÅ*/
signal(SIGTTOU,SIG_IGN);
signal(SIGTTIN,SIG_IGN);
signal(SIGTSTP,SIG_IGN);
signal(SIGHUP,SIG_IGN);
/*¸¸½ø³ÌÍ˳ö£¬³ÌÐò½øÈëºǫ́ÔËÐÐ*/
if( fork()!=0 )
{
exit(1);
}
if( setsid()<0 )
{
exit(1); /*´´½¨Ò»¸öеĻáÒé×é*/
}
/*×Ó½ø³ÌÍ˳ö£¬Ëï½ø³Ìʧȥ¿ØÖÆÖÕ¶ËÁË*/
if( fork()!=0 )
{
exit(1);
}
if( chdir("/tmp")==-1 )
{
exit(1);
}
/*¹Ø±Õ´ò¿ªµÄÎļþÃèÊö·û£¬°üÀ¨±ê×¼ÊäÈë¡¢±ê×¼Êä³öºÍ±ê×¼´íÎóÊä³ö*/
fd=0;
for(fdtablesize=getdtablesize(); fd< fdtablesize;fd++)
{
close(fd);
}
umask(0);/*ÖØÉèÎļþ´´½¨ÑÚÂë*/
signal(SIGCHLD,SIG_IGN);/*ºöÂÔSIGCHLDÐźÅ*/
/*´Ë´¦£¬¿ÉÒÔ×ö×Ô¼ºÏë×öµÄ·þÎñÀý³Ì´úÂë¡£Ò» ......