LINUX ×ÔÆô¶¯¹ÜÀí
ǰÑÔ
linuxÓÐ×Ô¼ºÒ»Ì×ÍêÕûµÄÆô¶¯Ìåϵ£¬×¥×¡ÁËlinuxÆô¶¯µÄÂöÂ磬linuxµÄÆô¶¯¹ý³Ì½«²»ÔÙÉñÃØ¡£
ÔĶÁ֮ǰ½¨ÒéÏÈ¿´Ò»Ï¸½Í¼¡£
±¾ÎÄÖмÙÉèinittabÖÐÉèÖõÄinit treeΪ£º
/etc/rc.d/rc0.d
/etc/rc.d/rc1.d
/etc/rc.d/rc2.d
/etc/rc.d/rc3.d
/etc/rc.d/rc4.d
/etc/rc.d/rc5.d
/etc/rc.d/rc6.d
/etc/rc.d/init.d
Ŀ¼
1. ¹ØÓÚlinuxµÄÆô¶¯
2. ¹ØÓÚrc.d
3. Æô¶¯½Å±¾Ê¾Àý
4. ¹ØÓÚrc.local
5. ¹ØÓÚbashÆô¶¯½Å±¾
6. ¹ØÓÚ¿ª»ú³ÌÐòµÄ×Ô¶¯Æô¶¯
1. ¹ØÓÚlinuxµÄÆô¶¯
initÊÇËùÓнø³ÌµÄ¶¥²ã
init¶ÁÈ¡/etc/inittab£¬Ö´ÐÐrc.sysinit½Å±¾
(×¢ÒâÎļþÃûÊDz»Ò»¶¨µÄ,ÓÐЩunixÉõÖÁ»á½«Óï¾äÖ±½ÓдÔÚinittabÖÐ)
rc.sysinit½Å±¾×÷Á˺ܶ๤×÷:
init $PATH
config network
start swap function
set hostname
check root file system, repair if needed
check root space
....
rc.sysinit¸ù¾ÝinittabÖ´ÐÐrc?.d½Å±¾
linuxÊǶàÓû§ÏµÍ³£¬gettyÊǶàÓû§Óëµ¥Óû§µÄ·ÖË®Áë
ÔÚgetty֮ǰÔËÐеÄÊÇϵͳ½Å±¾
2. ¹ØÓÚrc.d
ËùÓÐÆô¶¯½Å±¾·ÅÖÃÔÚ /etc/rc.d/init.dÏÂ
rc?.dÖзÅÖõÄÊÇinit.dÖнű¾µÄÁ´½Ó£¬ÃüÃû¸ñʽÊÇ£º
S{number}{name}
K{number}{name}
S¿ªÊ¼µÄÎļþÏò½Å±¾´«µÝstart²ÎÊý
K¿ªÊ¼µÄÎļþÏò½Å±¾´«µÝstop²ÎÊý
number¾ö¶¨Ö´ÐеÄ˳Ðò
3. Æô¶¯½Å±¾Ê¾Àý
ÕâÊÇÒ»¸öÓÃÀ´Æô¶¯httpdµÄ /etc/rc.d/init.d/apache ½Å±¾£º
´úÂë:
#!/bin/bash
......
¿ÉÒÔ¿´³öËû½ÓÊÜstart,stop,restart,status²ÎÊý
È»ºó¿ÉÒÔÕâÑù½¨Á¢rc?.dµÄÁ´½Ó£º
´úÂë:
cd /etc/rc.d/init.d &&
ln -sf ../init.d/apache ../rc0.d/K28apache &&
ln -sf ../init.d/apache ../rc1.d/K28apache &&
ln -sf ../init.d/apache ../rc2.d/K28apache &&
ln -sf ../init.d/apache ../rc3.d/S32ap
Ïà¹ØÎĵµ£º
//»ñÈ¡±¾»úMACµØÖ·º¯ÊýQString GetLocalMac()
{
int sock_mac;
struct ifreq ifr_mac;
char mac_addr[30];
sock_mac = socket( AF_INET, SOCK_STREAM, 0 );
if( sock_mac == -1)
{
perror("create socket falise...mac\n");
return "";
}
memset(&ifr_mac,0,sizeof(ifr_mac));
......
//»ñÈ¡×ÓÍøÑÚÂëµÄº¯ÊýQString GetLocalNetMask()
{
int sock_netmask;
char netmask_addr[50];
struct ifreq ifr_mask;
struct sockaddr_in *net_mask;
sock_netmask = socket( AF_INET, SOCK_STREAM, 0 );
if( sock_netmask == -1)
{
perror("create socket failture...GetLocalNetMask\n");
......
source file :
http://hi.baidu.com/neugraduzyq/blog/item/5602432f6a1a755a4ec22666.html
ÎÒÏëÔÚPATHϼÓÒ»¸ö/tools/binµÄ·¾¶ÓÃexport PATH=$PATH:/tools/binºóÓ¦¸ÃÊǼÓÉÏÈ¥ÁË£¬µ«ÊÇÓà echo $PATH »¹ÊÇÏÔʾµÄÔÀ´µÄ$PATH±äÁ¿µÄÖµ£¬¸Ð¾õÓÃexport PATH=$PATH:/tools/binÖ»ÊÇÔÚÔÀ´µÄ$PATH±äÁ¿ºó¼ÓÁËÒ»¸ö·¾¶µ½µ±Ç°µ ......
ǰһƪ²©¿Í»¹Ð´ÁË×Ô¼ºÐ´µÄ¶Ë¿Úת·¢¹¤¾ß£¬½ñÌìżȻÔÚÍøÉÏ¿´µ½½²ÃüÃû¹ÜµÀºÍnetcatÅäºÏµÄÓ÷¨£¬±»³¹µ×À×µ¹ÁË¡£
ÔÀ´ÒÔΪnetcat×ö²»µ½£¬ÔÀ´ÊÇ×Ô¼ºÏë²»µ½£¬¶ø²»ÊÇnetcat×ö²»µ½……
·½·¨ÈçÏ£º
$ mknod backpipe p
&n ......
1¡¢±äÁ¿ºÍÔËËã (×¢£º´ÓÉÏÍùÏÂÒ»²½Ò»²½Ö´ÐÐ)
1.±¾µØ±äÁ¿ÔÚÓû§ÏÖÔÚµÄshellÉúÃüÆÚµÄ½Å±¾ÖÐʹÓÃ
variable-name=value ÀýÈ磺test="test"
2.setÏÔʾ±¾µØËùÓеıäÁ¿
3.Éè³ÉÖ»¶Á±äÁ¿£ºreadonly variable-name ÀýÈ磺test="cynric" »á ......