激情五月天婷婷,亚洲愉拍一区二区三区,日韩视频一区,a√天堂中文官网8

<ul id="buwfs"><strike id="buwfs"><strong id="buwfs"></strong></strike></ul>
    <output id="buwfs"></output>
  • <dfn id="buwfs"><source id="buwfs"></source></dfn>
      <dfn id="buwfs"><td id="buwfs"></td></dfn>
      <div id="buwfs"><small id="buwfs"></small></div>
      <dfn id="buwfs"><source id="buwfs"></source></dfn>
      1. <dfn id="buwfs"><td id="buwfs"></td></dfn>
        始創(chuàng)于2000年 股票代碼:831685
        咨詢熱線:0371-60135900 注冊(cè)有禮 登錄
        • 掛牌上市企業(yè)
        • 60秒人工響應(yīng)
        • 99.99%連通率
        • 7*24h人工
        • 故障100倍補(bǔ)償
        全部產(chǎn)品
        您的位置: 網(wǎng)站首頁(yè) > 幫助中心>文章內(nèi)容

        Linux通用系統(tǒng)優(yōu)化 (1)

        發(fā)布時(shí)間:  2012/8/14 19:42:07

          針對(duì)系統(tǒng)的優(yōu)化工作需要根據(jù)不同的系統(tǒng)采用不同的辦法。本文旨在描述通用的優(yōu)化 Linux 的一些辦法。

          一、編譯選項(xiàng)

          “etc/profile”文件含有系統(tǒng)大量的環(huán)境和啟動(dòng)程序的配置信息。你在該文件中進(jìn)行的配置,可以通過(guò)申請(qǐng)全局環(huán)境變量來(lái)實(shí)現(xiàn)。因此,在該文件中設(shè)置優(yōu)化標(biāo)志,是一種明智的選擇。要想使x86程序獲得最佳性能,可以在編譯時(shí),使用最佳的優(yōu)化選項(xiàng)-O9 。許多程序的“Makefile”文件中已經(jīng)含有-O2選項(xiàng),而-O9使編譯器采用最高級(jí)別的優(yōu)化。盡管它將增加最終程序的大小,但這樣可以獲得更高的運(yùn)行速度。編譯時(shí),使用“-fomit-frame-pointer”選項(xiàng),程序運(yùn)行時(shí),訪問(wèn)變量時(shí)將使用堆棧。但是,使用這一選項(xiàng),生產(chǎn)的代碼將無(wú)法調(diào)試。使用“-mcpu=cpu_type”和“-march=cpu_type”選項(xiàng),Gcc將針對(duì)這種型號(hào)CPU進(jìn)行專門(mén)的優(yōu)化,但生成的代碼只能在所指定的CPU或更高系列的CPU上運(yùn)行。當(dāng)我們采用 -O9 來(lái)編譯程序時(shí),或許文件字節(jié)數(shù)是最大的,但是往往其運(yùn)行速度也是最快的。根據(jù)不同的機(jī)器架構(gòu),你可以把下面的語(yǔ)句加入 /etc/profile 。

          對(duì)于CPU i686或PentiumPro、Pentium II、Pentium III等:

          CFLAGS='-O9 -funroll-loops -ffast-math -malign-double -mcpu=pentiumpro -march=pentiumpro -fomit-frame-pointer -fno-exceptions'

          對(duì)于CPU i586或Pentium:

          CFLAGS='-O3 -march=pentium -mcpu=pentium -ffast-math -funroll-loops -fomit-frame-pointer -fforce-mem -fforce-addr -malign-double -fno-exceptions'

          對(duì)于CPU i486:

          FLAGS='-O3 -funroll-all-loops -malign-double -mcpu=i486 -march=i486 -fomit-frame-pointer -fno-exceptions'

          在進(jìn)行完以上設(shè)置之后,緊接者著把“CFLAGS LANG LESSCHARSET”加入到“etc/profile”文件中的“export”行中:

          export PATH PS1 HOSTNAME HISTSIZE HISTFILESIZE USER LOGNAME MAIL INPUTRC CFLAGS LANG LESSCHARSET

          然后,重新登錄,這時(shí),環(huán)境變量CFLAGS已經(jīng)被賦值,編譯器和其它配置工具可以使用它。對(duì)Pentium(Pro/II/III)的優(yōu)化必須使用egcs或pgcc編譯器。Linux的缺省安裝中,已經(jīng)裝上了egcs,所以無(wú)需擔(dān)心。

          另外,安裝程序時(shí),使用 tarball 格式總要比 RPM 格式來(lái)得好,因?yàn)椋?tarball 需要重新編譯,能針對(duì)你的機(jī)器架構(gòu)作優(yōu)化,得到最好的性能。

          二、重新編譯內(nèi)核

          一般的 Linux 發(fā)行商發(fā)布的 Linux 版本,其內(nèi)核總是會(huì)帶有一些對(duì)你來(lái)說(shuō)不是很實(shí)用的東西,例如對(duì)HAM Radio的支持,對(duì) Token Ring 的支持等?梢圆榭聪旅娴膬蓚(gè)網(wǎng)站的資料:

          Linux Kernel Howto: www.linuxdoc.org/HOWTO/Kernel-HOWTO.html

          Linux Kernel : www.kernel.org

          編輯/usr/src/linux/Makefile文件,可以根據(jù)具體的cpu優(yōu)化內(nèi)核編譯。以下的參數(shù)設(shè)置將得到優(yōu)化的內(nèi)核性能。

         、 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

          根據(jù)以上修改后的makefile文件重新編譯內(nèi)核將得到較優(yōu)的性能。

          三、停止不使用的服務(wù)

          Sendmail, httpd, crond, kudzu, mysql, portmap, postgresql, smb, snortd, webmin, inetd (或者 xinetd) 等都是很棒的程序,但是如果你不會(huì)使用他們,干嗎要讓他們占用您寶貴的資源呢?而且,這些程序都會(huì)帶來(lái)安全隱患。一般說(shuō)來(lái),一套“干凈”的 Linux 系統(tǒng),只需要gpm, network, syslog, ssh 和 xfs。如果臨時(shí)有需要,就手工啟動(dòng)好了。這些啟動(dòng)腳本一般都在 /etc/rc.d/init.d 目錄下。

          檢查自己的機(jī)器上使用中的服務(wù),可以采用 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

          ...

          檢查特定端口上正在運(yùn)行的程序名,可以采用:

          [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

          ....

          最后一列顯示運(yùn)行的程序及其 PID。

          我們還可以采用 ps 命令檢查機(jī)器上正在運(yùn)行的守護(hù)程序:

          [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

          ...

          四、優(yōu)化磁盤(pán)

          1、優(yōu)化分區(qū)

          在安裝系統(tǒng)之前,您就需要對(duì)硬盤(pán)做好恰當(dāng)?shù)囊?guī)劃。劃分一定的文件系統(tǒng),不僅僅是系統(tǒng)本身的需要,而且在安全層面上也十分有意義。在Linux系統(tǒng)中,我們可以自由地組織磁盤(pán)分區(qū)。一個(gè)優(yōu)化的分區(qū)策略,可以很好地改進(jìn)Linux系統(tǒng)的性能,減少磁盤(pán)碎片,提高磁盤(pán)I/O能力。根據(jù)磁盤(pán)的特點(diǎn),我們知道越是靠磁盤(pán)外部的柱面,旋轉(zhuǎn)越快,而且每次旋轉(zhuǎn)時(shí),磁盤(pán)讀寫(xiě)頭可以覆蓋較多的區(qū)域,也就意味著靠外部的柱面可以得到較好的性能。所以在分區(qū)時(shí),我們應(yīng)該考慮將訪問(wèn)頻率高的,對(duì)系統(tǒng)性能影響相對(duì)較大的分區(qū)置于磁盤(pán)的靠外部分。同時(shí),為了減少磁盤(pán)碎片,應(yīng)將內(nèi)容經(jīng)常改變的目錄放在單獨(dú)的分區(qū)。從方便備份數(shù)據(jù)的角度考慮,因?yàn)楹芏鄠浞莨ぞ邔?duì)整個(gè)分區(qū)進(jìn)行備份的效率要高,所以我們應(yīng)將Linux系統(tǒng)的幾個(gè)主要的目錄作為單獨(dú)的文件系統(tǒng),為它們各自分配一個(gè)區(qū)。推薦的分區(qū)策略如圖一:

          在上圖中,磁盤(pán)還有一部分未分區(qū)的空間,為什么不在安裝系統(tǒng)時(shí),將整個(gè)磁盤(pán)分區(qū)呢?現(xiàn)在的硬盤(pán)空間比較大,而在安裝系統(tǒng)時(shí),也許你所安裝的文件加上以后增長(zhǎng)所需要的空間用不到整個(gè)磁盤(pán)存儲(chǔ)空間。保留一部分未分區(qū)空間,當(dāng)以后有新的需要時(shí),就可以用fdisk重新將之分區(qū)。在分區(qū)時(shí),需要注意的是,根據(jù)系統(tǒng)將來(lái)運(yùn)行的需要或過(guò)去的經(jīng)驗(yàn)來(lái)估計(jì)各個(gè)分區(qū)的大小,以免將來(lái)空間不夠。

          /dev/hda5 swap swap defaults,pri=5 0 0

          /dev/hdc5 swap swap defaults,pri=5 0 0

          當(dāng)然,如果你的系統(tǒng)內(nèi)存足夠大,而你的系統(tǒng)又遠(yuǎn)遠(yuǎn)用不了那么多的內(nèi)存,那也就用不到什么虛存了。分區(qū)時(shí)你就可以考慮去掉交換分區(qū)。不過(guò)作為一個(gè)Linux服務(wù)器,即使你的內(nèi)存足夠大,還是應(yīng)該設(shè)置交換分區(qū)。如果有多個(gè)硬盤(pán)的話,可以在每個(gè)硬盤(pán)上各開(kāi) swap 分區(qū),另外,建議 swap 分區(qū)的大小為物理內(nèi)存的兩倍。

          2、使用hdparm改善Linux系統(tǒng)性能

          如果你的Linux系統(tǒng)運(yùn)行于IDE硬盤(pán),可以使用hdparm工具來(lái)提高磁盤(pán)I/O的性能。不過(guò)使用hdparm要小心,因?yàn)榭赡芷茐挠脖P(pán)上的數(shù)據(jù)。所以在使用hdparm之前,仔細(xì)閱讀你的硬盤(pán)手冊(cè)。根據(jù)你具體的硬盤(pán)規(guī)格來(lái)使用相應(yīng)的hdparm開(kāi)關(guān)參數(shù)。對(duì)一塊UltraATA/66 EIDE 硬盤(pán),其控制芯片支持多 PIO 模式和DMA,我們使用以下命令來(lái)調(diào)諧磁盤(pán)性能:

          # /sbin/hdparm -x66 -d1 -u1 -m16 -c3 /dev/hda

          選項(xiàng)說(shuō)明:

          ① c3 :就是把硬盤(pán)的16位格式轉(zhuǎn)換為32位模式(32-bit mode w/sync)?刂茢(shù)據(jù)如何從pci總線傳遞到控制器。

          ② m16 :改變硬盤(pán)的多路扇區(qū)的讀功能,-m16可以使得硬盤(pán)在一次i/o中斷中讀入16個(gè)扇區(qū)的數(shù)據(jù)(據(jù)具體硬盤(pán)而定)。

         、 d1:打開(kāi)DMA模式。

         、 x66 :在支持UDMA-capable的硬盤(pán)中,這個(gè)參數(shù)可以支持雙DMA通道的數(shù)據(jù)傳輸模式。

         、 u1 :Linux在處理磁盤(pán)中斷時(shí),可以u(píng)nmask其他的中斷或者響應(yīng)其他中斷相關(guān)的任務(wù)。

          查看以上的更改情況可以使用命令:

          # /sbin/hdparm /dev/hda

          測(cè)試磁盤(pán)I/O性能可以使用命令:

          # /sbin/hdparm -tT /dev/hda

          如果磁盤(pán)的性能有改進(jìn)的話,可以使用以下命令來(lái)保存設(shè)置:

          # /sbin/hdparm -k1 /dev/hda

          3、Linux下使用軟RAID

          RAID(磁盤(pán)冗余陣列)是通過(guò)將數(shù)據(jù)分布在多個(gè)磁盤(pán)上來(lái)增強(qiáng)磁盤(pán)性能和可靠性的技術(shù)。如果你的系統(tǒng)沒(méi)有硬件RAID控制器的話,在Linux下可以通過(guò)軟件來(lái)實(shí)現(xiàn)RAID。RAID的有很多的級(jí)別,不同的級(jí)別對(duì)硬件有不同的要求,相應(yīng)也會(huì)得到不同的性能和可靠性。RAID0為數(shù)據(jù)分割,數(shù)據(jù)塊被交替寫(xiě)到磁盤(pán),可以得到最好的讀寫(xiě)性能,但是不提供數(shù)據(jù)冗余。RAID1為磁盤(pán)鏡像,寫(xiě)到磁盤(pán)1中的一切也寫(xiě)到磁盤(pán)2中,從任何一個(gè)磁盤(pán)都可以讀取。RAID3除了數(shù)據(jù)分割之外,還指定一個(gè)磁盤(pán)驅(qū)動(dòng)器來(lái)存儲(chǔ)奇偶信息。

          在LINUX下通過(guò)軟件來(lái)實(shí)現(xiàn)RAID, 需要LINUX的內(nèi)核支持,可以通過(guò)編譯新內(nèi)核來(lái)添加對(duì)RAID的支持。然后還需編譯并安裝 raidtools 軟件包。raidtools 是可以初始化、啟動(dòng)、停止及控制 RAID 陣列的用戶級(jí)工具。下面是我們用兩塊IDE硬盤(pán)在LINUX內(nèi)核2.4上實(shí)現(xiàn)RAID0的方法。

          設(shè)置分區(qū) 使用RAID0至少需要兩個(gè)分區(qū),它們位于不同的磁盤(pán)。最好做RAID0的兩個(gè)分區(qū)有相同的大小。創(chuàng)建分區(qū)時(shí),將分區(qū)類(lèi)型指定為 "FD"。以使 Linux 內(nèi)核能將它們識(shí)別為 RAID 分區(qū),這樣,這些分區(qū)就可在每次引導(dǎo)時(shí)自動(dòng)被檢測(cè)并啟動(dòng)。如果您沒(méi)有以這種方式標(biāo)記 RAID 分區(qū),則在每次引導(dǎo)之后,必須首先輸入 "raidstart --all" 才能掛載 RAID 陣列。我們做成RAID0的兩個(gè)分區(qū)為hda5和hdc5。

          編輯/etc/raidtab文件 創(chuàng)建/etc/raidtab文件以描述RAID陣列的配置信息。Linux 內(nèi)核使用這些信息在引導(dǎo)時(shí)自動(dòng)檢測(cè)并啟動(dòng) RAID 陣列,因此必須對(duì)創(chuàng)建的每個(gè) RAID 陣列進(jìn)行這種配置。將分區(qū)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" 條目指明要?jiǎng)?chuàng)建的 RAID 陣列;"nr-raid-disks" 指定陣列中的磁盤(pán)數(shù)目;"persistent-superblock" 設(shè)置為 1,告訴 raid 工具何時(shí)創(chuàng)建該卷;"chunk-size" 以K字節(jié)指定 RAID0 使用的塊大。蛔詈,要指定的是組成該陣列的設(shè)備即分區(qū)。

          mkraid 和創(chuàng)建文件系統(tǒng) 使用命令"# mkraid /dev/md0" 命令初始化/dev/md0分區(qū),


        億恩科技地址(ADD):鄭州市黃河路129號(hào)天一大廈608室 郵編(ZIP):450008 傳真(FAX):0371-60123888
           聯(lián)系:億恩小凡
           QQ:89317007
           電話:0371-63322206


        本文出自:億恩科技【mszdt.com】

        服務(wù)器租用/服務(wù)器托管中國(guó)五強(qiáng)!虛擬主機(jī)域名注冊(cè)頂級(jí)提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM]

      2. 您可能在找
      3. 億恩北京公司:
      4. 經(jīng)營(yíng)性ICP/ISP證:京B2-20150015
      5. 億恩鄭州公司:
      6. 經(jīng)營(yíng)性ICP/ISP/IDC證:豫B1.B2-20060070
      7. 億恩南昌公司:
      8. 經(jīng)營(yíng)性ICP/ISP證:贛B2-20080012
      9. 服務(wù)器/云主機(jī) 24小時(shí)售后服務(wù)電話:0371-60135900
      10. 虛擬主機(jī)/智能建站 24小時(shí)售后服務(wù)電話:0371-60135900
      11. 專注服務(wù)器托管17年
        掃掃關(guān)注-微信公眾號(hào)
        0371-60135900
        Copyright© 1999-2019 ENKJ All Rights Reserved 億恩科技 版權(quán)所有  地址:鄭州市高新區(qū)翠竹街1號(hào)總部企業(yè)基地億恩大廈  法律顧問(wèn):河南亞太人律師事務(wù)所郝建鋒、杜慧月律師   京公網(wǎng)安備41019702002023號(hào)
          1
         
         
         
         

        0371-60135900
        7*24小時(shí)客服服務(wù)熱線