Õë¶ÔϵͳµÄÓÅ»¯¹¤×÷ÐèÒª¸ù¾Ý²»Í¬µÄϵͳ²ÉÓò»Í¬µÄ°ì·¨¡£±¾ÎÄÖ¼ÔÚÃèÊöͨÓõÄÓÅ»¯ Linux µÄһЩ°ì·¨¡£
Ò»¡¢±àÒëÑ¡Ïî
¡°etc/profile¡±Îļþº¬ÓÐϵͳ´óÁ¿µÄ»·¾³ºÍÆô¶¯³ÌÐòµÄÅäÖÃÐÅÏ¢¡£ÄãÔÚ¸ÃÎļþÖнøÐеÄÅäÖ㬿ÉÒÔͨ¹ýÉêÇëÈ«¾Ö»·¾³±äÁ¿À´ÊµÏÖ¡£Òò´Ë£¬ÔÚ¸ÃÎļþÖÐÉèÖÃÓÅ»¯±êÖ¾£¬ÊÇÒ»ÖÖÃ÷ÖǵÄÑ¡Ôñ¡£ÒªÏëʹx86³ÌÐò»ñµÃ×î¼ÑÐÔÄÜ£¬¿ÉÒÔÔÚ±àÒëʱ£¬Ê¹ÓÃ×î¼ÑµÄÓÅ»¯Ñ¡Ïî-O9 ¡£Ðí¶à³ÌÐòµÄ¡°Makefile¡±ÎļþÖÐÒѾº¬ÓÐ-O2Ñ¡Ï¶ø-O9ʹ±àÒëÆ÷²ÉÓÃ×î¸ß¼¶±ðµÄÓÅ»¯¡£¾¡¹ÜËü½«Ôö¼Ó×îÖÕ³ÌÐòµÄ´óС£¬µ«ÕâÑù¿ÉÒÔ»ñµÃ¸ü¸ßµÄÔËÐÐËÙ¶È¡£±àÒëʱ£¬Ê¹Óá°-fomit-frame-pointer¡±Ñ¡Ï³ÌÐòÔËÐÐʱ£¬·ÃÎʱäÁ¿Ê±½«Ê¹ÓöÑÕ»¡£µ«ÊÇ£¬Ê¹ÓÃÕâһѡÏÉú²úµÄ´úÂ뽫ÎÞ·¨µ÷ÊÔ¡£Ê¹Óá°-mcpu=cpu_type¡±ºÍ¡°-march=cpu_type¡±Ñ¡ÏGcc½«Õë¶ÔÕâÖÖÐͺÅCPU½øÐÐרÃŵÄÓÅ»¯£¬µ«Éú³ÉµÄ´úÂëÖ»ÄÜÔÚËùÖ¸¶¨µÄCPU»ò¸ü¸ßϵÁеÄCPUÉÏÔËÐС£µ±ÎÒÃDzÉÓà -O9À´±àÒë³ÌÐòʱ£¬»òÐíÎļþ×Ö½ÚÊýÊÇ×î´óµÄ£¬µ«ÊÇÍùÍùÆäÔËÐÐËÙ¶ÈÒ²ÊÇ×î¿ìµÄ¡£¸ù¾Ý²»Í¬µÄ»úÆ÷¼Ü¹¹£¬Äã¿ÉÒÔ°ÑÏÂÃæµÄÓï¾ä¼ÓÈë /etc/profile ¡£
¶ÔÓÚCPU i686»òPentiumPro¡¢Pentium II¡¢Pentium IIIµÈ£º
CFLAGS='-O9 -funroll-loops -ffast-math -malign-double -mcpu=pentiumpro
-march=pentiumpro -fomit-frame-pointer -fno-exceptions'
¶ÔÓÚCPU i586»òPentium:
CFLAGS='-O3 -march=pentium -mcpu=pentium -ffast-math -funroll-loops
-fomit-frame-pointer -fforce-mem -fforce-addr -malign-double -fno-exceptions'
¶ÔÓÚCPU i486:
FLAGS='-O3 -funroll-all-loops -malign-double -mcpu=i486 -march=i486
-fomit-frame-pointer -fno-exceptions'
ÔÚ½øÐÐÍêÒÔÉÏÉèÖÃÖ®ºó£¬½ô½Ó×Űѡ°CFLAGS LANG LESSCHARSET¡±¼ÓÈëµ½¡°etc/profile¡±ÎļþÖеġ°export¡±ÐÐÖУº
export PATH PS1 HOSTNAME HISTSIZE HISTFILESIZE USER LOGNAME MAIL INPUTRC CFLAGS
LANG LESSCHARSET
È»ºó£¬ÖØÐµÇ¼£¬Õâʱ£¬»·¾³±äÁ¿CFLAGSÒѾ±»¸³Öµ£¬±àÒëÆ÷ºÍÆäËüÅäÖù¤¾ß¿ÉÒÔʹÓÃËü¡£¶ÔPentium£¨Pro/II/III£©µÄÓÅ»¯±ØÐëʹÓÃegcs»òpgcc±àÒëÆ÷¡£LinuxµÄȱʡ°²×°ÖУ¬ÒѾװÉÏÁËegcs£¬ËùÒÔÎÞÐèµ£ÐÄ¡£
ÁíÍ⣬°²×°³ÌÐòʱ£¬Ê¹Óà tarball ¸ñʽ×ÜÒª±È RPM ¸ñʽÀ´µÃºÃ£¬ÒòΪ£¬ tarball ÐèÒªÖØÐ±àÒ룬ÄÜÕë¶ÔÄãµÄ»úÆ÷¼Ü¹¹×÷ÓÅ»¯£¬µÃµ½×îºÃµÄÐÔÄÜ¡£
¶þ¡¢ÖØÐ±àÒëÄÚºË
Ò»°ãµÄ Linux ·¢ÐÐÉÌ·¢²¼µÄ Linux °æ±¾£¬ÆäÄÚºË×ÜÊÇ»á´øÓÐһЩ¶ÔÄãÀ´Ëµ²»ÊǺÜʵÓõĶ«Î÷£¬ÀýÈç¶ÔHAM RadioµÄÖ§³Ö£¬¶Ô Token Ring µÄÖ§³ÖµÈ¡£¿ÉÒԲ鿴ÏÂÃæµÄÁ½¸öÍøÕ¾µÄ×ÊÁÏ£º
Linux Kernel Howto: www.linuxdoc.org/HOWTO/Kernel-HOWTO.html
Linux Kernel : www.kernel.org
±à¼/usr/src/linux/MakefileÎļþ£¬¿ÉÒÔ¸ù¾Ý¾ßÌåµÄcpuÓÅ»¯Äں˱àÒë¡£ÒÔϵIJÎÊýÉèÖý«µÃµ½ÓÅ»¯µÄÄÚºËÐÔÄÜ¡£
¢Ù vi +18 /usr/src/linux/Makefile £¬½«HOSTCC =gcc¸ÄΪ HOSTCC =egcs.
¢Ú vi +25 /usr/src/linux/Makefile
½«CC =$(CROSS_COMPILE)gcc D__KERNEL__ -I$(HPATH)
¸ÄΪ CC =$(CROSS_COMPILE)egcs D__KERNEL__ -I$(HPATH).
¢Û vi +90 /usr/src/linux/Makefile
½«CFLAGS = -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer
¸ÄΪCFLAGS = -Wall -Wstrict-prototypes -O9 -funroll-loops -ffast-math
-malign-double -mcpu=pentiumpro -march=pentiumpro -fomit-frame-pointer
-fno-exceptions
¢Ü vi +19 /usr/src/linux/Makefile
½«HOSTCFLAGS =-Wall -Wstrict-prototypes -O2 -fomit-frame-pointer
¸ÄΪHOSTCFLAGS =-Wall -Wstrict-prototypes -O9 -funroll-loops -ffast-math
-malign-double -mcpu=pentiumpro -march=pentiumpro -fomit-frame-pointer
-fno-exceptions
¸ù¾ÝÒÔÉÏÐ޸ĺóµÄmakefileÎļþÖØÐ±àÒëÄں˽«µÃµ½½ÏÓŵÄÐÔÄÜ¡£
Èý¡¢Í£Ö¹²»Ê¹ÓõķþÎñ
Sendmail, httpd, crond, kudzu, mysql, portmap, postgresql, smb, snortd, webmin,
inetd (»òÕß xinetd) µÈ¶¼ÊǺܰôµÄ³ÌÐò£¬µ«ÊÇÈç¹ûÄã²»»áʹÓÃËûÃÇ£¬¸ÉÂðÒªÈÃËûÃÇÕ¼ÓÃÄú±¦¹óµÄ×ÊÔ´ÄØ£¿¶øÇÒ£¬ÕâЩ³ÌÐò¶¼»á´øÀ´°²È«Òþ»¼¡£Ò»°ã˵À´£¬Ò»Ìס°¸É¾»¡±µÄ Linux ϵͳ£¬Ö»ÐèÒªgpm, network, syslog, ssh ºÍ xfs¡£Èç¹ûÁÙʱÓÐÐèÒª£¬¾ÍÊÖ¹¤Æô¶¯ºÃÁË¡£ÕâЩÆô¶¯½Å±¾Ò»°ã¶¼ÔÚ/etc/rc.d/init.dĿ¼Ï¡£
¼ì²é×Ô¼ºµÄ»úÆ÷ÉÏʹÓÃÖеķþÎñ£¬¿ÉÒÔ²ÉÓà nmap ¹¤¾ßɨÃè¡£
[xyj@freelamp.com]$ nmap -p1-65535 211.94.129.28
Starting nmap V. 2.54BETA30 ( www.insecure.org/nmap/ )
Interesting ports on freelamp.com (211.94.129.28):
(The 65492 ports scanned but not shown below are in state: closed)
---Edited version of the output due to space considerations--
Port State Service
...
514/tcp open shell
1025/tcp open listen
1099/tcp open unknown
1214/tcp open unknown
...
¼ì²éÌØ¶¨¶Ë¿ÚÉÏÕýÔÚÔËÐеijÌÐòÃû£¬¿ÉÒÔ²ÉÓãº
[root@freelamp.com /root]# netstat -anp|more
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
....
tcp 0 0 203.199.66.200:8007 203.199.66.197:1060 CLOSE 1005/java
tcp 0 0 203.199.66.200:22 203.199.66.197:3768 ESTABLISHED 1381/sshd
tcp 0 0 203.199.66.200:23 192.168.57.46:1546 ESTABLISHED 1229/in.telnetd: 19
....
×îºóÒ»ÁÐÏÔʾÔËÐеijÌÐò¼°Æä PID¡£
ÎÒÃÇ»¹¿ÉÒÔ²ÉÓà ps ÃüÁî¼ì²é»úÆ÷ÉÏÕýÔÚÔËÐеÄÊØ»¤³ÌÐò£º
[root@freelamp.com root]# ps xc -u 0
PID TTY STAT TIME COMMAND
...
1475 ? S 0:02 sendmail
1498 ? S 0:04 gpm
16539 ? S 0:01 httpd
...
ËÄ¡¢ÓÅ»¯´ÅÅÌ
1¡¢ÓÅ»¯·ÖÇø
ÔÚ°²×°ÏµÍ³Ö®Ç°£¬Äú¾ÍÐèÒª¶ÔÓ²ÅÌ×öºÃÇ¡µ±µÄ¹æ»®¡£»®·ÖÒ»¶¨µÄÎļþϵͳ£¬²»½ö½öÊÇϵͳ±¾ÉíµÄÐèÒª£¬¶øÇÒÔÚ°²È«²ãÃæÉÏҲʮ·ÖÓÐÒâÒå¡£ÔÚLinuxϵͳÖУ¬ÎÒÃÇ¿ÉÒÔ×ÔÓɵØ×éÖ¯´ÅÅÌ·ÖÇø¡£Ò»¸öÓÅ»¯µÄ·ÖÇø²ßÂÔ£¬¿ÉÒԺܺõظĽøLinuxϵͳµÄÐÔÄÜ£¬¼õÉÙ´ÅÅÌË鯬£¬Ìá¸ß´ÅÅÌI/OÄÜÁ¦¡£¸ù¾Ý´ÅÅ̵ÄÌØµã£¬ÎÒÃÇÖªµÀÔ½ÊÇ¿¿´ÅÅÌÍⲿµÄÖùÃæ£¬ÐýתԽ¿ì£¬¶øÇÒÿ´ÎÐýתʱ£¬´ÅÅ̶Áдͷ¿ÉÒÔ¸²¸Ç½Ï¶àµÄÇøÓò£¬Ò²¾ÍÒâζ×Å¿¿ÍⲿµÄÖùÃæ¿ÉÒԵõ½½ÏºÃµÄÐÔÄÜ¡£ËùÒÔÔÚ·ÖÇøÊ±£¬ÎÒÃÇÓ¦¸Ã¿¼Âǽ«·ÃÎÊÆµÂʸߵ쬶ÔϵͳÐÔÄÜÓ°ÏìÏà¶Ô½Ï´óµÄ·ÖÇøÖÃÓÚ´ÅÅ̵Ŀ¿Íⲿ·Ö¡£Í¬Ê±£¬ÎªÁ˼õÉÙ´ÅÅÌË鯬£¬Ó¦½«ÄÚÈݾ³£¸Ä±äµÄĿ¼·ÅÔÚµ¥¶ÀµÄ·ÖÇø¡£´Ó·½±ã±¸·ÝÊý¾ÝµÄ½Ç¶È¿¼ÂÇ£¬ÒòΪºÜ¶à±¸·Ý¹¤¾ß¶ÔÕû¸ö·ÖÇø½øÐб¸·ÝµÄЧÂÊÒª¸ß£¬ËùÒÔÎÒÃÇÓ¦½«LinuxϵͳµÄ¼¸¸öÖ÷ÒªµÄĿ¼×÷Ϊµ¥¶ÀµÄÎļþϵͳ£¬ÎªËüÃǸ÷×Ô·ÖÅäÒ»¸öÇø¡£ÍƼöµÄ·ÖÇø²ßÂÔÈ磺
ÔÚÉÏͼÖÐ,´ÅÅÌ»¹ÓÐÒ»²¿·Öδ·ÖÇøµÄ¿Õ¼ä,Ϊʲô²»ÔÚ°²×°ÏµÍ³Ê±,½«Õû¸ö´ÅÅÌ·ÖÇøÄØ?ÏÖÔÚµÄÓ²Å̿ռä±È½Ï´ó,¶øÔÚ°²×°ÏµÍ³Ê±,Ò²ÐíÄãËù°²×°µÄÎļþ¼ÓÉÏÒÔºóÔö³¤ËùÐèÒªµÄ¿Õ¼äÓò»µ½Õû¸ö´ÅÅÌ´æ´¢¿Õ¼ä¡£±£ÁôÒ»²¿·Öδ·ÖÇø¿Õ¼ä£¬µ±ÒÔºóÓÐеÄÐèҪʱ£¬¾Í¿ÉÒÔÓÃfdiskÖØÐ½«Ö®·ÖÇø¡£ÔÚ·ÖÇøÊ±£¬ÐèҪעÒâµÄÊÇ£¬¸ù¾Ýϵͳ½«À´ÔËÐеÄÐèÒª»ò¹ýÈ¥µÄ¾ÑéÀ´¹À¼Æ¸÷¸ö·ÖÇøµÄ´óС£¬ÒÔÃ⽫À´¿Õ¼ä²»¹»¡£
/dev/hda5 swap swap defaults,pri=5 0 0
/dev/hdc5 swap swap defaults,pri=5 0 0
µ±È»£¬Èç¹ûÄãµÄϵͳÄÚ´æ×ã¹»´ó£¬¶øÄãµÄϵͳÓÖÔ¶Ô¶Óò»ÁËÄÇô¶àµÄÄڴ棬ÄÇÒ²¾ÍÓò»µ½Ê²Ã´Ðé´æÁË¡£·ÖÇøÊ±Äã¾Í¿ÉÒÔ¿¼ÂÇÈ¥µô½»»»·ÖÇø¡£²»¹ý×÷Ϊһ¸öLinux·þÎñÆ÷£¬¼´Ê¹ÄãµÄÄÚ´æ×ã¹»´ó£¬»¹ÊÇÓ¦¸ÃÉèÖý»»»·ÖÇø¡£Èç¹ûÓжà¸öÓ²Å̵ϰ£¬¿ÉÒÔÔÚÿ¸öÓ²ÅÌÉϸ÷¿ª swap ·ÖÇø£¬ÁíÍ⣬½¨Òé swap ·ÖÇøµÄ´óСΪÎïÀíÄÚ´æµÄÁ½±¶¡£
2¡¢Ê¹ÓÃhdparm¸ÄÉÆLinuxϵͳÐÔÄÜ
Èç¹ûÄãµÄLinuxϵͳÔËÐÐÓÚIDEÓ²ÅÌ£¬¿ÉÒÔʹÓÃhdparm¹¤¾ßÀ´Ìá¸ß´ÅÅÌI/OµÄÐÔÄÜ¡£²»¹ýʹÓÃhdparmҪСÐÄ£¬ÒòΪ¿ÉÄÜÆÆ»µÓ²ÅÌÉϵÄÊý¾Ý¡£ËùÒÔÔÚʹÓÃhdparm֮ǰ£¬×ÐϸÔĶÁÄãµÄÓ²ÅÌÊֲᡣ¸ù¾ÝÄã¾ßÌåµÄÓ²Å̹æ¸ñÀ´Ê¹ÓÃÏàÓ¦µÄhdparm¿ª¹Ø²ÎÊý¡£¶ÔÒ»¿éUltraATA/66
EIDE Ó²ÅÌ£¬Æä¿ØÖÆÐ¾Æ¬Ö§³Ö¶à PIO ģʽºÍDMA£¬ÎÒÃÇʹÓÃÒÔÏÂÃüÁîÀ´µ÷г´ÅÅÌÐÔÄÜ£º
# /sbin/hdparm -x66 -d1 -u1 -m16 -c3 /dev/hda
Ñ¡Ïî˵Ã÷£º
¢Ù c3 £º¾ÍÊǰÑÓ²Å̵Ä16λ¸ñʽת»»Îª32λģʽ£¨32-bit mode w/sync£©¡£¿ØÖÆÊý¾ÝÈçºÎ´Ópci×ÜÏß´«µÝµ½¿ØÖÆÆ÷¡£
¢Ú m16 £º¸Ä±äÓ²Å̵Ķà·ÉÈÇøµÄ¶Á¹¦ÄÜ£¬-m16¿ÉÒÔʹµÃÓ²ÅÌÔÚÒ»´Îi/oÖжÏÖжÁÈë16¸öÉÈÇøµÄÊý¾Ý£¨¾Ý¾ßÌåÓ²Å̶ø¶¨£©¡£
¢Û d1£º´ò¿ªDMAģʽ¡£
¢Ü x66 £ºÔÚÖ§³ÖUDMA-capableµÄÓ²ÅÌÖУ¬Õâ¸ö²ÎÊý¿ÉÒÔÖ§³ÖË«DMAͨµÀµÄÊý¾Ý´«Êäģʽ¡£
¢Ý u1 £ºLinuxÔÚ´¦Àí´ÅÅÌÖжÏʱ£¬¿ÉÒÔunmaskÆäËûµÄÖжϻòÕßÏìÓ¦ÆäËûÖжÏÏà¹ØµÄÈÎÎñ¡£
²é¿´ÒÔÉϵĸü¸ÄÇé¿ö¿ÉÒÔʹÓÃÃüÁ
# /sbin/hdparm /dev/hda
²âÊÔ´ÅÅÌI/OÐÔÄÜ¿ÉÒÔʹÓÃÃüÁ
# /sbin/hdparm -tT /dev/hda
Èç¹û´ÅÅ̵ÄÐÔÄÜÓиĽøµÄ»°£¬¿ÉÒÔʹÓÃÒÔÏÂÃüÁîÀ´±£´æÉèÖãº
# /sbin/hdparm -k1 /dev/hda
3¡¢LinuxÏÂʹÓÃÈíRAID
RAID£¨´ÅÅÌÈßÓàÕóÁУ©ÊÇͨ¹ý½«Êý¾Ý·Ö²¼ÔÚ¶à¸ö´ÅÅÌÉÏÀ´ÔöÇ¿´ÅÅÌÐÔÄܺͿɿ¿ÐԵļ¼Êõ¡£Èç¹ûÄãµÄϵͳûÓÐÓ²¼þRAID¿ØÖÆÆ÷µÄ»°£¬ÔÚLinuxÏ¿ÉÒÔͨ¹ýÈí¼þÀ´ÊµÏÖRAID¡£RAIDÓкܶàµÄ¼¶±ð£¬²»Í¬µÄ¼¶±ð¶ÔÓ²¼þÓв»Í¬µÄÒªÇó£¬ÏàÓ¦Ò²»áµÃµ½²»Í¬µÄÐÔÄܺͿɿ¿ÐÔ¡£RAID0ΪÊý¾Ý·Ö¸î£¬Êý¾Ý¿é±»½»ÌæÐ´µ½´ÅÅÌ£¬¿ÉÒԵõ½×îºÃµÄ¶ÁдÐÔÄÜ£¬µ«ÊDz»ÌṩÊý¾ÝÈßÓà¡£RAID1Ϊ´ÅÅ̾µÏñ£¬Ð´µ½´ÅÅÌ1ÖеÄÒ»ÇÐҲдµ½´ÅÅÌ2ÖУ¬´ÓÈκÎÒ»¸ö´ÅÅ̶¼¿ÉÒÔ¶ÁÈ¡¡£RAID3³ýÁËÊý¾Ý·Ö¸îÖ®Í⣬»¹Ö¸¶¨Ò»¸ö´ÅÅÌÇý¶¯Æ÷À´´æ´¢ÆæÅ¼ÐÅÏ¢¡£
ÔÚLINUXÏÂͨ¹ýÈí¼þÀ´ÊµÏÖRAID£¬ ÐèÒªLINUXµÄÄÚºËÖ§³Ö£¬¿ÉÒÔͨ¹ý±àÒëÐÂÄÚºËÀ´Ìí¼Ó¶ÔRAIDµÄÖ§³Ö¡£È»ºó»¹Ðè±àÒë²¢°²×° raidtools
Èí¼þ°ü¡£raidtools ÊÇ¿ÉÒÔ³õʼ»¯¡¢Æô¶¯¡¢Í£Ö¹¼°¿ØÖÆ RAID ÕóÁеÄÓû§¼¶¹¤¾ß¡£ÏÂÃæÊÇÎÒÃÇÓÃÁ½¿éIDEÓ²ÅÌÔÚLINUXÄÚºË2.4ÉÏʵÏÖRAID0µÄ·½·¨¡£
ÉèÖ÷ÖÇø ʹÓÃRAID0ÖÁÉÙÐèÒªÁ½¸ö·ÖÇø£¬ËüÃÇλÓÚ²»Í¬µÄ´ÅÅÌ¡£×îºÃ×öRAID0µÄÁ½¸ö·ÖÇøÓÐÏàͬµÄ´óС¡£´´½¨·ÖÇøÊ±£¬½«·ÖÇøÀàÐÍÖ¸¶¨Îª "FD"¡£ÒÔʹ Linux ÄÚºËÄܽ«ËüÃÇʶ±ðΪ RAID ·ÖÇø£¬ÕâÑù£¬ÕâЩ·ÖÇø¾Í¿ÉÔÚÿ´ÎÒýµ¼Ê±×Ô¶¯±»¼ì²â²¢Æô¶¯¡£Èç¹ûÄúûÓÐÒÔÕâÖÖ·½Ê½±ê¼Ç RAID ·ÖÇø£¬ÔòÔÚÿ´ÎÒýµ¼Ö®ºó£¬±ØÐëÊ×ÏÈÊäÈë "raidstart --all" ²ÅÄܹÒÔØ RAID ÕóÁС£ÎÒÃÇ×ö³ÉRAID0µÄÁ½¸ö·ÖÇøÎªhda5ºÍhdc5¡£
±à¼/etc/raidtabÎļþ ´´½¨/etc/raidtabÎļþÒÔÃèÊöRAIDÕóÁеÄÅäÖÃÐÅÏ¢¡£Linux ÄÚºËʹÓÃÕâЩÐÅÏ¢ÔÚÒýµ¼Ê±×Ô¶¯¼ì²â²¢Æô¶¯ RAID ÕóÁУ¬Òò´Ë±ØÐë¶Ô´´½¨µÄÿ¸ö RAID ÕóÁнøÐÐÕâÖÖÅäÖ᣽«·ÖÇøhda5ºÍhdc5×é³Émd0 RAID0ÕóÁеÄÅäÖÃÎļþÈçÏ£º
raiddev /dev/md0
raid-level 0
nr-raid-disks 2
persistent-superblock 1
chunk-size 32
device /dev/hda5
raid-disk 0
device /dev/hdc5
raid-disk 1
ÔÚraidtabÎļþÖУ¬"raiddev" ÌõĿָÃ÷Òª´´½¨µÄ RAID ÕóÁУ»"nr-raid-disks"
Ö¸¶¨ÕóÁÐÖеĴÅÅÌÊýÄ¿£»"persistent-superblock" ÉèÖÃΪ 1£¬¸æËß raid ¹¤¾ßºÎʱ´´½¨¸Ã¾í£»
"chunk-size" ÒÔK×Ö½ÚÖ¸¶¨ RAID0 ʹÓõĿé´óС£»
×îºó£¬ÒªÖ¸¶¨µÄÊÇ×é³É¸ÃÕóÁеÄÉ豸¼´·ÖÇø¡£
´´½¨ÎļþϵͳʹÓÃÃüÁî"# mkraid /dev/md0" ÃüÁî³õʼ»¯/dev/md0·ÖÇø£¬Í¬Ê±½«Æô¶¯md0 RAID0ÕóÁС£½ÓÏÂÀ´£¬¼´¿ÉÔÚmd0ÉÏ´´½¨ÄãÏëÒªµÃÎļþϵͳ¡£ÎÒÃÇÔÚLinux·þÎñÆ÷ÉÏʹÓõÄÊÇReiserfsÈÕÖ¾Îļþϵͳ£¬´´½¨µÄÃüÁîΪ"# mkreiserfs /dev/md0"¡£
ÕâÑù£¬¾Í¿ÉÒÔÏñÆäËüÎļþϵͳÄÇÑùÀ´¼ÓÔØÐ´´½¨µÄ»ùÓÚRAID0µÄÎļþϵͳÁË¡£
4 ʹÓÃelvtuneµ÷г´ÅÅÌI/O
ÔÚLinuxÄÚºË2.4ÒÔºóµÄ°æ±¾ÖУ¬¿ÉÒÔͨ¹ý´ÅÅÌI/OµÄµ÷¶È²Ù×÷£¬À´¿ØÖÆ´ÅÅÌI/OµÄÏìӦʱ¼äºÍÍÌÍÂÁ¿¡£Í¨¹ýµ÷ÕûI/OÇëÇóÔÚ¶ÓÁÐÖеÄ×î´óµÈ´ýʱ¼ä£¬¿ÉÒÔÔÚÏìӦʱ¼äºÍÍÌÍÂÁ¿Ö®¼äµ÷г¡£Èç¹ûÒªÇó½ÏÉÙµÄÏìӦʱ¼ä£¬ÄÇôÍÌÍÂÁ¿½«½µµÍ£¬·´Ö®£¬½Ï³¤µÄÏìӦʱ¼äÔò¿ÉÒԵõ½½Ï´óµÄÍÌÍÂÁ¿¡£¿ÉÒÔʹÓù¤¾ß"/sbin/elvtune"À´¸Ä±ä×î´óµÄÏìӦʱ¼äÖµ¡£Ê¹Ó÷½·¨ÈçÏ£º
²é¿´µ±Ç°µÄÉèÖÃ
# /sbin/elvtune /dev/hda1
Ð޸ĵ±Ç°µÄÅäÖÃ
# /sbin/elvtune -r 2000 -w 4000 /dev/hda1
ÆäÖÐ-r²ÎÊýÕë¶Ô¶Á²Ù×÷£¬-w²ÎÊýÕë¶Ôд²Ù×÷.
¿ÉÒÔͨ¹ýÃüÁî"iostat -d -x
/dev/hda1"µÃµ½µÄƽ¾ùÐÅÏ¢£¨°üÀ¨Æ½¾ùÇëÇó´óСºÍƽ¾ù¶ÓÁг¤¶È£©À´¼àÊÓÒÔÉÏI/OÅäÖõÄЧ¹û£¬²¢µ÷ÕûÅäÖã¬ÒԵõ½×î¼ÑµÄÐÔÄÜ¡£Ò»°ãÀ´½²£¬¶ÔÓÚ¶ÁдƵ·±£¬µ«²Ù×÷µÄÊý¾ÝÁ¿½ÏÉÙµÄLinux·þÎñÆ÷£¬ÇÒ¶ÔʵʱÐÔÒªÇó½Ï¸ß£¬ÄÇô¿ÉÒÔ½«²ÎÊýµ÷С¡£·´Ö®Èç¹û¶ÔÓÚ¶Áд²»Æµ·±£¬µ«ÒªÇó¾ßÓнϴóµÄÍÌÍÂÁ¿µÄLinux·þÎñÆ÷£¬¿ÉÒÔ½«²ÎÊýµ÷´ó£¬ÒÔ»ñµÃ½Ï´óµÄÍÌÍÂÁ¿¡£
Îå¡¢Îļþ¼°Îļþϵͳµ÷г
1¡¢¿é´óС
´´½¨Îļþϵͳʱ£¬¿ÉÒÔÖ¸¶¨¿éµÄ´óС¡£Èç¹û½«À´ÔÚÄãµÄÎļþϵͳÖÐÊÇһЩ±È½Ï´óµÄÎļþµÄ»°£¬Ê¹ÓýϴóµÄ¿é´óС½«µÃµ½½ÏºÃµÄÐÔÄÜ¡£½«ext2ÎļþϵͳµÄ¿é´óСµ÷ÕûΪ4096byte¶ø²»ÊÇȱʡµÄ1024byte£¬¿ÉÒÔ¼õÉÙÎļþË鯬£¬¼Ó¿ìfsckɨÃèµÄËٶȺÍÎļþɾ³ýÒÔ¼°¶Á²Ù×÷µÄËÙ¶È¡£ÁíÍ⣬ÔÚext2µÄÎļþϵͳÖУ¬Îª¸ùĿ¼±£ÁôÁË5%µÄ¿Õ¼ä£¬¶ÔÒ»¸ö´óµÄÎļþϵͳ£¬³ý·ÇÓÃ×÷ÈÕÖ¾Îļþ£¬5%µÄ±ÈÀýÓÐЩ¹ý¶à¡£¿ÉÒÔʹÓÃÃüÁî
# mke2fs -b 4096 -m 1 /dev/hda6
½«Ëü¸ÄΪ1%²¢ÒÔ¿é´óС4096byte´´½¨Îļþϵͳ¡£
ʹÓöà´óµÄ¿é´óС£¬ÐèÒª¸ù¾ÝÄãµÄϵͳ×ۺϿ¼ÂÇ£¬Èç¹ûϵͳÓÃ×÷Óʼþ»òÕßÐÂÎÅ·þÎñÆ÷£¬Ê¹ÓýϴóµÄ¿é´óС£¬ËäÈ»ÐÔÄÜÓÐËùÌá¸ß£¬µ«»áÔì³É´ÅÅ̿ռä½Ï´óµÄÀË·Ñ¡£±ÈÈçÎļþϵͳÖеÄÎļþƽ¾ù´óСΪ2145byte£¬Èç¹ûʹÓÃ4096byteµÄ¿é´óС£¬Æ½¾ùÿһ¸öÎļþ¾Í»áÀË·Ñ1951byte¿Õ¼ä¡£Èç¹ûʹÓÃ1024byteµÄ¿é´óС£¬Æ½¾ùÿһ¸öÎļþ»áÀË·Ñ927byte¿Õ¼ä¡£ÔÚÐÔÄܺʹÅÅ̵Ĵú¼ÛÉÏÈçºÎƽºâ£¬Òª¿´¾ßÌåÓ¦ÓõÄÐèÒª¡£
2 ²»Ê¹ÓÃatimeÊôÐÔ
µ±Îļþ±»´´½¨£¬Ð޸ĺͷÃÎÊʱ£¬Linuxϵͳ»á¼Ç¼ÕâЩʱ¼äÐÅÏ¢¡£¼Ç¼Îļþ×î½üÒ»´Î±»¶ÁÈ¡µÄʱ¼äÐÅÏ¢£¬µ±ÏµÍ³µÄ¶ÁÎļþ²Ù×÷Ƶ·±Ê±£¬½«ÊÇÒ»±Ê²»ÉٵĿªÏú¡£ËùÒÔ£¬ÎªÁËÌá¸ßϵͳµÄÐÔÄÜ£¬ÎÒÃÇ¿ÉÒÔÔÚ¶ÁÈ¡Îļþʱ²»ÐÞ¸ÄÎļþµÄatimeÊôÐÔ¡£¿ÉÒÔͨ¹ýÔÚ¼ÓÔØÎļþϵͳʱʹÓÃnotimeÑ¡ÏîÀ´×öµ½ÕâÒ»µã¡£µ±ÒÔnoatimeÑ¡Ïî¼ÓÔØ£¨mount£©Îļþϵͳʱ£¬¶ÔÎļþµÄ¶ÁÈ¡²»»á¸üÐÂÎļþÊôÐÔÖеÄatimeÐÅÏ¢¡£ÉèÖÃnoatimeµÄÖØÒªÐÔÊÇÏû³ýÁËÎļþϵͳ¶ÔÎļþµÄд²Ù×÷£¬ÎļþÖ»ÊǼòµ¥µØ±»ÏµÍ³¶ÁÈ¡¡£ÓÉÓÚд²Ù×÷Ïà¶Ô¶ÁÀ´ËµÒª¸üÏûºÄϵͳ×ÊÔ´£¬ËùÒÔÕâÑùÉèÖÿÉÒÔÃ÷ÏÔÌá¸ß·þÎñÆ÷µÄÐÔÄÜ¡£×¢ÒâwtimeÐÅÏ¢ÈÔÈ»ÓÐЧ£¬ÈκÎʱºòÎļþ±»Ð´£¬¸ÃÐÅÏ¢ÈÔ±»¸üС£
±ÈÈçÔÚÄãµÄϵͳÖУ¬ÒªÎª/homeÎļþϵͳÉèÖÃnotimeÑ¡Ï¿ÉÒÔÐÞ¸Ä/etc/fstabÎļþÏàÓ¦µÄÐÐÈçÏ£º
LABEL=/home /home ext2 noatime 1 2
Ҫʹ¸ÃÉèÖÃÁ¢¼´ÉúЧ£¬¿ÉÔËÐÐÃüÁî"#mount -oremount /home"¡£ÕâÑùÒÔºóϵͳ¶ÁÈ¡/homeϵÄÎÄ ¼þʱ½«²»»áÔÙÐÞ¸ÄatimeÊôÐÔ¡£
3 µ÷Õû»º³åÇøË¢Ð²ÎÊý
LinuxÄÚºËÖУ¬°üº¬ÁËһЩ¶ÔÓÚϵͳÔËÐÐ̬µÄ¿ÉÉèÖòÎÊý¡£»º³åˢеIJÎÊý¿ÉÒÔͨ¹ýµ÷Õû /proc/sys/vm/bdflushÎļþÀ´Íê³É£¬Õâ¸öÎļþµÄ¸ñʽÊÇÕâÑùµÄ£º
# cat /proc/sys/vm/bdflush
30 64 64 256 500 3000 60 0 0
ÿһÀ¸ÊÇÒ»¸ö²ÎÊý£¬ÆäÖÐ×îÖØÒªµÄÊÇÇ°Ãæ¼¸¸ö²ÎÊý¡£µÚÒ»¸öÊý×ÖÊÇÔÚ"dirty"»º³åÇø´ïµ½¶àÉÙµÄʱºòÇ¿ÖÆ»½ÐÑbdflush½ø³ÌË¢ÐÂÓ²ÅÌ£¬µÚ¶þ¸öÊý×ÖÊÇÿ´ÎÈÃbdflush½ø³ÌˢжàÉÙ¸ödirty¿é¡£Ëùνdirty¿éÊDZØÐëдµ½´ÅÅÌÖеĻº´æ¿é¡£½ÓÏÂÀ´µÄ²ÎÊýÊÇÿ´ÎÔÊÐíbd flush½«¶àÉÙ¸öÄÚ´æ¿éÅÅÈë¿ÕÏеĻº³å¿éÁÐ±í¡£ ÒÔÉÏֵΪRedHat Linux 7.1ÖеÄȱʡֵ¡£ÈçºÎÐÞ¸ÄËüÃÇÄØ£¿¶Ô²»Í¬µÄϵͳÓÐÒÔÏÂÁ½ÖÖ·½·¨
£¨1£©# echo "100 128 128 512 5000 3000 60 0 0">/proc/sys/vm/bdflush
²¢½«ÕâÌõÃüÁî¼Óµ½/etc/rc.d/rc.localÎļþÖÐÈ¥¡£
£¨2£©ÔÚ/etc/sysctl.conf ÎļþÖмÓÈëÈçÏÂÐÐ: vm.bdflush = 100 128 128 512 5000 3000 60 0 0
ÒÔÉϵÄÉèÖüӴóÁË»º³åÇø´óС£¬½µµÍÁËbdflush±»Æô¶¯µÄƵ¶È£¬Í¬Ê±Ò²Ôö¼ÓÁËÍòһϵͳ±ÀÀ£¶ªÊ§Êý¾ÝµÄΣÏÕÐÔ¡£VFSµÄ»º³åË¢ÐÂÊÇLinuxÎļþϵͳ¸ßЧµÄÖØÒªÔÒòÖ®Ò»£¬Èç¹ûÐÔÄܶÔÄãÕæµÄºÜÖØÒª£¬Ó¦¸Ã¿¼Âǵ÷ÕûÕâ¸ö²ÎÊý¡£
4 µ÷ÕûÎļþ¾ä±úÊýºÍi-½ÚµãÊý
ÔÚÒ»¸ö´óÐ͵ÄÍøÕ¾·þÎñÆ÷ÆäÖУ¬¿ÉÄÜLinuxĬÈϵÄͬʱ¿É´ò¿ª×î´óÎļþÊý²»ÄÜÂú×ãϵͳÐèÒª£¬ÎÒÃÇ¿ÉÒÔͨ¹ýµ÷ÕûÎļþ¾ä±úÊýºÍi-½ÚµãÊýÀ´Ôö¼ÓϵͳµÄȱʡµÄÏÞÖÆ¡£²»Í¬µÄLinuxÄں˰汾Óв»Í¬µÄµ÷Õû·½·¨¡£
ÔÚLinuxÄÚºË2.2.xÖпÉÒÔÓÃÈçÏÂÃüÁîÐ޸ģº
# echo '8192' > /proc/sys/fs/file-max
# echo '32768' > /proc/sys/fs/inode-max
²¢½«ÒÔÉÏÃüÁî¼Óµ½/etc/rc.c/rc.localÎļþÖУ¬ÒÔʹϵͳÿ´ÎÖØÐÂÆô¶¯Ê±ÅäÖÃÒÔÉÏÖµ¡£
ÔÚLinuxÄÚºË2.4.xÖÐÐèÒªÐÞ¸ÄÔ´´úÂ룬ȻºóÖØÐ±àÒëÄں˲ÅÉúЧ¡£±à¼LinuxÄÚºËÔ´´úÂëÖÐµÄ include/linux/fs.hÎļþ£¬½« NR_FILE
ÓÉ8192¸ÄΪ 65536£¬½«NR_RESERVED_FILES ÓÉ10 ¸ÄΪ 128¡£±à¼fs/inode.c Îļþ½« MAX_INODE
ÓÉ16384¸ÄΪ262144¡£
Ò»°ãÇé¿öÏ£¬×î´ó´ò¿ªÎļþÊý±È½ÏºÏÀíµÄÉèÖÃΪÿ4MÎïÀíÄÚ´æ256£¬±ÈÈç256MÄÚ´æ¿ÉÒÔÉèΪ16384£¬¶ø×î´óµÄʹÓõÄi½ÚµãµÄÊýĿӦ¸ÃÊÇ×î´ó´ò¿ªÎļþÊýÄ¿µÄ3±¶µ½4±¶¡£
5 ʹÓÃÄÚ´æÎļþϵͳ
ÔÚLinuxÖпÉÒÔ½«Ò»²¿·ÖÄÚ´æµ±×÷·ÖÇøÀ´Ê¹Óã¬ÎÒÃdzÆÖ®ÎªRamDisk¡£¶ÔÓÚһЩ¾³£±»·ÃÎʵÄÎļþ£¬¶øËüÃÇÓÖ²»»á±»¸ü¸Ä£¬¿ÉÒÔ½«ËüÃÇͨ¹ýRamDisk·ÅÔÚÄÚ´æÖУ¬¼´¿ÉÃ÷ÏÔµØÌá¸ßϵͳµÄÐÔÄÜ¡£µ±È»ÄãµÄÄÚ´æ¿ÉÒª×ã¹»´óÁË¡£RamDiskÓÐÁ½ÖÖ£¬Ò»ÖÖ¿ÉÒÔ¸ñʽ»¯£¬¼ÓÔØ£¬ÔÚLinuxÄÚºË2.0/2.2¾ÍÒѾ֧³Ö£¬Æä²»×ãÖ®´¦ÊÇ´óС¹Ì¶¨¡£ÁíÒ»ÖÖÊÇÄÚºË2.4²ÅÖ§³ÖµÄ£¬Í¨¹ýRamfs»òÕßtmpfsÀ´ÊµÏÖ£¬ËüÃDz»Äܱ»¸ñʽ»¯£¬µ«ÊÇÓÃÆðÀ´Áé»î£¬Æä´óÐ¡ËæËùÐèÒªµÄ¿Õ¼ä¶øÔö¼Ó»ò¼õÉÙ¡£ÕâÀïÖ÷Òª½éÉÜÒ»ÏÂRamfsºÍTmpfs¡£
Ramfs¹ËÃû˼ÒåÊÇÄÚ´æÎļþϵͳ£¬Ëü¹¤×÷ÓÚÐéÄâÎļþϵͳ£¨VFS£©²ã¡£²»Äܸñʽ»¯£¬¿ÉÒÔ´´½¨¶à¸ö£¬ÔÚ´´½¨Ê±¿ÉÒÔÖ¸¶¨Æä×î´óÄÜʹÓõÄÄÚ´æ´óС¡£Èç¹ûÄãµÄLinuxÒѾ½«Ramfs±àÒë½øÄںˣ¬Äã¾Í¿ÉÒÔºÜÈÝÒ×µØÊ¹ÓÃRamfsÁË¡£´´½¨Ò»¸öĿ¼£¬¼ÓÔØRamfsµ½¸ÃĿ¼¼´¿É¡£
# mkdir -p /RAM1
# mount -t ramfs none /RAM1
ȱʡÇé¿öÏ£¬Ramfs±»ÏÞÖÆ×î¶à¿ÉʹÓÃÄÚ´æ´óСµÄÒ»°ë¡£¿ÉÒÔͨ¹ýmaxsize£¨ÒÔkbyteΪµ¥Î»£©Ñ¡ÏîÀ´¸Ä±ä¡£
# mkdir -p /RAM1
# mount -t ramfs none /RAM1 -o maxsize=10000
ÒÔÉϼ´´´½¨ÁËÒ»¸öÏÞ¶¨ÁË×î´óʹÓÃÄÚ´æ´óСΪ10MµÄramdisk¡£
TmpfsÊÇÒ»¸öÐéÄâÄÚ´æÎļþϵͳ£¬Ëü²»Í¬ÓÚ´«Í³µÄÓÿéÉ豸ÐÎʽÀ´ÊµÏÖµÄramdisk£¬Ò²²»Í¬ÓÚÕë¶ÔÎïÀíÄÚ´æµÄRamfs¡£Tmpfs¿ÉÒÔʹÓÃÎïÀíÄڴ棬Ҳ¿ÉÒÔʹÓý»»»·ÖÇø¡£ÔÚLinuxÄÚºËÖУ¬ÐéÄâÄÚ´æ×ÊÔ´ÓÉÎïÀíÄڴ棨RAM£©ºÍ½»»»·ÖÇø×é³É£¬ÕâЩ×ÊÔ´ÊÇÓÉÄÚºËÖеÄÐéÄâÄÚ´æ×ÓϵͳÀ´¸ºÔð·ÖÅäºÍ¹ÜÀí¡£Tmpfs¾ÍÊǺÍÐéÄâÄÚ´æ×ÓϵͳÀ´"´ò½»µÀ"µÄ£¬ËüÏòÐéÄâÄÚ´æ×ÓϵͳÇëÇóÒ³À´´æ´¢Îļþ£¬ËüͬLinuxµÄÆäËüÇëÇóÒ³µÄ²¿·ÖÒ»Ñù£¬²»ÖªµÀ·ÖÅ䏸×Ô¼ºµÄÒ³ÊÇÔÚÄÚ´æÖл¹ÊÇÔÚ½»»»·ÖÇøÖС£TmpfsͬRamfsÒ»Ñù£¬Æä´óСҲ²»Êǹ̶¨µÄ£¬¶øÊÇËæ×ÅËùÐèÒªµÄ¿Õ¼ä¶ø¶¯Ì¬µÄÔö¼õ¡£Ê¹ÓÃtmpfs£¬Ê×ÏÈÄã±àÒëÄÚºËʱµÃÑ¡Ôñ"ÐéÄâÄÚ´æÎļþϵͳ֧³Ö£¨Virtual
memory filesystem support£©" £¬È»ºó¾Í¿ÉÒÔ¼ÓÔØtmpfsÎļþϵͳÁË¡£
# mkdir -p /mnt/tmpfs
# mount tmpfs /mnt/tmpfs -t tmpfs
ΪÁË·ÀÖ¹tmpfsʹÓùý¶àµÄÄÚ´æ×ÊÔ´¶øÔì³ÉϵͳµÄÐÔÄÜϽµ»òËÀ»ú£¬¿ÉÒÔÔÚ¼ÓÔØÊ±Ö¸¶¨tmpfsÎļþϵͳ´óСµÄ×î´óÏÞÖÆ¡£
# mount tmpfs /mnt/tmpfs -t tmpfs -o size=32m
ÒÔÉÏ´´½¨µÄtmpfsÎļþϵͳ¾Í¹æ¶¨ÁËÆä×î´óµÄ´óСΪ32M¡£²»¹ÜÊÇʹÓÃramfs»¹ÊÇtmpfs£¬±ØÐëÃ÷°×µÄÊÇ£¬Ò»µ©ÏµÍ³ÖØÆô£¬ËüÃÇÖеÄÄÚÈݽ«»á¶ªÊ§¡£ËùÒÔÄÇЩ¶«Î÷¿ÉÒÔ·ÅÔÚÄÚ´æÎļþϵͳÖеøù¾ÝϵͳµÄ¾ßÌåÇé¿ö¶ø¶¨¡£
6 ʹÓÃÈÕÖ¾Îļþϵͳ
Èç¹ûLinuxϵͳÓÉÓÚÒâÍâÇé¿ö¶øÃ»ÓÐÕý³£¹Ø»ú£¬Ôò¿ÉÄÜÒýÆðÎļþϵͳÖÐijЩÎļþµÄÔªÊý¾Ý£¨meta-data¼´ºÍÎļþÓйصÄÐÅÏ¢£¬ÀýÈ磺ȨÏÞ¡¢ËùÓÐÕßÒÔ¼°´´½¨ºÍ·ÃÎÊʱ¼ä£©Ôâµ½ÆÆ»µ¡£ÎļþϵͳÐèҪά»¤ÎļþµÄÔªÊý¾ÝÀ´±£Ö¤ÎļþµÄ¿É×éÖ¯ºÍ¿É´æÈ¡£¬Èç¹ûÔªÊý¾Ý´¦ÓÚ²»ºÏÀí»ò²»Ò»ÖµÄ״̬£¬ÄÇô¾Í²»ÄÜ·ÃÎʺʹæÈ¡Îļþ¡£µ±ÏµÍ³ÖØÐÂÆô¶¯Ê±£¬fsck½«É¨Ãè/etc/fstabÎļþÖÐËùÁгöµÄËùÓÐÎļþϵͳ£¬È·±£ËüÃǵÄÔªÊý¾Ý´¦ÓÚ¿ÉÓõÄ״̬¡£Èç¹û·¢ÏÖÔªÊý¾Ý²»Ò»Ö£¬fsck½«É¨ÃèºÍ¼ì²âÔªÊý¾Ý£¬²¢¾ÀÕý´íÎó¡£Èç¹ûÎļþϵͳºÜ´ó£¬Õâ¸ö¹ý³Ì½«ÐèÒªºÜ³¤µÄʱ¼ä¡£Îª½â¾öÕâ¸öÎÊÌ⣬¿ÉÒÔʹÓÃÈÕÖ¾Îļþϵͳ¡£ÈÕÖ¾ÎļþϵͳÓöÀÁ¢µÄÈÕÖ¾Îļþ¸ú×Ù´ÅÅÌÄÚÈݵı仯£¬ÔÚдÈëÎļþÄÚÈݵÄͬʱдÈëÎļþµÄÔªÊý¾Ý¡£Ã¿´ÎÐÞ¸ÄÎļþµÄÔªÊý¾Ýʱ£¬¶¼ÒªÏÈÏò³ÆÎª"ÈÕÖ¾"µÄÊý¾Ý½á¹¹µÇ¼ÇÏàÓ¦µÄÌõÄ¿¡£ÕâÑù£¬ÈÕÖ¾Îļþϵͳ¾Íά»¤ÁË×î½ü¸ü¸ÄµÄÔªÊý¾ÝµÄ¼Ç¼¡£µ±¼ÓÔØÈÕÖ¾Îļþϵͳʱ£¬Èç¹û·¢ÏÖÁË´íÎ󣬲»»áɨÃèÕû¸öÎļþϵͳµÄÔªÊý¾Ý£¬¶øÊǸù¾ÝÈÕÖ¾¼ì²é×î½ü±»¸ü¸ÄµÄÔªÊý¾Ý¡£ËùÒÔÏà¶ÔÓÚ´«Í³µÄÎļþϵͳ£¨Èçext2£©£¬ÈÕÖ¾Îļþϵͳ´ó´óµØ¼Ó¿ìÁËɨÃèºÍ¼ì²âµÄʱ¼ä¡£
LinuxÏ¿ÉÓõÄÈÕÖ¾ÎļþϵͳºÜ¶à£¬ÈçXFS£¬JFS£¬Reiserfs£¬ext3µÈµÈ¡£ÈÕÖ¾ÎļþϵͳÖ÷Òª±»Éè¼ÆÎª·þÎñÆ÷»·¾³Ìṩ³öÉ«ÐÔÄܺ͸߿ÉÓÃÐÔ¡£µ±È»£¬
Linux ¹¤×÷Õ¾ºÍ¼ÒÓûúÆ÷Ò²¿É´Ó¾ßÓиßÐÔÄܵĿɿ¿ÈÕÖ¾ÎļþϵͳÖлñÒæ¡£°²×°ÈÕÖ¾Îļþϵͳ£¬Ò»°ãÐèÒªÏÂÔØÏàÓ¦µÄѹËõ°ü¡¢ÎªÄں˴ò²¹¶¡¡¢ÖØÐÂÅäÖúÍÖØÐ±àÒëÄںˡ£
ÏêϸµÄ°²×°¹ý³Ì¿É·ÃÎÊÏàÓ¦ÎļþϵͳµÄ¹Ù·½ÍøÕ¾¡£
а汾µÄ Linux ¶¼Ö§³ÖÈÕÖ¾Îļþϵͳ£¬ÕâÀàÎļþϵͳ²»½öÌṩÎļþÍêÕûÐÔÉÏ¿ìËÙ»Ö¸´£¬ÔÚ¶ÁдËÙ¶ÈÉÏÒ²½ÏÆÕͨµÄ ext2 ÎļþϵͳÓкܴóÌáÉý¡£
ÎļþµÄ×îºó´æÈ¡Ê±¼ä£¬¶ÔºÜ¶àÈËÀ´ËµÃ»ÓÐÈκÎÓô¦£¬Òò´Ë£¬ÎÒÃÇ¿ÉÒԹرղÙ×÷ϵͳ¼Ç¼Îļþ×îºó´æÈ¡Ê±¼äµÄ¹¦ÄÜ£¬Ð޸ģº /etc/fstab £º
°Ñ dev/hda6 /home ext2 defaults 1 2
¸ÄΪ£º
/dev/hda6 /home ext2 defaults,noatime 1 2
Áù¡¢¹Ø±Õ¶àÓàµÄÐéÄâ¿ØÖÆÌ¨
ÎÒÃÇÖªµÀ´Ó¿ØÖÆÌ¨Çл»µ½ X ´°¿Ú£¬Ò»°ã²ÉÓà Alt-F7 £¬ÎªÊ²Ã´ÄØ£¿ÒòΪϵͳĬÈ϶¨ÒåÁË 6 ¸öÐéÄâ¿ØÖÆÌ¨£¬ËùÒÔ X
¾Í³ÉÁ˵Ú7¸ö¡£Êµ¼ÊÉÏ£¬ºÜ¶àÈËÒ»°ã²»»áÐèÒªÕâô¶àÐéÄâ¿ØÖÆÌ¨µÄ£¬ÐÞ¸Ä
/etc/inittab £¬×¢Ê͵ôÄÇЩÄã²»ÐèÒªµÄ¡£
# Run gettys in standard runlevels
1:2345:respawn:/sbin/mingetty tty1
2:2345:respawn:/sbin/mingetty tty2
3:2345:respawn:/sbin/mingetty tty3
#4:2345:respawn:/sbin/mingetty tty4
#5:2345:respawn:/sbin/mingetty tty5
#6:2345:respawn:/sbin/mingetty tty6
Æß¡¢½ø³ÌÏÞÖÆ¡°ulimit¡±²ÎÊý
Linux¶ÔÓÚÿ¸öÓû§£¬ÏµÍ³ÏÞÖÆÆä×î´ó½ø³ÌÊý¡£¿ÉÒÔÔÚÓû§¸ùĿ¼Ïµġ°.bashrc¡±Îļþ»òÕßʵ¼ÊʹÓÃÓë¡°.bashrc¡±¹¦ÄÜÏ൱µÄshellµÄ½Å±¾ÖмÓÈëÕâÖÖÏÞÖÆ¡£ÎªÌá¸ßÐÔÄÜ£¬¿ÉÒÔÉèÖ󬼶Óû§rootµÄ×î´ó½ø³ÌÊýΪÎÞÏÞ¡£±à¼¡°.bashrc¡±Îļþ£¨ÀýÈ磺vi
/root/.bashrc£©²¢¼ÓÈëÏÂÃæÒ»ÐУº
ulimit -u unlimited
È»ºóÍ˳ö£¬ÖØÐµÇ¼¡£ÎªÁËÑéÖ¤£¬¿ÉÒÔÒÔrootÉí·ÝµÇ¼£¬È»ºó¼üÈ룺 ¡°ulimit -a¡±£¬ÔÚ×î´óÓû§½ø³ÌÊýÒ»ÏîÖÐÓ¦¸ÃÏÔʾ¡°unlimited¡±£¬ÀýÈ磺
[root@deep]# ulimit -a
core file size (blocks) 1000000
data seg size (kbytes) unlimited
file size (blocks) unlimited
max memory size (kbytes) unlimited
stack size (kbytes) 8192
cpu time (seconds) unlimited
max user processes unlimited * this line.
pipe size (512 bytes) 8
open files 1024
virtual memory (kbytes) 2105343
×¢Ò⣺Äã¿ÉÄܸüÇãÏòÓÚÔÚÃüÁîÐмüÈë¡°unlimit
-u¡±¶ø²»ÊǰÑËü¼ÓÈëµ½Îļþ¡°/root/.bashrc¡±ÖС£µ«Îª±£ÏÕÆð¼û£¬½¨Ò黹ÊǰÑËü¼ÓÈëÎļþ¡°/root/.bashrc¡±ÖС£
һЩ¸ü¸ÄÓû§ÏÞÖÆµÄÀý×ÓÈçÏ£º
ulimit -n 4096 ½«Ã¿¸ö½ø³Ì¿ÉÒÔ´ò¿ªµÄÎļþÊýÄ¿¼Ó´óµ½4096£¬È±Ê¡Îª1024
ulimit -m 4096 ÏÞÖÆÃ¿¸ö½ø³ÌʹÓõÄÄÚ´æÊý¡£
°Ë¡¢ÆäËü·½ÃæµÄÓÅ»¯
1 µ÷гbuffermem
ÎļþbuffermenºÍÄÚºËÐéÄâÄÚ´æ×ÓϵͳÃÜÇÐÏà¹Ø¡£Îļþ/proc/sys/vm/buffermem¿ØÖƶà´óÄÚ´æ±»ÓÃÓÚ»º³åÇø£¨°Ù·ÖÊý±íʾ£©¡£ÄÚºË2.4µÄȱʡֵΪ£º:
"2 10 60"¡£¿ÉÒÔ°´ÈçÏ·½·¨Ð޸ģº
# echo "70 10 60" >/proc/sys/vm/buffermem
²¢½«Ö®¼Óµ½½Å±¾Îļþ/etc/rc.d/rc.local ÖС£»òÕßÔÚ/etc/sysctl.confÎļþÖмÓÈë
vm.buffermem = 70 10 60
µÚÒ»¸ö²ÎÊý
70Òâζ×ÅÖÁÉÙ·ÖÅä70%µÄÄÚ´æÓÃ×÷»º³åÇø¡£ºóÁ½¸ö²ÎÊý±£³ÖϵͳµÄĬÈÏÖµ¡£µÚÒ»¸ö²ÎÊýÉèÖÃΪ¶à´óºÏÊÊ£¬ÒÀÀµÓÚϵͳµÄÄÚ´æ´óСºÍϵͳ¸ß¸ºÔØÊ±ÄÚ´æµÄʹÓÃÇé¿ö£¨¿ÉÓÃfree¼àÊÓ£©¡£
2 ¹Ø±ÕX Ïà¹ØµÄÈí¼þ
³ý·ÇÓбØÒª·ñÔò²»Òª°²×°Í¼ÐνçÃæ£¬Èç¹û°²×°Á˰ѻúÆ÷Æô¶¯ºóµÄȱʡ½çÃæÎª Console £º
Ð޸ģº /etc/inittab °Ñ
id:5:initdefault:
ÐÞ¸ÄΪ£º
id:3:initdefault:
½áÂÛ£º
ϵͳÓÅ»¯µÄÕÜѧ¿ÉÒÔ¼òµ¥µÄ¹é½áΪËĸö×Ö£º¡°ÉÙ¾ÍÊǶࡱ£»Ö»ÔËÐÐÄÇЩÄãÐèÒªµÄ·þÎñ£¬Ê¹ÓÃÕýÈ·µÄÓ¦ÓÃÀ´Íê³ÉÈÎÎñ£¬Ê¹ÓÃÃüÁîÐз½Ê½£¬Ö»Óгä·Ö¾«¼òÁËÄãµÄϵͳºó£¬ÄãµÄϵͳÐÔÄܲÅÄܳä·Ö·¢»Ó¡£LinuxÊÇÒ»¸öÁé»î¶øÓÖ¿ª·ÅµÄϵͳ¡£Óû§¿ÉÒÔÕë¶Ô¾ßÌåµÄÓ¦Óû·¾³£¬´ÓϵͳµÄÍâΧµ½ÏµÍ³µÄ
Äں˽øÐе÷г¡£ÏµÍ³µÄÍâΧµÄµ÷г°üÀ¨ÏµÍ³Ó²¼þµÄÅäÖõ½ÏµÍ³°²×°ºÍϵͳ·þÎñµÄÓÅ»¯µÈ¡£ÏµÍ³Äں˵ĵ÷г°üÀ¨²ÎÊýµÄÐ޸ĺ͸ĽøÏµÍ³µÄÔ´´úÂë¡£ÎÒÃdzýÁËÕë¶ÔϵͳÄÚÍâµÄµ÷г֮Í⣬»¹Ó¦¸ÃÕë¶Ô²»Í¬µÄÓ¦ÓýøÐе÷г£¬±ÈÈçÎÒÃÇÔÚÕë¶ÔÓÃ×÷mysqlÊý¾Ý¿â·þÎñÆ÷µÄLinuxϵͳµÄµ÷гÖУ¬Õë¶ÔmysqlÊý¾Ý¿âµÄÌØµã£¬°´ÕÕ±¾Îĵĸ÷¸öµ÷г·½ÃæÍ⣬ÁíÍ⻹°üÀ¨ÍøÂçµÄµ÷г£¬¶ÔÓ¦ÓÃϵͳÐÔÄܽøÐÐÁË×ۺϵ÷гµÈ¡£Í¬ÑùÕë¶Ô²»Í¬Ó¦ÓÃÒª×ö²»Í¬µÄµ÷Õû£¬±ÈÈçapache£¬oracle£¬mysql£¬informixµÈµÈ¡£