淺談Linux最佳化及安全配置個人體會(轉)
淺談Linux最佳化及安全配置個人體會(轉)[@more@]前言:
很久沒有寫過文章了,最近收到不少朋友來信,提及了有關最佳化配置和一些新的安全問題,在此我想和大家淺顯討論一下這些問題,有什麼不準確和有更好的方式,請給我來信共同討論提高。
在網上看到不少有關linux最佳化方面的好文章,在此我也不贅述這些文章了,我只想從我自己的體會來談談這方面的問題。
作為一個系統管理員,我下面說的都是基於伺服器應用的linux來談的,由於個人電腦上使用linux也許不是像伺服器上一樣,優先追求安全和穩定,因此個人電腦使用的朋友只做個參考吧。
本文提及的系統,如沒有特別宣告,均採用redhat公司的redhat linux系統。
關於最佳化
說起最佳化,其實最好的最佳化就是提升硬體的配置,例如提高cpu的運算能力,提高記憶體的容量,個人認為如果你考慮升級硬體的話,建議優先提高記憶體的容量,因為一般伺服器應用,對記憶體的消耗使用要求是最高的。當然這都是題外話了。
這裡我們首要討論的,是在同等硬體配置下(同一臺伺服器,不提升硬體的情況下)對你的系統進行最佳化。
作為系統管理員,我認為,首先我們要明確一個觀點:在伺服器上作任何操作,升級和修改任何配置檔案或軟體,都必須首要考慮安全性,不是越新的東西就越好,這也是為什麼linux管理感覺上和windows有所不同的地方,windows首先推薦大家去使用它的最新版本軟體和作業系統,其實我個人認為這是一種商業行為,作為從系統管理上來講,這是很不好的,使用新的軟體和系統可能帶來新的問題,有些甚至是致命的。
因此,作為管理,我們還是應該考慮穩定的長期使用的軟體版本來作為我們的版本,具體的好處我就不多說了。相信作為管理員的你應該知道的。
其實個人使用的linux最直接的一個最佳化就是升級核心,自己編譯的核心是根據自己的系統編譯而來,將得到最大的效能和最小的核心。
但是,伺服器就不太一樣了,當然我們也希望每一臺伺服器都是自己手工編譯的核心,高效而精巧。但是實際和願望是有差距的,試想一下,如果你管理100來臺 linux主機,而每一臺也許配置都不一樣,那編譯核心的一個過程將是一個浩大工程,而且從實際考慮,工作量大得難以想象。我想你也不會願意做這種事情吧。因此,個人建議,採用官方釋出的核心升級包是很好的選擇。
首先,我們對新安裝的系統,將做一系列升級,包括軟體和核心,這是很重要的步驟,(這方面的詳細情況歡迎察看我另一篇關於升級方面的文章)。
在升級好所有軟體後,基本的防火牆和配置都做好以後,我們開始最佳化一些細節配置,如果你是老系統,那麼在作本問題及的一些操作和最佳化你係統之前,務必被備份所有資料到其他介質。
1、虛擬記憶體最佳化
首先檢視虛擬記憶體的使用情況,使用命令
# free
檢視當前系統的記憶體使用情況。
一般來說,linux的實體記憶體幾乎是完全used。這個和windows非常大的區別,它的記憶體管理機制將系統記憶體充分利用,並非windows無論多大的記憶體都要去使用一些虛擬記憶體一樣。這點需要注意。
Linux下面虛擬記憶體的預設配置透過命令
# cat /proc/sys/vm/freepages
可以檢視,顯示的三個數字是當前系統的:最小記憶體空白頁、最低記憶體空白頁和最高記憶體空白。
注意,這裡系統使用虛擬記憶體的原則是:如果空白頁數目低於最高空白頁設定,則使用磁碟交換空間。當達到最低空白頁設定時,使用記憶體交換(注:這個是我檢視一些資料得來的,具體應用時還需要自己觀察一下,不過這個不影響我們配置新的虛擬記憶體引數)。
記憶體一般以每頁4k位元組分配。最小記憶體空白頁設定是系統中記憶體數量的2倍;最低記憶體空白頁設定是記憶體數量的4倍;最高記憶體空白頁設定是系統記憶體的6倍。這些值在系統啟動時決定。
一般來講在配置系統分配的虛擬記憶體配置上,我個人認為增大最高記憶體空白頁是一種比較好的配置方式,以1G的記憶體配置為例:
可將原來的配置比例修改為:
2048 4096 6444
透過命令
# echo "2048 4096 6444" > /proc/sys/vm/freepages
因為增加了最高空白頁配置,那麼可以使記憶體更有效的利用。
2、硬碟最佳化
如果你是scsi硬碟或者是ide陣列,可以跳過這一節,這節介紹的引數調整隻針對使用ide硬碟的伺服器。
我們透過hdparm程式來設定IDE硬碟,
使用DMA和32位傳輸可以大幅提升系統效能。使用命令如下:
# /sbin/hdparm -c 1 /dev/hda
此命令將第一個IDE硬碟的PCI匯流排指定為32位,使用 -c 0引數來禁用32位傳輸。
在硬碟上使用DMA,使用命令:
# /sbin/hdparm -d 1 /dev/hda
關閉DMA可以使用 -d 0的引數。
更改完成後,可以使用hdparm來檢查修改後的結果,使用命令:
# /sbin/hdparm -t /dev/had
為了確保設定的結果不變,使用命令:# /sbin/hdparm -k 1 /dev/hda
Hdparm命令的一些常用的其他引數功能
-g 顯示硬碟的磁軌,磁頭,磁區等引數。
-i 顯示硬碟的硬體規格資訊,這些資訊是在開機時由硬碟本身所提供。
-I 直接讀取硬碟所提供的硬體規格資訊。
-p 設定硬碟的PIO模式。
-Tt 評估硬碟的讀取效率和硬碟快取的讀取效率。
-u <0或1> 在硬碟存取時,允許其他中斷要求同時執行。
-v 顯示硬碟的相關設定。
3、其他最佳化
關閉不需要的服務,關於系統自動啟動的服務,網上有很多資料,在此我就不贅述了;
很久沒有寫過文章了,最近收到不少朋友來信,提及了有關最佳化配置和一些新的安全問題,在此我想和大家淺顯討論一下這些問題,有什麼不準確和有更好的方式,請給我來信共同討論提高。
在網上看到不少有關linux最佳化方面的好文章,在此我也不贅述這些文章了,我只想從我自己的體會來談談這方面的問題。
作為一個系統管理員,我下面說的都是基於伺服器應用的linux來談的,由於個人電腦上使用linux也許不是像伺服器上一樣,優先追求安全和穩定,因此個人電腦使用的朋友只做個參考吧。
本文提及的系統,如沒有特別宣告,均採用redhat公司的redhat linux系統。
關於最佳化
說起最佳化,其實最好的最佳化就是提升硬體的配置,例如提高cpu的運算能力,提高記憶體的容量,個人認為如果你考慮升級硬體的話,建議優先提高記憶體的容量,因為一般伺服器應用,對記憶體的消耗使用要求是最高的。當然這都是題外話了。
這裡我們首要討論的,是在同等硬體配置下(同一臺伺服器,不提升硬體的情況下)對你的系統進行最佳化。
作為系統管理員,我認為,首先我們要明確一個觀點:在伺服器上作任何操作,升級和修改任何配置檔案或軟體,都必須首要考慮安全性,不是越新的東西就越好,這也是為什麼linux管理感覺上和windows有所不同的地方,windows首先推薦大家去使用它的最新版本軟體和作業系統,其實我個人認為這是一種商業行為,作為從系統管理上來講,這是很不好的,使用新的軟體和系統可能帶來新的問題,有些甚至是致命的。
因此,作為管理,我們還是應該考慮穩定的長期使用的軟體版本來作為我們的版本,具體的好處我就不多說了。相信作為管理員的你應該知道的。
其實個人使用的linux最直接的一個最佳化就是升級核心,自己編譯的核心是根據自己的系統編譯而來,將得到最大的效能和最小的核心。
但是,伺服器就不太一樣了,當然我們也希望每一臺伺服器都是自己手工編譯的核心,高效而精巧。但是實際和願望是有差距的,試想一下,如果你管理100來臺 linux主機,而每一臺也許配置都不一樣,那編譯核心的一個過程將是一個浩大工程,而且從實際考慮,工作量大得難以想象。我想你也不會願意做這種事情吧。因此,個人建議,採用官方釋出的核心升級包是很好的選擇。
首先,我們對新安裝的系統,將做一系列升級,包括軟體和核心,這是很重要的步驟,(這方面的詳細情況歡迎察看我另一篇關於升級方面的文章)。
在升級好所有軟體後,基本的防火牆和配置都做好以後,我們開始最佳化一些細節配置,如果你是老系統,那麼在作本問題及的一些操作和最佳化你係統之前,務必被備份所有資料到其他介質。
1、虛擬記憶體最佳化
首先檢視虛擬記憶體的使用情況,使用命令
# free
檢視當前系統的記憶體使用情況。
一般來說,linux的實體記憶體幾乎是完全used。這個和windows非常大的區別,它的記憶體管理機制將系統記憶體充分利用,並非windows無論多大的記憶體都要去使用一些虛擬記憶體一樣。這點需要注意。
Linux下面虛擬記憶體的預設配置透過命令
# cat /proc/sys/vm/freepages
可以檢視,顯示的三個數字是當前系統的:最小記憶體空白頁、最低記憶體空白頁和最高記憶體空白。
注意,這裡系統使用虛擬記憶體的原則是:如果空白頁數目低於最高空白頁設定,則使用磁碟交換空間。當達到最低空白頁設定時,使用記憶體交換(注:這個是我檢視一些資料得來的,具體應用時還需要自己觀察一下,不過這個不影響我們配置新的虛擬記憶體引數)。
記憶體一般以每頁4k位元組分配。最小記憶體空白頁設定是系統中記憶體數量的2倍;最低記憶體空白頁設定是記憶體數量的4倍;最高記憶體空白頁設定是系統記憶體的6倍。這些值在系統啟動時決定。
一般來講在配置系統分配的虛擬記憶體配置上,我個人認為增大最高記憶體空白頁是一種比較好的配置方式,以1G的記憶體配置為例:
可將原來的配置比例修改為:
2048 4096 6444
透過命令
# echo "2048 4096 6444" > /proc/sys/vm/freepages
因為增加了最高空白頁配置,那麼可以使記憶體更有效的利用。
2、硬碟最佳化
如果你是scsi硬碟或者是ide陣列,可以跳過這一節,這節介紹的引數調整隻針對使用ide硬碟的伺服器。
我們透過hdparm程式來設定IDE硬碟,
使用DMA和32位傳輸可以大幅提升系統效能。使用命令如下:
# /sbin/hdparm -c 1 /dev/hda
此命令將第一個IDE硬碟的PCI匯流排指定為32位,使用 -c 0引數來禁用32位傳輸。
在硬碟上使用DMA,使用命令:
# /sbin/hdparm -d 1 /dev/hda
關閉DMA可以使用 -d 0的引數。
更改完成後,可以使用hdparm來檢查修改後的結果,使用命令:
# /sbin/hdparm -t /dev/had
為了確保設定的結果不變,使用命令:# /sbin/hdparm -k 1 /dev/hda
Hdparm命令的一些常用的其他引數功能
-g 顯示硬碟的磁軌,磁頭,磁區等引數。
-i 顯示硬碟的硬體規格資訊,這些資訊是在開機時由硬碟本身所提供。
-I 直接讀取硬碟所提供的硬體規格資訊。
-p 設定硬碟的PIO模式。
-Tt 評估硬碟的讀取效率和硬碟快取的讀取效率。
-u <0或1> 在硬碟存取時,允許其他中斷要求同時執行。
-v 顯示硬碟的相關設定。
3、其他最佳化
關閉不需要的服務,關於系統自動啟動的服務,網上有很多資料,在此我就不贅述了;
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10617731/viewspace-958353/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 淺談Linux最佳化及安全配置(轉)Linux
- 淺談linux作業系統的最佳化及安全配置(轉)Linux作業系統
- 淺談linux作業系統的最佳化及安全Linux作業系統
- 淺談php web安全 【轉】PHPWeb
- Linux系統配置與最佳化經驗談(轉)Linux
- 淺談Linux下的媒體播放器(轉)Linux播放器
- 淺談 Web 安全Web
- 淺談Acegi配置
- 淺談專案管理軟體(轉)專案管理
- 淺談斜率最佳化DP
- 淺談遊戲安全 (一)遊戲
- 應用安全淺談
- 淺談session及其安全Session
- Linux 淺談Linux 作業系統的安全設定Linux作業系統
- 淺談Linux的檔案系統(轉)Linux
- 安全管理 | 淺談資訊保安管理體系建設
- 贈品的會計處理方法淺談=轉
- Linux 網路安全和最佳化 (轉)Linux
- 淺談Linux記憶體管理機制Linux記憶體
- 短網址安全淺談
- 漠漠孤雲盡成雨---淺談CGI指令碼安全(轉)指令碼
- 淺談App的啟動最佳化APP
- 淺談ERP中的會計核算系統(轉)
- linux基本安全配置手冊(轉)Linux
- 李開復談軟體外包及軟體安全(一)
- 淺談Linux的記憶體管理機制Linux記憶體
- 淺談 Java執行緒狀態轉換及控制Java執行緒
- Linux系統記憶體使用的體會及命令解釋(轉)Linux記憶體
- 淺談指標 (轉)指標
- Linux網路安全之經驗談(轉)Linux
- 淺談PHP弱型別安全PHP型別
- 淺談App響應時間最佳化APP
- 淺談資料結構最佳化DP資料結構
- 談談安全軟體薦
- 談linux磁碟結構及分割槽(轉)Linux
- 淺談GPU 及 “App渲染流程”GPUAPP
- 淺談JavaScript原型及原型鏈JavaScript原型
- 淺談微服務轉型微服務