自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Linux操作系統(tǒng)調(diào)優(yōu)參數(shù)

運(yùn)維 系統(tǒng)運(yùn)維
Linux操作系統(tǒng)調(diào)優(yōu)參數(shù):現(xiàn)在安裝 Linux 進(jìn)行學(xué)習(xí)的朋友越來(lái)越多,特別是在我寫(xiě)了Linux安裝的圖文解說(shuō)之后。本文講述的是Linux操作系統(tǒng)調(diào)優(yōu)參數(shù)。

  Linux操作系統(tǒng)調(diào)優(yōu)參數(shù)的意義

  所有的TCP/IP調(diào)優(yōu)參數(shù)都位于/proc/sys/net/目錄. 例如, 下面是最重要的一些調(diào)優(yōu)參數(shù), 后面是它們的含義:

  1. /proc/sys/net/core/rmem_max — 最大的TCP數(shù)據(jù)接收緩沖

  2. /proc/sys/net/core/wmem_max — 最大的TCP數(shù)據(jù)發(fā)送緩沖

  3. /proc/sys/net/ipv4/tcp_timestamps — 時(shí)間戳在(請(qǐng)參考RFC 1323)TCP的包頭增加12個(gè)字節(jié)

  4. /proc/sys/net/ipv4/tcp_sack — 有選擇的應(yīng)答

  5. /proc/sys/net/ipv4/tcp_window_scaling — 支持更大的TCP窗口. 如果TCP窗口最大超過(guò)65535(64K), 必須設(shè)置該數(shù)值為1

  6. rmem_default — 默認(rèn)的接收窗口大小

  7. rmem_max — 接收窗口的最大大小

  8. wmem_default — 默認(rèn)的發(fā)送窗口大小

  9. wmem_max — 發(fā)送窗口的最大大小

  /proc目錄下的所有內(nèi)容都是臨時(shí)性的, 所以重啟動(dòng)系統(tǒng)后任何修改都會(huì)丟失.建議在系統(tǒng)啟動(dòng)時(shí)自動(dòng)修改TCP/IP參數(shù):

  把下面代碼增加到/etc/rc.local文件, 然后保存文件, 系統(tǒng)重新引導(dǎo)的時(shí)候會(huì)自動(dòng)修改下面的TCP/IP參數(shù):

  1.   echo 256960 > /proc/sys/net/core/rmem_default  
  2.  
  3.   echo 256960 > /proc/sys/net/core/rmem_max  
  4.  
  5.   echo 256960 > /proc/sys/net/core/wmem_default  
  6.  
  7.   echo 256960 > /proc/sys/net/core/wmem_max  
  8.  
  9.   echo 0 > /proc/sys/net/ipv4/tcp_timestamps  
  10.  
  11.   echo 1 > /proc/sys/net/ipv4/tcp_sack  
  12.  
  13.   echo 1 > /proc/sys/net/ipv4/tcp_window_scaling  
  14.  

  TCP/IP參數(shù)都是自解釋的, TCP窗口大小設(shè)置為256960, 禁止TCP的時(shí)間戳(取消在每個(gè)數(shù)據(jù)包的頭中增加12字節(jié)), 支持更大的TCP窗口和TCP有選擇的應(yīng)答。

  上面數(shù)值的設(shè)定是根據(jù)互連網(wǎng)連接和最大帶寬/延遲率來(lái)決定.

  注: 上面實(shí)例中的數(shù)值可以實(shí)際應(yīng)用, 但它只包含了一部分參數(shù).

  另外一個(gè)方法: 使用 /etc/sysctl.conf 在系統(tǒng)啟動(dòng)時(shí)將參數(shù)配置成您所設(shè)置的值:

  1.   net.core.rmem_default = 256960 
  2.  
  3.   net.core.rmem_max = 256960 
  4.  
  5.   net.core.wmem_default = 256960 
  6.  
  7.   net.core.wmem_max = 256960 
  8.  
  9.   net.ipv4.tcp_timestamps = 0 
  10.  
  11.   net.ipv4.tcp_sack =1 
  12.  
  13.   net.ipv4.tcp_window_scaling = 1 
  14.  

  ----------------------------------------------------------------

  1.   /proc/sys/fs/super-max  
  2.  

  該文件指定超級(jí)塊處理程序的最大數(shù)目。掛裝的任何文件系統(tǒng)需要使用超級(jí)塊,所以如果掛裝了大量文件系統(tǒng),則可能會(huì)用盡超級(jí)塊處理程序。

  缺省設(shè)置:256

  1.   /proc/sys/fs/super-nr  
  2.  

  該文件顯示當(dāng)前已分配超級(jí)塊的數(shù)目。該文件是只讀的,僅用于顯示信息。

  1.   /proc/sys/kernel  
  2.  
  3.   /proc/sys/kernel/acct  
  4.  

  該文件有三個(gè)可配置值,根據(jù)包含日志的文件系統(tǒng)上可用空間的數(shù)量(以百分比表示),這些值控制何時(shí)開(kāi)始進(jìn)行進(jìn)程記帳:

  如果可用空間低于這個(gè)百分比值,則停止進(jìn)程記帳

  如果可用空間高于這個(gè)百分比值,則開(kāi)始進(jìn)程記帳

  檢查上面兩個(gè)值的頻率(以秒為單位)

  要更改這個(gè)文件的某個(gè)值,應(yīng)該回送用空格分隔開(kāi)的一串?dāng)?shù)字。

  缺省設(shè)置:2 4 30

  如果包含日志的文件系統(tǒng)上只有少于 2% 的可用空間,則這些值會(huì)使記帳停止,如果有 4% 或更多可用空間,則再次啟動(dòng)記帳。每 30 秒做一次檢查。

  1.   /proc/sys/kernel/ctrl-alt-del  
  2.  

  該文件有一個(gè)二進(jìn)制值,該值控制系統(tǒng)在接收到 ctrl+alt+delete 按鍵組合時(shí)如何反應(yīng)。這兩個(gè)值表示:

  零(0)值表示捕獲 ctrl+alt+delete,并將其送至 init 程序。這將允許系統(tǒng)可以完美地關(guān)閉和重啟,就好象您輸入 shutdown 命令一樣。

  壹(1)值表示不捕獲 ctrl+alt+delete,將執(zhí)行非干凈的關(guān)閉,就好象直接關(guān)閉電源一樣。

  缺省設(shè)置:0

  1.   /proc/sys/kernel/domainname  
  2.  

  該文件允許您配置網(wǎng)絡(luò)域名。它沒(méi)有缺省值,也許已經(jīng)設(shè)置了域名,也許沒(méi)有設(shè)置。

  1.   /proc/sys/kernel/hostname  
  2.  

  該文件允許您配置網(wǎng)絡(luò)主機(jī)名。它沒(méi)有缺省值,也許已經(jīng)設(shè)置了主機(jī)名,也許沒(méi)有設(shè)置。

  1.   /proc/ss/kernel/msgmax  
  2.  

  該文件指定了從一個(gè)進(jìn)程發(fā)送到另一個(gè)進(jìn)程的消息的最大長(zhǎng)度。進(jìn)程間的消息傳遞是在內(nèi)核的內(nèi)存中進(jìn)行,不會(huì)交換到磁盤(pán)上,所以如果增加該值,則將增加操作系統(tǒng)所使用的內(nèi)存數(shù)量。

  缺省設(shè)置:8192

  1.   /proc/sys/kernel/msgmnb  
  2.  

  該文件指定在一個(gè)消息隊(duì)列中最大的字節(jié)數(shù)。

  缺省設(shè)置:16384

  1.   /proc/sys/kernel/msgmni  
  2.  

  該文件指定消息隊(duì)列標(biāo)識(shí)的最大數(shù)目。

  缺省設(shè)置:16

  1.   /proc/sys/kernel/panic  
  2.  

  該文件表示如果發(fā)生“內(nèi)核嚴(yán)重錯(cuò)誤(kernel panic)”,則內(nèi)核在重新引導(dǎo)之前等待的時(shí)間(以秒為單位)。零(0)秒設(shè)置在發(fā)生內(nèi)核嚴(yán)重錯(cuò)誤時(shí)將禁止重新引導(dǎo)。

  缺省設(shè)置:0

  1.   /proc/sys/kernel/printk  
  2.  

  該文件有四個(gè)數(shù)字值,它們根據(jù)日志記錄消息的重要性,定義將其發(fā)送到何處。關(guān)于不同日志級(jí)別的更多信息,請(qǐng)閱讀 syslog(2) 聯(lián)機(jī)幫助頁(yè)。該文件的四個(gè)值為:

  控制臺(tái)日志級(jí)別:優(yōu)先級(jí)高于該值的消息將被打印至控制臺(tái)

  缺省的消息日志級(jí)別:將用該優(yōu)先級(jí)來(lái)打印沒(méi)有優(yōu)先級(jí)的消息

  最低的控制臺(tái)日志級(jí)別:控制臺(tái)日志級(jí)別可被設(shè)置的最小值(最高優(yōu)先級(jí))

  缺省的控制臺(tái)日志級(jí)別:控制臺(tái)日志級(jí)別的缺省值

  缺省設(shè)置:6 4 1 7

  1.   /proc/sys/kernel/shmall  
  2.  

  該文件是在任何給定時(shí)刻系統(tǒng)上可以使用的共享內(nèi)存的總量(以字節(jié)為單位)。

  缺省設(shè)置:2097152

  1.   /proc/sys/kernel/shmax  
  2.  

  該文件指定內(nèi)核所允許的最大共享內(nèi)存段的大小(以字節(jié)為單位)。

  缺省設(shè)置:33554432

  1.   /proc/sys/kernel/shmmni  
  2.  

  該文件表示用于整個(gè)系統(tǒng)共享內(nèi)存段的最大數(shù)目。

  缺省設(shè)置:4096

  1.   /proc/sys/kernel/sysrq  
  2.  

  如果該文件指定的值為非零,則激活 System Request Key。

  缺省設(shè)置:0

  1.   /proc/sys/kernel/threads-max  
  2.  

  該文件指定內(nèi)核所能使用的線程的最大數(shù)目。

  缺省設(shè)置:2048

  1.   /proc/sys/net  
  2.  
  3.   /proc/sys/net/core/message_burst  
  4.  

  寫(xiě)新的警告消息所需的時(shí)間(以 1/10 秒為單位);在這個(gè)時(shí)間內(nèi)所接收到的其它警告消息會(huì)被丟棄。這用于防止某些企圖用消息“淹沒(méi)”您系統(tǒng)的人所使用的拒絕服務(wù)(Denial of Service)攻擊。

  缺省設(shè)置:50(5 秒)

  1.   /proc/sys/net/core/message_cost  
  2.  

  該文件存有與每個(gè)警告消息相關(guān)的成本值。該值越大,越有可能忽略警告消息。

  缺省設(shè)置:5

  1.   /proc/sys/net/core/netdev_max_backlog  
  2.  

  該文件指定了,在接口接收數(shù)據(jù)包的速率比內(nèi)核處理這些包的速率快時(shí),允許送到隊(duì)列的數(shù)據(jù)包的最大數(shù)目。

  缺省設(shè)置:300

  1.   /proc/sys/net/core/optmem_max  
  2.  

  該文件指定了每個(gè)套接字所允許的最大緩沖區(qū)的大小。

  1.   /proc/sys/net/core/rmem_default  
  2.  

  該文件指定了接收套接字緩沖區(qū)大小的缺省值(以字節(jié)為單位)。

  1.   /proc/sys/net/core/rmem_max  
  2.  

  該文件指定了接收套接字緩沖區(qū)大小的最大值(以字節(jié)為單位)。

  1.   /proc/sys/net/core/wmem_default  
  2.  

  該文件指定了發(fā)送套接字緩沖區(qū)大小的缺省值(以字節(jié)為單位)。

  1.   /proc/sys/net/core/wmem_max  
  2.  

  該文件指定了發(fā)送套接字緩沖區(qū)大小的最大值(以字節(jié)為單位)。

  1.   /proc/sys/net/ipv4  
  2.  

  所有 IPv4 和 IPv6 的參數(shù)都被記錄在內(nèi)核源代碼文檔中。請(qǐng)參閱文件

  1. /usr/src/linux/Documentation/networking/ip-sysctl.txt。  
  2.  
  3.  /proc/sys/net/ipv6  

  同 IPv4。

  1.   /proc/sys/vm  
  2.  
  3.   /proc/sys/vm/buffermem  
  4.  

  該文件控制用于緩沖區(qū)內(nèi)存的整個(gè)系統(tǒng)內(nèi)存的數(shù)量(以百分比表示)。它有三個(gè)值,通過(guò)把用空格相隔的一串?dāng)?shù)字寫(xiě)入該文件來(lái)設(shè)置這三個(gè)值。

  用于緩沖區(qū)的內(nèi)存的最低百分比

  如果發(fā)生所剩系統(tǒng)內(nèi)存不多,而且系統(tǒng)內(nèi)存正在減少這種情況,系統(tǒng)將試圖維護(hù)緩沖區(qū)內(nèi)存的數(shù)量。

  用于緩沖區(qū)的內(nèi)存的最高百分比

  缺省設(shè)置:2 10 60

  1.   /proc/sys/vm/freepages  
  2.  

  該文件控制系統(tǒng)如何應(yīng)對(duì)各種級(jí)別的可用內(nèi)存。它有三個(gè)值,通過(guò)把用空格相隔的一串?dāng)?shù)字寫(xiě)入該文件來(lái)設(shè)置這三個(gè)值。

  如果系統(tǒng)中可用頁(yè)面的數(shù)目達(dá)到了最低限制,則只允許內(nèi)核分配一些內(nèi)存。

  如果系統(tǒng)中可用頁(yè)面的數(shù)目低于這一限制,則內(nèi)核將以較積極的方式啟動(dòng)交換,以釋放內(nèi)存,從而維持系統(tǒng)性能。

  內(nèi)核將試圖保持這個(gè)數(shù)量的系統(tǒng)內(nèi)存可用。低于這個(gè)值將啟動(dòng)內(nèi)核交換。

  缺省設(shè)置:512 768 1024

  1.   /proc/sys/vm/kswapd  
  2.  

  該文件控制允許內(nèi)核如何交換內(nèi)存。它有三個(gè)值,通過(guò)把用空格相隔的一串?dāng)?shù)字寫(xiě)入該文件來(lái)設(shè)置這三個(gè)值:

  內(nèi)核試圖一次釋放的最大頁(yè)面數(shù)目。如果想增加內(nèi)存交換過(guò)程中的帶寬,則需要增加該值。

  內(nèi)核在每次交換中試圖釋放頁(yè)面的最少次數(shù)。

  內(nèi)核在一次交換中所寫(xiě)頁(yè)面的數(shù)目。這對(duì)系統(tǒng)性能影響最大。這個(gè)值越大,交換的數(shù)據(jù)越多,花在磁盤(pán)尋道上的時(shí)間越少。然而,這個(gè)值太大會(huì)因“淹沒(méi)”請(qǐng)求隊(duì)列而反過(guò)來(lái)影響系統(tǒng)性能。

  缺省設(shè)置:512 32 8

  1.   /proc/sys/vm/pagecache  
  2.  

  該文件與 /proc/sys/vm/buffermem 的工作內(nèi)容一樣,但它是針對(duì)文件的內(nèi)存映射和一般高速緩存。

  使內(nèi)核設(shè)置具有持久性

  這里提供了一個(gè)方便的實(shí)用程序,用于更改 /proc/sys 目錄下的任何內(nèi)核參數(shù)。它使您可以更改運(yùn)行中的內(nèi)核(類(lèi)似于上面用到的 echo 和重定向方法),但它還有一個(gè)在系統(tǒng)引導(dǎo)時(shí)執(zhí)行的配置文件。這使您可以更改運(yùn)行中的內(nèi)核,并將這些更改添加到配置文件,以便于在系統(tǒng)重新引導(dǎo)之后,這些更改仍然生效。

  該實(shí)用程序稱為 sysctl,在 sysctl(8) 的聯(lián)機(jī)幫助頁(yè)中,對(duì)這個(gè)實(shí)用程序進(jìn)行了完整的文檔說(shuō)明。sysctl 的配置文件是 /etc/sysctl.conf,可以編輯該文件,并在 sysctl.conf(8) 下記錄了該文件。sysctl 將 /proc/sys 下的文件視為可以更改的單個(gè)變量。所以,以 /proc/sys 下的文件 /proc/sys/fs/file-max 為例,它表示系統(tǒng)中所允許的文件句柄的最大數(shù)目,這個(gè)文件被表示成 fs.file-max。

  這個(gè)示例揭示了 sysctl 表示法中的一些奇妙事情。由于 sysctl 只能更改 /proc/sys 目錄下的變量,并且人們始終認(rèn)為變量是在這個(gè)目錄下,因此省略了變量名的那一部分(/proc/sys)。另一個(gè)要說(shuō)明的更改是,將目錄分隔符(正斜杠 /)換成了英文中的句號(hào)(點(diǎn) .)。

  將 /proc/sys 中的文件轉(zhuǎn)換成 sysctl 中的變量有兩個(gè)簡(jiǎn)單的規(guī)則:

  去掉前面部分 /proc/sys。

  將文件名中的正斜杠變?yōu)辄c(diǎn)。

  這兩條規(guī)則使您能將 /proc/sys 中的任一文件名轉(zhuǎn)換成 sysctl 中的任一變量名。一般文件到變量的轉(zhuǎn)換為:

  1.   /proc/sys/dir/file --> dir.file  
  2.  
  3.   dir1.dir2.file --> /proc/sys/dir1/dir2/file  
  4.  

  可以使用命令 sysctl -a 查看所有可以更改的變量和其當(dāng)前設(shè)置。

  用 sysctl 還可以更改變量,它所做的工作與上面所用的 echo 方法完全一樣。其表示法為:

  1.   sysctl -w dir.file="value" 
  2.  

  還是用 file-max 作為示例,使用下面兩種方法中的一種將該值更改為 16384。Linux操作系統(tǒng)調(diào)優(yōu)參數(shù)就講到這里了。

【編輯推薦】

  1. 提高Linux操作系統(tǒng)性能
  2. 在windows下切換linux
  3. Linux操作系統(tǒng)內(nèi)核工作原理介紹

 

責(zé)任編輯:zhaolei
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)