版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
Linux系統(tǒng)調(diào)優(yōu)手冊(cè)一、Linux系統(tǒng)調(diào)優(yōu)概述
Linux系統(tǒng)調(diào)優(yōu)是指通過(guò)調(diào)整系統(tǒng)參數(shù)和配置,優(yōu)化系統(tǒng)性能、穩(wěn)定性和安全性。合理的調(diào)優(yōu)可以提升系統(tǒng)資源利用率,改善用戶體驗(yàn)。本手冊(cè)將涵蓋Linux系統(tǒng)調(diào)優(yōu)的關(guān)鍵方面,包括內(nèi)核參數(shù)優(yōu)化、網(wǎng)絡(luò)配置、磁盤(pán)I/O優(yōu)化、內(nèi)存管理等。
(一)調(diào)優(yōu)目的與原則
1.提高系統(tǒng)性能:通過(guò)調(diào)整內(nèi)核參數(shù)和資源分配,減少延遲,提升響應(yīng)速度。
2.增強(qiáng)系統(tǒng)穩(wěn)定性:優(yōu)化內(nèi)存、CPU和磁盤(pán)使用,防止資源耗盡導(dǎo)致崩潰。
3.節(jié)省資源:合理分配系統(tǒng)資源,避免浪費(fèi),延長(zhǎng)硬件壽命。
調(diào)優(yōu)原則:
(1)先測(cè)試后應(yīng)用:在測(cè)試環(huán)境中驗(yàn)證調(diào)優(yōu)效果,避免生產(chǎn)環(huán)境風(fēng)險(xiǎn)。
(2)分階段實(shí)施:逐步調(diào)整參數(shù),每次變更后觀察系統(tǒng)表現(xiàn)。
(3)文檔記錄:詳細(xì)記錄調(diào)優(yōu)步驟和參數(shù),便于回溯和問(wèn)題排查。
(二)調(diào)優(yōu)工具與準(zhǔn)備
1.工具:
(1)`sysctl`:用于動(dòng)態(tài)修改內(nèi)核參數(shù)。
(2)`nmon`/`htop`:系統(tǒng)性能監(jiān)控工具。
(3)`iotop`:磁盤(pán)I/O監(jiān)控工具。
2.準(zhǔn)備:
(1)備份配置文件:如`/etc/sysctl.conf`、`/etc/fstab`。
(2)收集基線數(shù)據(jù):記錄調(diào)優(yōu)前的性能指標(biāo)(如CPU使用率、內(nèi)存占用)。
二、內(nèi)核參數(shù)優(yōu)化
內(nèi)核參數(shù)是影響系統(tǒng)性能的關(guān)鍵因素,通過(guò)`sysctl`工具可以動(dòng)態(tài)調(diào)整。
(一)網(wǎng)絡(luò)參數(shù)優(yōu)化
1.增加文件描述符限制:
```bash
sysctl-wnet.ipv4.tcp_max_syn_backlog=65535
sysctl-wnet.core.somaxconn=65535
```
說(shuō)明:提高TCP連接隊(duì)列長(zhǎng)度,適用于高并發(fā)場(chǎng)景。
2.啟用TCP快速打開(kāi):
```bash
sysctl-wnet.ipv4.tcp_fastopen=3
```
說(shuō)明:加速TCP連接建立過(guò)程。
(二)內(nèi)存管理優(yōu)化
1.調(diào)整Swap使用策略:
```bash
sysctl-wvm.swappiness=10
```
說(shuō)明:降低系統(tǒng)使用Swap的傾向,優(yōu)先保留內(nèi)存。
2.增加文件句柄限制:
```bash
sysctl-wfs.file-max=100000
```
說(shuō)明:提升并發(fā)文件操作能力。
(三)CPU與進(jìn)程管理
1.調(diào)整OOM(OutofMemory)策略:
```bash
sysctl-wvm.oom_kill_disable=1
```
說(shuō)明:防止系統(tǒng)因OOM殺死關(guān)鍵進(jìn)程。
2.限制進(jìn)程數(shù):
```bash
sysctl-wkernel.pid_max=65535
```
說(shuō)明:適用于高并發(fā)服務(wù)器。
三、網(wǎng)絡(luò)配置調(diào)優(yōu)
網(wǎng)絡(luò)性能直接影響系統(tǒng)響應(yīng)速度,以下為常見(jiàn)優(yōu)化方法。
(一)TCP/IP堆棧優(yōu)化
1.調(diào)整TCP窗口大?。?/p>
```bash
sysctl-wnet.ipv4.tcp_rmem="40968738016777216"
sysctl-wnet.ipv4.tcp_wmem="40966553616777216"
```
說(shuō)明:優(yōu)化TCP發(fā)送和接收緩沖區(qū)。
2.啟用TCP重傳緩存:
```bash
sysctl-wnet.ipv4.tcp_retries2=6
```
說(shuō)明:減少無(wú)效連接的重傳次數(shù)。
(二)防火墻與NAT優(yōu)化
1.調(diào)整iptables連接跟蹤表大?。?/p>
```bash
iptables-AINPUT-mstate--stateRELATED,ESTABLISHED-jACCEPT
```
說(shuō)明:減少連接跟蹤沖突。
2.啟用IP轉(zhuǎn)發(fā):
```bash
sysctl-wnet.ipv4.ip_forward=1
```
說(shuō)明:支持NAT路由功能。
四、磁盤(pán)I/O優(yōu)化
磁盤(pán)性能是系統(tǒng)瓶頸的常見(jiàn)來(lái)源,以下為優(yōu)化方法。
(一)文件系統(tǒng)掛載選項(xiàng)
1.使用`noatime`減少磁盤(pán)訪問(wèn):
```bash
mount-oremount,noatime/data
```
說(shuō)明:避免文件系統(tǒng)頻繁檢查訪問(wèn)時(shí)間。
2.啟用磁盤(pán)緩存:
```bash
mount-osync/boot
```
說(shuō)明:確保關(guān)鍵分區(qū)同步寫(xiě)入。
(二)I/O調(diào)度器調(diào)整
1.選擇合適的調(diào)度器:
```bash
echo"deadline">/sys/block/sda/queue/scheduler
```
說(shuō)明:`deadline`適合混合負(fù)載。
2.調(diào)整隊(duì)列深度:
```bash
echo256>/sys/block/sda/queue/nr_requests
```
說(shuō)明:增加隊(duì)列長(zhǎng)度提升吞吐量。
(三)SSD專(zhuān)項(xiàng)優(yōu)化
1.禁用寫(xiě)入時(shí)壓縮:
```bash
hdparm-W0/dev/sda
```
說(shuō)明:提升SSD寫(xiě)入速度。
2.啟用TRIM支持:
```bash
echo1>/sys/block/sda/queue/rotational
```
說(shuō)明:延長(zhǎng)SSD壽命。
五、內(nèi)存管理調(diào)優(yōu)
內(nèi)存不足會(huì)導(dǎo)致系統(tǒng)卡頓,以下為優(yōu)化策略。
(一)Swap使用策略
1.限制Swap使用比例:
```bash
sysctl-wvm.swappiness=30
```
說(shuō)明:優(yōu)先保留內(nèi)存,但允許部分Swap。
2.設(shè)置Swap文件大?。?/p>
```bash
fallocate-l4G/swapfile
mkswap/swapfile
swapon/swapfile
```
說(shuō)明:創(chuàng)建4GBSwap空間。
(二)內(nèi)存緩存優(yōu)化
1.調(diào)整PageCache大小:
```bash
sysctl-wvm.dirty_ratio=10
```
說(shuō)明:限制臟頁(yè)比例,避免OOM。
2.快速回收過(guò)期緩存:
```bash
sysctl-wvm.dirty_background_ratio=5
```
說(shuō)明:降低臟頁(yè)對(duì)性能影響。
六、總結(jié)
Linux系統(tǒng)調(diào)優(yōu)是一個(gè)持續(xù)優(yōu)化的過(guò)程,需結(jié)合實(shí)際場(chǎng)景逐步調(diào)整。關(guān)鍵點(diǎn)包括:
1.監(jiān)控基線數(shù)據(jù),量化調(diào)優(yōu)效果。
2.遵循最小變更原則,避免過(guò)度調(diào)優(yōu)。
3.定期復(fù)查配置,適應(yīng)負(fù)載變化。
七、服務(wù)與進(jìn)程優(yōu)化
服務(wù)與進(jìn)程是系統(tǒng)資源的主要消耗者,合理的配置和管理可以顯著提升系統(tǒng)性能和穩(wěn)定性。本部分將介紹如何優(yōu)化系統(tǒng)服務(wù)、管理進(jìn)程優(yōu)先級(jí)以及減少不必要的后臺(tái)服務(wù)。
(一)服務(wù)管理優(yōu)化
1.禁用非必要服務(wù):
(1)使用`systemctl`禁用服務(wù):
```bash
systemctldisableavahi-daemon
systemctldisablecoredump
```
(2)移除無(wú)用的服務(wù)包:
```bash
aptremove--purgeavahi-daemon
```
2.限制服務(wù)啟動(dòng)等級(jí):
(1)編輯服務(wù)單元文件,設(shè)置`Wants=`或`Requires=`:
```ini
[Unit]
Wants=network.target
```
(2)使用`systemd`管理服務(wù)依賴(lài):
```bash
systemctlcatsshd
```
(二)進(jìn)程優(yōu)先級(jí)管理
1.使用`nice`和`renice`調(diào)整進(jìn)程優(yōu)先級(jí):
(1)降低優(yōu)先級(jí)(數(shù)值越大優(yōu)先級(jí)越低):
```bash
nice-n19./long-running-script.sh
```
(2)動(dòng)態(tài)調(diào)整已運(yùn)行進(jìn)程:
```bash
renice-10-p1234
```
2.設(shè)置實(shí)時(shí)進(jìn)程優(yōu)先級(jí)(需root權(quán)限):
```bash
renice-20-p1234
```
3.使用`ionice`控制I/O優(yōu)先級(jí):
(1)設(shè)置低優(yōu)先級(jí)I/O:
```bash
ionice-c2-n7./io-intensive-task
```
(2)優(yōu)先級(jí)說(shuō)明:
-`-c1`:公平共享類(lèi)
-`-c2`:最佳努力類(lèi)(默認(rèn))
-`-c3`:實(shí)時(shí)類(lèi)
(三)進(jìn)程數(shù)限制
1.限制單個(gè)用戶進(jìn)程數(shù):
```bash
echo"500">/etc/security/limits.d/90-nproc.conf
```
2.限制系統(tǒng)總進(jìn)程數(shù):
```bash
ulimit-n10000
```
八、用戶與權(quán)限優(yōu)化
用戶和權(quán)限管理是系統(tǒng)安全的重要環(huán)節(jié),合理的配置可以防止資源濫用和潛在風(fēng)險(xiǎn)。
(一)用戶認(rèn)證優(yōu)化
1.禁用空密碼:
(1)修改`/etc/pam.d/common-password`:
```ini
passwordrequisitepam_pwquality.soretry=3
```
(2)設(shè)置密碼復(fù)雜度要求:
```ini
minlen=8
difok=3
```
2.啟用PAM密碼歷史記錄:
```ini
remember=5
```
(二)權(quán)限管理優(yōu)化
1.最小權(quán)限原則:
(1)使用`chown`和`chmod`精確控制權(quán)限:
```bash
chown-Ruser:group/var/log/app
chmod750/var/log/app
```
(2)使用`setfacl`附加權(quán)限:
```bash
setfacl-mu:user:rwx/etc/config.json
```
2.SUID/SGID特殊權(quán)限管理:
(1)查找并審計(jì)SUID程序:
```bash
find/usr/bin-perm/4000
```
(2)限制SUID程序:
```bash
chownroot:root/usr/bin/sudo
```
(三)SELinux/AppArmor安全增強(qiáng)
1.啟用SELinux(強(qiáng)制模式):
```bash
sed-i's/^SELINUX=.$/SELINUX=enforcing/'/etc/selinux/config
```
2.AppArmor強(qiáng)制策略示例:
(1)加載AppArmor模塊:
```bash
systemctlenableapparmor
```
(2)配置應(yīng)用策略:
```bash
aa-complain/usr/bin/firefox
```
九、日志與監(jiān)控優(yōu)化
日志和監(jiān)控是系統(tǒng)運(yùn)維的重要手段,優(yōu)化配置可以提升日志效率和監(jiān)控精度。
(一)系統(tǒng)日志優(yōu)化
1.調(diào)整日志級(jí)別:
(1)編輯`/etc/rsyslog.conf`:
```ini
$LevelDebug-/var/log/debug
```
(2)重載配置:
```bash
systemctlreloadrsyslog
```
2.日志輪轉(zhuǎn)配置:
(1)編輯`/etc/logrotate.conf`:
```ini
/var/log/syslog{
daily
missingok
rotate7
}
```
(二)監(jiān)控工具配置
1.Nagios監(jiān)控配置步驟:
(1)安裝Nagios核心:
```bash
aptinstallnagiosnagios-nscanagios-plugins
```
(2)配置主機(jī)監(jiān)控:
```xml
<host>
<name>web-server</name>
<check_command>check_http</check_command>
</host>
```
2.Zabbix監(jiān)控配置清單:
-主機(jī)添加:
-IP/域名
-SNMP版本(v1/v2c)
-項(xiàng)目配置:
-CPU使用率(Perfcounter)
-磁盤(pán)空間(Agent)
(三)性能監(jiān)控自動(dòng)化
1.使用`cron`定時(shí)采集性能數(shù)據(jù):
```bash
/5/usr/lib/nagios/plugins/check_load>/var/log/load-check.log
```
2.Prometheus+Grafana組合配置:
(1)安裝Prometheus:
```bash
dockerrun-p9090:9090prom/prometheus
```
(2)配置`prometheus.yml`:
```yaml
scrape_configs:
-job_name:'system'
static_configs:
-targets:['localhost:9100']
```
十、總結(jié)
Linux系統(tǒng)調(diào)優(yōu)是一個(gè)系統(tǒng)性工程,涉及內(nèi)核、網(wǎng)絡(luò)、磁盤(pán)、內(nèi)存、服務(wù)等多個(gè)層面。實(shí)際操作中需遵循以下原則:
1.測(cè)試優(yōu)先:在測(cè)試環(huán)境驗(yàn)證每項(xiàng)變更的效果。
2.逐步實(shí)施:從小范圍開(kāi)始調(diào)整,逐步擴(kuò)大范圍。
3.自動(dòng)化監(jiān)控:建立持續(xù)監(jiān)控機(jī)制,及時(shí)發(fā)現(xiàn)問(wèn)題。
4.文檔記錄:詳細(xì)記錄調(diào)優(yōu)過(guò)程和參數(shù)變更,便于問(wèn)題回溯。通過(guò)系統(tǒng)化的調(diào)優(yōu),可以顯著提升Linux服務(wù)器的性能和穩(wěn)定性,滿足生產(chǎn)環(huán)境的高要求。
一、Linux系統(tǒng)調(diào)優(yōu)概述
Linux系統(tǒng)調(diào)優(yōu)是指通過(guò)調(diào)整系統(tǒng)參數(shù)和配置,優(yōu)化系統(tǒng)性能、穩(wěn)定性和安全性。合理的調(diào)優(yōu)可以提升系統(tǒng)資源利用率,改善用戶體驗(yàn)。本手冊(cè)將涵蓋Linux系統(tǒng)調(diào)優(yōu)的關(guān)鍵方面,包括內(nèi)核參數(shù)優(yōu)化、網(wǎng)絡(luò)配置、磁盤(pán)I/O優(yōu)化、內(nèi)存管理等。
(一)調(diào)優(yōu)目的與原則
1.提高系統(tǒng)性能:通過(guò)調(diào)整內(nèi)核參數(shù)和資源分配,減少延遲,提升響應(yīng)速度。
2.增強(qiáng)系統(tǒng)穩(wěn)定性:優(yōu)化內(nèi)存、CPU和磁盤(pán)使用,防止資源耗盡導(dǎo)致崩潰。
3.節(jié)省資源:合理分配系統(tǒng)資源,避免浪費(fèi),延長(zhǎng)硬件壽命。
調(diào)優(yōu)原則:
(1)先測(cè)試后應(yīng)用:在測(cè)試環(huán)境中驗(yàn)證調(diào)優(yōu)效果,避免生產(chǎn)環(huán)境風(fēng)險(xiǎn)。
(2)分階段實(shí)施:逐步調(diào)整參數(shù),每次變更后觀察系統(tǒng)表現(xiàn)。
(3)文檔記錄:詳細(xì)記錄調(diào)優(yōu)步驟和參數(shù),便于回溯和問(wèn)題排查。
(二)調(diào)優(yōu)工具與準(zhǔn)備
1.工具:
(1)`sysctl`:用于動(dòng)態(tài)修改內(nèi)核參數(shù)。
(2)`nmon`/`htop`:系統(tǒng)性能監(jiān)控工具。
(3)`iotop`:磁盤(pán)I/O監(jiān)控工具。
2.準(zhǔn)備:
(1)備份配置文件:如`/etc/sysctl.conf`、`/etc/fstab`。
(2)收集基線數(shù)據(jù):記錄調(diào)優(yōu)前的性能指標(biāo)(如CPU使用率、內(nèi)存占用)。
二、內(nèi)核參數(shù)優(yōu)化
內(nèi)核參數(shù)是影響系統(tǒng)性能的關(guān)鍵因素,通過(guò)`sysctl`工具可以動(dòng)態(tài)調(diào)整。
(一)網(wǎng)絡(luò)參數(shù)優(yōu)化
1.增加文件描述符限制:
```bash
sysctl-wnet.ipv4.tcp_max_syn_backlog=65535
sysctl-wnet.core.somaxconn=65535
```
說(shuō)明:提高TCP連接隊(duì)列長(zhǎng)度,適用于高并發(fā)場(chǎng)景。
2.啟用TCP快速打開(kāi):
```bash
sysctl-wnet.ipv4.tcp_fastopen=3
```
說(shuō)明:加速TCP連接建立過(guò)程。
(二)內(nèi)存管理優(yōu)化
1.調(diào)整Swap使用策略:
```bash
sysctl-wvm.swappiness=10
```
說(shuō)明:降低系統(tǒng)使用Swap的傾向,優(yōu)先保留內(nèi)存。
2.增加文件句柄限制:
```bash
sysctl-wfs.file-max=100000
```
說(shuō)明:提升并發(fā)文件操作能力。
(三)CPU與進(jìn)程管理
1.調(diào)整OOM(OutofMemory)策略:
```bash
sysctl-wvm.oom_kill_disable=1
```
說(shuō)明:防止系統(tǒng)因OOM殺死關(guān)鍵進(jìn)程。
2.限制進(jìn)程數(shù):
```bash
sysctl-wkernel.pid_max=65535
```
說(shuō)明:適用于高并發(fā)服務(wù)器。
三、網(wǎng)絡(luò)配置調(diào)優(yōu)
網(wǎng)絡(luò)性能直接影響系統(tǒng)響應(yīng)速度,以下為常見(jiàn)優(yōu)化方法。
(一)TCP/IP堆棧優(yōu)化
1.調(diào)整TCP窗口大小:
```bash
sysctl-wnet.ipv4.tcp_rmem="40968738016777216"
sysctl-wnet.ipv4.tcp_wmem="40966553616777216"
```
說(shuō)明:優(yōu)化TCP發(fā)送和接收緩沖區(qū)。
2.啟用TCP重傳緩存:
```bash
sysctl-wnet.ipv4.tcp_retries2=6
```
說(shuō)明:減少無(wú)效連接的重傳次數(shù)。
(二)防火墻與NAT優(yōu)化
1.調(diào)整iptables連接跟蹤表大小:
```bash
iptables-AINPUT-mstate--stateRELATED,ESTABLISHED-jACCEPT
```
說(shuō)明:減少連接跟蹤沖突。
2.啟用IP轉(zhuǎn)發(fā):
```bash
sysctl-wnet.ipv4.ip_forward=1
```
說(shuō)明:支持NAT路由功能。
四、磁盤(pán)I/O優(yōu)化
磁盤(pán)性能是系統(tǒng)瓶頸的常見(jiàn)來(lái)源,以下為優(yōu)化方法。
(一)文件系統(tǒng)掛載選項(xiàng)
1.使用`noatime`減少磁盤(pán)訪問(wèn):
```bash
mount-oremount,noatime/data
```
說(shuō)明:避免文件系統(tǒng)頻繁檢查訪問(wèn)時(shí)間。
2.啟用磁盤(pán)緩存:
```bash
mount-osync/boot
```
說(shuō)明:確保關(guān)鍵分區(qū)同步寫(xiě)入。
(二)I/O調(diào)度器調(diào)整
1.選擇合適的調(diào)度器:
```bash
echo"deadline">/sys/block/sda/queue/scheduler
```
說(shuō)明:`deadline`適合混合負(fù)載。
2.調(diào)整隊(duì)列深度:
```bash
echo256>/sys/block/sda/queue/nr_requests
```
說(shuō)明:增加隊(duì)列長(zhǎng)度提升吞吐量。
(三)SSD專(zhuān)項(xiàng)優(yōu)化
1.禁用寫(xiě)入時(shí)壓縮:
```bash
hdparm-W0/dev/sda
```
說(shuō)明:提升SSD寫(xiě)入速度。
2.啟用TRIM支持:
```bash
echo1>/sys/block/sda/queue/rotational
```
說(shuō)明:延長(zhǎng)SSD壽命。
五、內(nèi)存管理調(diào)優(yōu)
內(nèi)存不足會(huì)導(dǎo)致系統(tǒng)卡頓,以下為優(yōu)化策略。
(一)Swap使用策略
1.限制Swap使用比例:
```bash
sysctl-wvm.swappiness=30
```
說(shuō)明:優(yōu)先保留內(nèi)存,但允許部分Swap。
2.設(shè)置Swap文件大?。?/p>
```bash
fallocate-l4G/swapfile
mkswap/swapfile
swapon/swapfile
```
說(shuō)明:創(chuàng)建4GBSwap空間。
(二)內(nèi)存緩存優(yōu)化
1.調(diào)整PageCache大小:
```bash
sysctl-wvm.dirty_ratio=10
```
說(shuō)明:限制臟頁(yè)比例,避免OOM。
2.快速回收過(guò)期緩存:
```bash
sysctl-wvm.dirty_background_ratio=5
```
說(shuō)明:降低臟頁(yè)對(duì)性能影響。
六、總結(jié)
Linux系統(tǒng)調(diào)優(yōu)是一個(gè)持續(xù)優(yōu)化的過(guò)程,需結(jié)合實(shí)際場(chǎng)景逐步調(diào)整。關(guān)鍵點(diǎn)包括:
1.監(jiān)控基線數(shù)據(jù),量化調(diào)優(yōu)效果。
2.遵循最小變更原則,避免過(guò)度調(diào)優(yōu)。
3.定期復(fù)查配置,適應(yīng)負(fù)載變化。
七、服務(wù)與進(jìn)程優(yōu)化
服務(wù)與進(jìn)程是系統(tǒng)資源的主要消耗者,合理的配置和管理可以顯著提升系統(tǒng)性能和穩(wěn)定性。本部分將介紹如何優(yōu)化系統(tǒng)服務(wù)、管理進(jìn)程優(yōu)先級(jí)以及減少不必要的后臺(tái)服務(wù)。
(一)服務(wù)管理優(yōu)化
1.禁用非必要服務(wù):
(1)使用`systemctl`禁用服務(wù):
```bash
systemctldisableavahi-daemon
systemctldisablecoredump
```
(2)移除無(wú)用的服務(wù)包:
```bash
aptremove--purgeavahi-daemon
```
2.限制服務(wù)啟動(dòng)等級(jí):
(1)編輯服務(wù)單元文件,設(shè)置`Wants=`或`Requires=`:
```ini
[Unit]
Wants=network.target
```
(2)使用`systemd`管理服務(wù)依賴(lài):
```bash
systemctlcatsshd
```
(二)進(jìn)程優(yōu)先級(jí)管理
1.使用`nice`和`renice`調(diào)整進(jìn)程優(yōu)先級(jí):
(1)降低優(yōu)先級(jí)(數(shù)值越大優(yōu)先級(jí)越低):
```bash
nice-n19./long-running-script.sh
```
(2)動(dòng)態(tài)調(diào)整已運(yùn)行進(jìn)程:
```bash
renice-10-p1234
```
2.設(shè)置實(shí)時(shí)進(jìn)程優(yōu)先級(jí)(需root權(quán)限):
```bash
renice-20-p1234
```
3.使用`ionice`控制I/O優(yōu)先級(jí):
(1)設(shè)置低優(yōu)先級(jí)I/O:
```bash
ionice-c2-n7./io-intensive-task
```
(2)優(yōu)先級(jí)說(shuō)明:
-`-c1`:公平共享類(lèi)
-`-c2`:最佳努力類(lèi)(默認(rèn))
-`-c3`:實(shí)時(shí)類(lèi)
(三)進(jìn)程數(shù)限制
1.限制單個(gè)用戶進(jìn)程數(shù):
```bash
echo"500">/etc/security/limits.d/90-nproc.conf
```
2.限制系統(tǒng)總進(jìn)程數(shù):
```bash
ulimit-n10000
```
八、用戶與權(quán)限優(yōu)化
用戶和權(quán)限管理是系統(tǒng)安全的重要環(huán)節(jié),合理的配置可以防止資源濫用和潛在風(fēng)險(xiǎn)。
(一)用戶認(rèn)證優(yōu)化
1.禁用空密碼:
(1)修改`/etc/pam.d/common-password`:
```ini
passwordrequisitepam_pwquality.soretry=3
```
(2)設(shè)置密碼復(fù)雜度要求:
```ini
minlen=8
difok=3
```
2.啟用PAM密碼歷史記錄:
```ini
remember=5
```
(二)權(quán)限管理優(yōu)化
1.最小權(quán)限原則:
(1)使用`chown`和`chmod`精確控制權(quán)限:
```bash
chown-Ruser:group/var/log/app
chmod750/var/log/app
```
(2)使用`setfacl`附加權(quán)限:
```bash
setfacl-mu:user:rwx/etc/config.json
```
2.SUID/SGID特殊權(quán)限管理:
(1)查找并審計(jì)SUID程序:
```bash
find/usr/bin-perm/4000
```
(2)限制SUID程序:
```bash
chownroot:root/usr/bin/sudo
```
(三)SELinux/AppArmor安全增強(qiáng)
1.啟用SELinux(強(qiáng)制模式):
```bash
sed-i's/^SELINUX=.$/SELINUX=enforcing/'/etc/selinux/config
```
2.AppArmor強(qiáng)制策略示例:
(1)加載AppArmor模塊:
```bash
systemctlenableapparmor
```
(2)配置應(yīng)用策略:
```bash
aa-complain/usr/bin/firefox
```
九、日志與監(jiān)控優(yōu)化
日志和監(jiān)控是系統(tǒng)運(yùn)維的重要手段,優(yōu)化配置可以提升日志效率和監(jiān)控精度。
(一)系統(tǒng)日志優(yōu)化
1.調(diào)整日志級(jí)別:
(1)編輯`/etc/rsyslog.conf`:
```ini
$LevelDebug-/var/log/debug
```
(2)重載配置:
```bash
systemctlreloadrsyslog
```
2.日志輪轉(zhuǎn)配置:
(1)編輯`/etc/logrotate.conf`:
```ini
/var/log/syslog{
daily
missingok
rotate7
}
```
(二)監(jiān)控工具配置
1.Nagios監(jiān)控配置步驟:
(1)安裝Nagios核心:
```bash
aptinstallnagiosnagios-nscanagios-plugins
```
(2)配置主機(jī)監(jiān)控:
```xml
<host>
<name>web-server</name>
<check_command>check_http</check_command>
</host>
```
2.Zabbix監(jiān)控配置清單:
-主機(jī)添加:
-IP/域名
-SNMP版本(v1/v2c)
-項(xiàng)目配置:
-CPU使用率(Perfcounter)
-磁盤(pán)空間(Agent)
(三)性能監(jiān)控自動(dòng)化
1.使用`cron`定時(shí)采集性能數(shù)據(jù):
```bash
/5/usr/lib/nagios/plugins/check_load>/var/log/load-check.log
```
2.Prometheus+Grafana組合配置:
(1)安裝Prometheus:
```bash
dockerrun-p9090:9090prom/prometheus
```
(2)配置`prometheus.yml`:
```yaml
scrape_configs:
-job_name:'system'
static_configs:
-targets:['localhost:9100']
```
十、總結(jié)
Linux系統(tǒng)調(diào)優(yōu)是一個(gè)系統(tǒng)性工程,涉及內(nèi)核、網(wǎng)絡(luò)、磁盤(pán)、內(nèi)存、服務(wù)等多個(gè)層面。實(shí)際操作中需遵循以下原則:
1.測(cè)試優(yōu)先:在測(cè)試環(huán)境驗(yàn)證每項(xiàng)變更的效果。
2.逐步實(shí)施:從小范圍開(kāi)始調(diào)整,逐步擴(kuò)大范圍。
3.自動(dòng)化監(jiān)控:建立持續(xù)監(jiān)控機(jī)制,及時(shí)發(fā)現(xiàn)問(wèn)題。
4.文檔記錄:詳細(xì)記錄調(diào)優(yōu)過(guò)程和參數(shù)變更,便于問(wèn)題回溯。通過(guò)系統(tǒng)化的調(diào)優(yōu),可以顯著提升Linux服務(wù)器的性能和穩(wěn)定性,滿足生產(chǎn)環(huán)境的高要求。
一、Linux系統(tǒng)調(diào)優(yōu)概述
Linux系統(tǒng)調(diào)優(yōu)是指通過(guò)調(diào)整系統(tǒng)參數(shù)和配置,優(yōu)化系統(tǒng)性能、穩(wěn)定性和安全性。合理的調(diào)優(yōu)可以提升系統(tǒng)資源利用率,改善用戶體驗(yàn)。本手冊(cè)將涵蓋Linux系統(tǒng)調(diào)優(yōu)的關(guān)鍵方面,包括內(nèi)核參數(shù)優(yōu)化、網(wǎng)絡(luò)配置、磁盤(pán)I/O優(yōu)化、內(nèi)存管理等。
(一)調(diào)優(yōu)目的與原則
1.提高系統(tǒng)性能:通過(guò)調(diào)整內(nèi)核參數(shù)和資源分配,減少延遲,提升響應(yīng)速度。
2.增強(qiáng)系統(tǒng)穩(wěn)定性:優(yōu)化內(nèi)存、CPU和磁盤(pán)使用,防止資源耗盡導(dǎo)致崩潰。
3.節(jié)省資源:合理分配系統(tǒng)資源,避免浪費(fèi),延長(zhǎng)硬件壽命。
調(diào)優(yōu)原則:
(1)先測(cè)試后應(yīng)用:在測(cè)試環(huán)境中驗(yàn)證調(diào)優(yōu)效果,避免生產(chǎn)環(huán)境風(fēng)險(xiǎn)。
(2)分階段實(shí)施:逐步調(diào)整參數(shù),每次變更后觀察系統(tǒng)表現(xiàn)。
(3)文檔記錄:詳細(xì)記錄調(diào)優(yōu)步驟和參數(shù),便于回溯和問(wèn)題排查。
(二)調(diào)優(yōu)工具與準(zhǔn)備
1.工具:
(1)`sysctl`:用于動(dòng)態(tài)修改內(nèi)核參數(shù)。
(2)`nmon`/`htop`:系統(tǒng)性能監(jiān)控工具。
(3)`iotop`:磁盤(pán)I/O監(jiān)控工具。
2.準(zhǔn)備:
(1)備份配置文件:如`/etc/sysctl.conf`、`/etc/fstab`。
(2)收集基線數(shù)據(jù):記錄調(diào)優(yōu)前的性能指標(biāo)(如CPU使用率、內(nèi)存占用)。
二、內(nèi)核參數(shù)優(yōu)化
內(nèi)核參數(shù)是影響系統(tǒng)性能的關(guān)鍵因素,通過(guò)`sysctl`工具可以動(dòng)態(tài)調(diào)整。
(一)網(wǎng)絡(luò)參數(shù)優(yōu)化
1.增加文件描述符限制:
```bash
sysctl-wnet.ipv4.tcp_max_syn_backlog=65535
sysctl-wnet.core.somaxconn=65535
```
說(shuō)明:提高TCP連接隊(duì)列長(zhǎng)度,適用于高并發(fā)場(chǎng)景。
2.啟用TCP快速打開(kāi):
```bash
sysctl-wnet.ipv4.tcp_fastopen=3
```
說(shuō)明:加速TCP連接建立過(guò)程。
(二)內(nèi)存管理優(yōu)化
1.調(diào)整Swap使用策略:
```bash
sysctl-wvm.swappiness=10
```
說(shuō)明:降低系統(tǒng)使用Swap的傾向,優(yōu)先保留內(nèi)存。
2.增加文件句柄限制:
```bash
sysctl-wfs.file-max=100000
```
說(shuō)明:提升并發(fā)文件操作能力。
(三)CPU與進(jìn)程管理
1.調(diào)整OOM(OutofMemory)策略:
```bash
sysctl-wvm.oom_kill_disable=1
```
說(shuō)明:防止系統(tǒng)因OOM殺死關(guān)鍵進(jìn)程。
2.限制進(jìn)程數(shù):
```bash
sysctl-wkernel.pid_max=65535
```
說(shuō)明:適用于高并發(fā)服務(wù)器。
三、網(wǎng)絡(luò)配置調(diào)優(yōu)
網(wǎng)絡(luò)性能直接影響系統(tǒng)響應(yīng)速度,以下為常見(jiàn)優(yōu)化方法。
(一)TCP/IP堆棧優(yōu)化
1.調(diào)整TCP窗口大小:
```bash
sysctl-wnet.ipv4.tcp_rmem="40968738016777216"
sysctl-wnet.ipv4.tcp_wmem="40966553616777216"
```
說(shuō)明:優(yōu)化TCP發(fā)送和接收緩沖區(qū)。
2.啟用TCP重傳緩存:
```bash
sysctl-wnet.ipv4.tcp_retries2=6
```
說(shuō)明:減少無(wú)效連接的重傳次數(shù)。
(二)防火墻與NAT優(yōu)化
1.調(diào)整iptables連接跟蹤表大?。?/p>
```bash
iptables-AINPUT-mstate--stateRELATED,ESTABLISHED-jACCEPT
```
說(shuō)明:減少連接跟蹤沖突。
2.啟用IP轉(zhuǎn)發(fā):
```bash
sysctl-wnet.ipv4.ip_forward=1
```
說(shuō)明:支持NAT路由功能。
四、磁盤(pán)I/O優(yōu)化
磁盤(pán)性能是系統(tǒng)瓶頸的常見(jiàn)來(lái)源,以下為優(yōu)化方法。
(一)文件系統(tǒng)掛載選項(xiàng)
1.使用`noatime`減少磁盤(pán)訪問(wèn):
```bash
mount-oremount,noatime/data
```
說(shuō)明:避免文件系統(tǒng)頻繁檢查訪問(wèn)時(shí)間。
2.啟用磁盤(pán)緩存:
```bash
mount-osync/boot
```
說(shuō)明:確保關(guān)鍵分區(qū)同步寫(xiě)入。
(二)I/O調(diào)度器調(diào)整
1.選擇合適的調(diào)度器:
```bash
echo"deadline">/sys/block/sda/queue/scheduler
```
說(shuō)明:`deadline`適合混合負(fù)載。
2.調(diào)整隊(duì)列深度:
```bash
echo256>/sys/block/sda/queue/nr_requests
```
說(shuō)明:增加隊(duì)列長(zhǎng)度提升吞吐量。
(三)SSD專(zhuān)項(xiàng)優(yōu)化
1.禁用寫(xiě)入時(shí)壓縮:
```bash
hdparm-W0/dev/sda
```
說(shuō)明:提升SSD寫(xiě)入速度。
2.啟用TRIM支持:
```bash
echo1>/sys/block/sda/queue/rotational
```
說(shuō)明:延長(zhǎng)SSD壽命。
五、內(nèi)存管理調(diào)優(yōu)
內(nèi)存不足會(huì)導(dǎo)致系統(tǒng)卡頓,以下為優(yōu)化策略。
(一)Swap使用策略
1.限制Swap使用比例:
```bash
sysctl-wvm.swappiness=30
```
說(shuō)明:優(yōu)先保留內(nèi)存,但允許部分Swap。
2.設(shè)置Swap文件大?。?/p>
```bash
fallocate-l4G/swapfile
mkswap/swapfile
swapon/swapfile
```
說(shuō)明:創(chuàng)建4GBSwap空間。
(二)內(nèi)存緩存優(yōu)化
1.調(diào)整PageCache大小:
```bash
sysctl-wvm.dirty_ratio=10
```
說(shuō)明:限制臟頁(yè)比例,避免OOM。
2.快速回收過(guò)期緩存:
```bash
sysctl-wvm.dirty_background_ratio=5
```
說(shuō)明:降低臟頁(yè)對(duì)性能影響。
六、總結(jié)
Linux系統(tǒng)調(diào)優(yōu)是一個(gè)持續(xù)優(yōu)化的過(guò)程,需結(jié)合實(shí)際場(chǎng)景逐步調(diào)整。關(guān)鍵點(diǎn)包括:
1.監(jiān)控基線數(shù)據(jù),量化調(diào)優(yōu)效果。
2.遵循最小變更原則,避免過(guò)度調(diào)優(yōu)。
3.定期復(fù)查配置,適應(yīng)負(fù)載變化。
七、服務(wù)與進(jìn)程優(yōu)化
服務(wù)與進(jìn)程是系統(tǒng)資源的主要消耗者,合理的配置和管理可以顯著提升系統(tǒng)性能和穩(wěn)定性。本部分將介紹如何優(yōu)化系統(tǒng)服務(wù)、管理進(jìn)程優(yōu)先級(jí)以及減少不必要的后臺(tái)服務(wù)。
(一)服務(wù)管理優(yōu)化
1.禁用非必要服務(wù):
(1)使用`systemctl`禁用服務(wù):
```bash
systemctldisableavahi-daemon
systemctldisablecoredump
```
(2)移除無(wú)用的服務(wù)包:
```bash
aptremove--purgeavahi-daemon
```
2.限制服務(wù)啟動(dòng)等級(jí):
(1)編輯服務(wù)單元文件,設(shè)置`Wants=`或`Requires=`:
```ini
[Unit]
Wants=network.target
```
(2)使用`systemd`管理服務(wù)依賴(lài):
```bash
systemctlcatsshd
```
(二)進(jìn)程優(yōu)先級(jí)管理
1.使用`nice`和`renice`調(diào)整進(jìn)程優(yōu)先級(jí):
(1)降低優(yōu)先級(jí)(數(shù)值越大優(yōu)先級(jí)越低):
```bash
nice-n19./long-running-script.sh
```
(2)動(dòng)態(tài)調(diào)整已運(yùn)行進(jìn)程:
```bash
renice-10-p1234
```
2.設(shè)置實(shí)時(shí)進(jìn)程優(yōu)先級(jí)(需root權(quán)限):
```bash
renice-20-p1234
```
3.使用`ionice`控制I/O優(yōu)先級(jí):
(1)設(shè)置低優(yōu)先級(jí)I/O:
```bash
ionice-c2-n7./io-intensive-task
```
(2)優(yōu)先級(jí)說(shuō)明:
-`-c1`:公平共享類(lèi)
-`-c2`:最佳努力類(lèi)(默認(rèn))
-`-c3`:實(shí)時(shí)類(lèi)
(三)進(jìn)程數(shù)限制
1.限制單個(gè)用戶進(jìn)程數(shù):
```bash
echo"500">/etc/security/limits.d/90-nproc.conf
```
2.限制系統(tǒng)總進(jìn)程數(shù):
```bash
ulimit-n10000
```
八、用戶與權(quán)限優(yōu)化
用戶和權(quán)限管理是系統(tǒng)安全的重要環(huán)節(jié),合理的配置可以防止資源濫用和潛在風(fēng)險(xiǎn)。
(一)用戶認(rèn)證優(yōu)化
1.禁用空密碼:
(1)修改`/etc/pam.d/common-password`:
```ini
passwordrequisitepam_pwquality.soretry=3
```
(2)設(shè)置密碼復(fù)雜度要求:
```ini
minlen=8
difok=3
```
2.啟用PAM密碼歷史記錄:
```ini
remember=5
```
(二)權(quán)限管理優(yōu)化
1.最小權(quán)限原則:
(1)使用`chown`和`chmod`精確控制權(quán)限:
```bash
chown-Ruser:group/var/log/app
chmod750/var/log/app
```
(2)使用`setfacl`附加權(quán)限:
```bash
setfacl-mu:user:rwx/etc/config.json
```
2.SUID/SGID特殊權(quán)限管理:
(1)查找并審計(jì)SUID程序:
```bash
find/usr/bin-perm/4000
```
(2)限制SUID程序:
```bash
chownroot:root/usr/bin/sudo
```
(三)SELinux/AppArmor安全增強(qiáng)
1.啟用SELinux(強(qiáng)制模式):
```bash
sed-i's/^SELINUX=.$/SELINUX=enforcing/'/etc/selinux/config
```
2.AppArmor強(qiáng)制策略示例:
(1)加載AppArmor模塊:
```bash
systemctlenableapparmor
```
(2)配置應(yīng)用策略:
```bash
aa-complain/usr/bin/firefox
```
九、日志與監(jiān)控優(yōu)化
日志和監(jiān)控是系統(tǒng)運(yùn)維的重要手段,優(yōu)化配置可以提升日志效率和監(jiān)控精度。
(一)系統(tǒng)日志優(yōu)化
1.調(diào)整日志級(jí)別:
(1)編輯`/etc/rsyslog.conf`:
```ini
$LevelDebug-/var/log/debug
```
(2)重載配置:
```bash
systemctlreloadrsyslog
```
2.日志輪轉(zhuǎn)配置:
(1)編輯`/etc/logrotate.conf`:
```ini
/var/log/syslog{
daily
missingok
rotate7
}
```
(二)監(jiān)控工具配置
1.Nagios監(jiān)控配置步驟:
(1)安裝Nagios核心:
```bash
aptinstallnagiosnagios-nscanagios-plugins
```
(2)配置主機(jī)監(jiān)控:
```xml
<host>
<name>web-server</name>
<check_command>check_http</check_command>
</host>
```
2.Zabbix監(jiān)控配置清單:
-主機(jī)添加:
-IP/域名
-SNMP版本(v1/v2c)
-項(xiàng)目配置:
-CPU使用率(Perfcounter)
-磁盤(pán)空間(Agent)
(三)性能監(jiān)控自動(dòng)化
1.使用`cron`定時(shí)采集性能數(shù)據(jù):
```bash
/5/usr/lib/nagios/plugins/check_load>/var/log/load-check.log
```
2.Prometheus+Grafana組合配置:
(1)安裝Prometheus:
```bash
dockerrun-p9090:9090prom/prometheus
```
(2)配置`prometheus.yml`:
```yaml
scrape_configs:
-job_name:'system'
static_configs:
-targets:['localhost:9100']
```
十、總結(jié)
Linux系統(tǒng)調(diào)優(yōu)是一個(gè)系統(tǒng)性工程,涉及內(nèi)核、網(wǎng)絡(luò)、磁盤(pán)、內(nèi)存、服務(wù)等多個(gè)層面。實(shí)際操作中需遵循以下原則:
1.測(cè)試優(yōu)先:在測(cè)試環(huán)境驗(yàn)證每項(xiàng)變更的效果。
2.逐步實(shí)施:從小范圍開(kāi)始調(diào)整,逐步擴(kuò)大范圍。
3.自動(dòng)化監(jiān)控:建立持續(xù)監(jiān)控機(jī)制,及時(shí)發(fā)現(xiàn)問(wèn)題。
4.文檔記錄:詳細(xì)記錄調(diào)優(yōu)過(guò)程和參數(shù)變更,便于問(wèn)題回溯。通過(guò)系統(tǒng)化的調(diào)優(yōu),可以顯著提升Linux服務(wù)器的性能和穩(wěn)定性,滿足生產(chǎn)環(huán)境的高要求。
一、Linux系統(tǒng)調(diào)優(yōu)概述
Linux系統(tǒng)調(diào)優(yōu)是指通過(guò)調(diào)整系統(tǒng)參數(shù)和配置,優(yōu)化系統(tǒng)性能、穩(wěn)定性和安全性。合理的調(diào)優(yōu)可以提升系統(tǒng)資源利用率,改善用戶體驗(yàn)。本手冊(cè)將涵蓋Linux系統(tǒng)調(diào)優(yōu)的關(guān)鍵方面,包括內(nèi)核參數(shù)優(yōu)化、網(wǎng)絡(luò)配置、磁盤(pán)I/O優(yōu)化、內(nèi)存管理等。
(一)調(diào)優(yōu)目的與原則
1.提高系統(tǒng)性能:通過(guò)調(diào)整內(nèi)核參數(shù)和資源分配,減少延遲,提升響應(yīng)速度。
2.增強(qiáng)系統(tǒng)穩(wěn)定性:優(yōu)化內(nèi)存、CPU和磁盤(pán)使用,防止資源耗盡導(dǎo)致崩潰。
3.節(jié)省資源:合理分配系統(tǒng)資源,避免浪費(fèi),延長(zhǎng)硬件壽命。
調(diào)優(yōu)原則:
(1)先測(cè)試后應(yīng)用:在測(cè)試環(huán)境中驗(yàn)證調(diào)優(yōu)效果,避免生產(chǎn)環(huán)境風(fēng)險(xiǎn)。
(2)分階段實(shí)施:逐步調(diào)整參數(shù),每次變更后觀察系統(tǒng)表現(xiàn)。
(3)文檔記錄:詳細(xì)記錄調(diào)優(yōu)步驟和參數(shù),便于回溯和問(wèn)題排查。
(二)調(diào)優(yōu)工具與準(zhǔn)備
1.工具:
(1)`sysctl`:用于動(dòng)態(tài)修改內(nèi)核參數(shù)。
(2)`nmon`/`htop`:系統(tǒng)性能監(jiān)控工具。
(3)`iotop`:磁盤(pán)I/O監(jiān)控工具。
2.準(zhǔn)備:
(1)備份配置文件:如`/etc/sysctl.conf`、`/etc/fstab`。
(2)收集基線數(shù)據(jù):記錄調(diào)優(yōu)前的性能指標(biāo)(如CPU使用率、內(nèi)存占用)。
二、內(nèi)核參數(shù)優(yōu)化
內(nèi)核參數(shù)是影響系統(tǒng)性能的關(guān)鍵因素,通過(guò)`sysctl`工具可以動(dòng)態(tài)調(diào)整。
(一)網(wǎng)絡(luò)參數(shù)優(yōu)化
1.增加文件描述符限制:
```bash
sysctl-wnet.ipv4.tcp_max_syn_backlog=65535
sysctl-wnet.core.somaxconn=65535
```
說(shuō)明:提高TCP連接隊(duì)列長(zhǎng)度,適用于高并發(fā)場(chǎng)景。
2.啟用TCP快速打開(kāi):
```bash
sysctl-wnet.ipv4.tcp_fastopen=3
```
說(shuō)明:加速TCP連接建立過(guò)程。
(二)內(nèi)存管理優(yōu)化
1.調(diào)整Swap使用策略:
```bash
sysctl-wvm.swappiness=10
```
說(shuō)明:降低系統(tǒng)使用Swap的傾向,優(yōu)先保留內(nèi)存。
2.增加文件句柄限制:
```bash
sysctl-wfs.file-max=100000
```
說(shuō)明:提升并發(fā)文件操作能力。
(三)CPU與進(jìn)程管理
1.調(diào)整OOM(OutofMemory)策略:
```bash
sysctl-wvm.oom_kill_disable=1
```
說(shuō)明:防止系統(tǒng)因OOM殺死關(guān)鍵進(jìn)程。
2.限制進(jìn)程數(shù):
```bash
sysctl-wkernel.pid_max=65535
```
說(shuō)明:適用于高并發(fā)服務(wù)器。
三、網(wǎng)絡(luò)配置調(diào)優(yōu)
網(wǎng)絡(luò)性能直接影響系統(tǒng)響應(yīng)速度,以下為常見(jiàn)優(yōu)化方法。
(一)TCP/IP堆棧優(yōu)化
1.調(diào)整TCP窗口大?。?/p>
```bash
sysctl-wnet.ipv4.tcp_rmem="40968738016777216"
sysctl-wnet.ipv4.tcp_wmem="40966553616777216"
```
說(shuō)明:優(yōu)化TCP發(fā)送和接收緩沖區(qū)。
2.啟用TCP重傳緩存:
```bash
sysctl-wnet.ipv4.tcp_retries2=6
```
說(shuō)明:減少無(wú)效連接的重傳次數(shù)。
(二)防火墻與NAT優(yōu)化
1.調(diào)整iptables連接跟蹤表大小:
```bash
iptables-AINPUT-mstate--stateRELATED,ESTABLISHED-jACCEPT
```
說(shuō)明:減少連接跟蹤沖突。
2.啟用IP轉(zhuǎn)發(fā):
```bash
sysctl-wnet.ipv4.ip_forward=1
```
說(shuō)明:支持NAT路由功能。
四、磁盤(pán)I/O優(yōu)化
磁盤(pán)性能是系統(tǒng)瓶頸的常見(jiàn)來(lái)源,以下為優(yōu)化方法。
(一)文件系統(tǒng)掛載選項(xiàng)
1.使用`noatime`減少磁盤(pán)訪問(wèn):
```bash
mount-oremount,noatime/data
```
說(shuō)明:避免文件系統(tǒng)頻繁檢查訪問(wèn)時(shí)間。
2.啟用磁盤(pán)緩存:
```bash
mount-osync/boot
```
說(shuō)明:確保關(guān)鍵分區(qū)同步寫(xiě)入。
(二)I/O調(diào)度器調(diào)整
1.選擇合適的調(diào)度器:
```bash
echo"deadline">/sys/block/sda/queue/scheduler
```
說(shuō)明:`deadline`適合混合負(fù)載。
2.調(diào)整隊(duì)列深度:
```bash
echo256>/sys/block/sda/queue/nr_requests
```
說(shuō)明:增加隊(duì)列長(zhǎng)度提升吞吐量。
(三)SSD專(zhuān)項(xiàng)優(yōu)化
1.禁用寫(xiě)入時(shí)壓縮:
```bash
hdparm-W0/dev/sda
```
說(shuō)明:提升SSD寫(xiě)入速度。
2.啟用TRIM支持:
```bash
echo1>/sys/block/sda/queue/rotational
```
說(shuō)明:延長(zhǎng)SSD壽命。
五、內(nèi)存管理調(diào)優(yōu)
內(nèi)存不足會(huì)導(dǎo)致系統(tǒng)卡頓,以下為優(yōu)化策略。
(一)Swap使用策略
1.限制Swap使用比例:
```bash
sysctl-wvm.swappiness=30
```
說(shuō)明:優(yōu)先保留內(nèi)存,但允許部分Swap。
2.設(shè)置Swap文件大?。?/p>
```bash
fallocate-l4G/swapfile
mkswap/swapfile
swapon/swapfile
```
說(shuō)明:創(chuàng)建4GBSwap空間。
(二)內(nèi)存緩存優(yōu)化
1.調(diào)整PageCache大?。?/p>
```bash
sysctl-wvm.dirty_ratio=10
```
說(shuō)明:限制臟頁(yè)比例,避免OOM。
2.快速回收過(guò)期緩存:
```bash
sysctl-wvm.dirty_background_ratio=5
```
說(shuō)明:降低臟頁(yè)對(duì)性能影響。
六、總結(jié)
Linux系統(tǒng)調(diào)優(yōu)是一個(gè)持續(xù)優(yōu)化的過(guò)程,需結(jié)合實(shí)際場(chǎng)景逐步調(diào)整。關(guān)鍵點(diǎn)包括:
1.監(jiān)控基線數(shù)據(jù),量化調(diào)優(yōu)效果。
2.遵循最小變更原則,避免過(guò)度調(diào)優(yōu)。
3.定期復(fù)查配置,適應(yīng)負(fù)載變化。
七、服務(wù)與進(jìn)程優(yōu)化
服務(wù)與進(jìn)程是系統(tǒng)資源的主要消耗者,合理的配置和管理可以顯著提升系統(tǒng)性能和穩(wěn)定性。本部分將介紹如何優(yōu)化系統(tǒng)服務(wù)、管理進(jìn)程優(yōu)先級(jí)以及減少不必要的后臺(tái)服務(wù)。
(一)服務(wù)管理優(yōu)化
1.禁用非必要服務(wù):
(1)使用`systemctl`禁用服務(wù):
```bash
systemctldisableavahi-daemon
systemctldisablecoredump
```
(2)移除無(wú)用的服務(wù)包:
```bash
aptremove--purgeavahi-daemon
```
2.限制服務(wù)啟動(dòng)等級(jí):
(1)編輯服務(wù)單元文件,設(shè)置`Wants=`或`Requires=`:
```ini
[Unit]
Wants=network.target
```
(2)使用`systemd`管理服務(wù)依賴(lài):
```bash
systemctlcatsshd
```
(二)進(jìn)程優(yōu)先級(jí)管理
1.使用`nice`和`renice`調(diào)整進(jìn)程優(yōu)先級(jí):
(1)降低優(yōu)先級(jí)(數(shù)值越大優(yōu)先級(jí)越低):
```bash
nice-n19./long-running-script.sh
```
(2)動(dòng)態(tài)調(diào)整已運(yùn)行進(jìn)程:
```bash
renice-10-p1234
```
2.設(shè)置實(shí)時(shí)進(jìn)程優(yōu)先級(jí)(需root權(quán)限):
```bash
renice-20-p1234
```
3.使用`ionice`控制I/O優(yōu)先級(jí):
(1)設(shè)置低優(yōu)先級(jí)I/O:
```bash
ionice-c2-n7./io-intensive-task
```
(2)優(yōu)先級(jí)說(shuō)明:
-`-c1`:公平共享類(lèi)
-`-c2`:最佳努力類(lèi)(默認(rèn))
-`-c3`:實(shí)時(shí)類(lèi)
(三)進(jìn)程數(shù)限制
1.限制單個(gè)用戶進(jìn)程數(shù):
```bash
echo"500">/etc/security/limits.d/90-nproc.conf
```
2.限制系統(tǒng)總進(jìn)程數(shù):
```bash
ulimit-n10000
```
八、用戶與權(quán)限優(yōu)化
用戶和權(quán)限管理是系統(tǒng)安全的重要環(huán)節(jié),合理的配置可以防止資源濫用和潛在風(fēng)險(xiǎn)。
(一)用戶認(rèn)證優(yōu)化
1.禁用空密碼:
(1)修改`/etc/pam.d/common-password`:
```ini
passwordrequisitepam_pwquality.soretry=3
```
(2)設(shè)置密碼復(fù)雜度要求:
```ini
minlen=8
difok=3
```
2.啟用PAM密碼歷史記錄:
```ini
remember=5
```
(二)權(quán)限管理優(yōu)化
1.最小權(quán)限原則:
(1)使用`chown`和`chmod`精確控制權(quán)限:
```bash
chown-Ruser:group/var/log/app
chmod750/var/log/app
```
(2)使用`setfacl`附加權(quán)限:
```bash
setfacl-mu:user:rwx/etc/config.json
```
2.SUID/SGID特殊權(quán)限管理:
(1)查找并審計(jì)SUID程序:
```bash
find/usr/bin-perm/4000
```
(2)限制SUID程序:
```bash
chownroot:root/usr/bin/sudo
```
(三)SELinux/AppArmor安全增強(qiáng)
1.啟用SELinux(強(qiáng)制模式):
```bash
sed-i's/^SELINUX=.$/SELINUX=enforcing/'/etc/selinux/config
```
2.AppArmor強(qiáng)制策略示例:
(1)加載AppArmor模塊:
```bash
systemctlenableapparmor
```
(2)配置應(yīng)用策略:
```bash
aa-complain/usr/bin/firefox
```
九、日志與監(jiān)控優(yōu)化
日志和監(jiān)控是系統(tǒng)運(yùn)維的重要手段,優(yōu)化配置可以提升日志效率和監(jiān)控精度。
(一)系統(tǒng)日志優(yōu)化
1.調(diào)整日志級(jí)別:
(1)編輯`/etc/rsyslog.conf`:
```ini
$LevelDebug-/var/log/debug
```
(2)重載配置:
```bash
systemctlreloadrsyslog
```
2.日志輪轉(zhuǎn)配置:
(1)編輯`/etc/logrotate.conf`:
```ini
/var/log/syslog{
daily
missingok
rotate7
}
```
(二)監(jiān)控工具配置
1.Nagios監(jiān)控配置步驟:
(1)安裝Nagios核心:
```bash
aptinstallnagiosnagios-nscanagios-plugins
```
(2)配置主機(jī)監(jiān)控:
```xml
<host>
<name>web-server</name>
<check_command>check_http</check_command>
</host>
```
2.Zabbix監(jiān)控配置清單:
-主機(jī)添加:
-IP/域名
-SNMP版本(v1/v2c)
-項(xiàng)目配置:
-CPU使用率(Perfcounter)
-磁盤(pán)空間(Agent)
(三)性能監(jiān)控自動(dòng)化
1.使用`cron`定時(shí)采集性能數(shù)據(jù):
```bash
/5/usr/lib/nagios/plugins/check_load>/var/log/load-check.log
```
2.Prometheus+Grafana組合配置:
(1)安裝Prometheus:
```bash
dockerrun-p9090:9090prom/prometheus
```
(2)配置`prometheus.yml`:
```yaml
scrape_configs:
-job_name:'system'
static_configs:
-targets:['localhost:9100']
```
十、總結(jié)
Linux系統(tǒng)調(diào)優(yōu)是一個(gè)系統(tǒng)性工程,涉及內(nèi)核、網(wǎng)絡(luò)、磁盤(pán)、內(nèi)存、服務(wù)等多個(gè)層面。實(shí)際操作中需遵循以下原則:
1.測(cè)試優(yōu)先:在測(cè)試環(huán)境驗(yàn)證每項(xiàng)變更的效果。
2.逐步實(shí)施:從小范圍開(kāi)始調(diào)整,逐步擴(kuò)大范圍。
3.自動(dòng)化監(jiān)控:建立持續(xù)監(jiān)控機(jī)制,及時(shí)發(fā)現(xiàn)問(wèn)題。
4.文檔記錄:詳細(xì)記錄調(diào)優(yōu)過(guò)程和參數(shù)變更,便于問(wèn)題回溯。通過(guò)系統(tǒng)化的調(diào)優(yōu),可以顯著提升Linux服務(wù)器的性能和穩(wěn)定性,滿足生產(chǎn)環(huán)境的高要求。
一、Linux系統(tǒng)調(diào)優(yōu)概述
Linux系統(tǒng)調(diào)優(yōu)是指通過(guò)調(diào)整系統(tǒng)參數(shù)和配置,優(yōu)化系統(tǒng)性能、穩(wěn)定性和安全性。合理的調(diào)優(yōu)可以提升系統(tǒng)資源利用率,改善用戶體驗(yàn)。本手冊(cè)將涵蓋Linux系統(tǒng)調(diào)優(yōu)的關(guān)鍵方面,包括內(nèi)核參數(shù)優(yōu)化、網(wǎng)絡(luò)配置、磁盤(pán)I/O優(yōu)化、內(nèi)存管理等。
(一)調(diào)優(yōu)目的與原則
1.提高系統(tǒng)性能:通過(guò)調(diào)整內(nèi)核參數(shù)和資源分配,減少延遲,提升響應(yīng)速度。
2.增強(qiáng)系統(tǒng)穩(wěn)定性:優(yōu)化內(nèi)存、CPU和磁盤(pán)使用,防止資源耗盡導(dǎo)致崩潰。
3.節(jié)省資源:合理分配系統(tǒng)資源,避免浪費(fèi),延長(zhǎng)硬件壽命。
調(diào)優(yōu)原則:
(1)先測(cè)試后應(yīng)用:在測(cè)試環(huán)境中驗(yàn)證調(diào)優(yōu)效果,避免生產(chǎn)環(huán)境風(fēng)險(xiǎn)。
(2)分階段實(shí)施:逐步調(diào)整參數(shù),每次變更后觀察系統(tǒng)表現(xiàn)。
(3)文檔記錄:詳細(xì)記錄調(diào)優(yōu)步驟和參數(shù),便于回溯和問(wèn)題排查。
(二)調(diào)優(yōu)工具與準(zhǔn)備
1.工具:
(1)`sysctl`:用于動(dòng)態(tài)修改內(nèi)核參數(shù)。
(2)`nmon`/`htop`:系統(tǒng)性能監(jiān)控工具。
(3)`iotop`:磁盤(pán)I/O監(jiān)控工具。
2.準(zhǔn)備:
(1)備份配置文件:如`/etc/sysctl.conf`、`/etc/fstab`。
(2)收集基線數(shù)據(jù):記錄調(diào)優(yōu)前的性能指標(biāo)(如CPU使用率、內(nèi)存占用)。
二、內(nèi)核參數(shù)優(yōu)化
內(nèi)核參數(shù)是影響系統(tǒng)性能的關(guān)鍵因素,通過(guò)`sysctl`工具可以動(dòng)態(tài)調(diào)整。
(一)網(wǎng)絡(luò)參數(shù)優(yōu)化
1.增加文件描述符限制:
```bash
sysctl-wnet.ipv4.tcp_max_syn_backlog=65535
sysctl-wnet.core.somaxconn=65535
```
說(shuō)明:提高TCP連接隊(duì)列長(zhǎng)度,適用于高并發(fā)場(chǎng)景。
2.啟用TCP快速打開(kāi):
```bash
sysctl-wnet.ipv4.tcp_fastopen=3
```
說(shuō)明:加速TCP連接建立過(guò)程。
(二)內(nèi)存管理優(yōu)化
1.調(diào)整Swap使用策略:
```bash
sysctl-wvm.swappiness=10
```
說(shuō)明:降低系統(tǒng)使用Swap的傾向,優(yōu)先保留內(nèi)存。
2.增加文件句柄限制:
```bash
sysctl-wfs.file-max=100000
```
說(shuō)明:提升并發(fā)文件操作能力。
(三)CPU與進(jìn)程管理
1.調(diào)整OOM(OutofMemory)策略:
```bash
sysctl-wvm.oom_kill_disable=1
```
說(shuō)明:防止系統(tǒng)因OOM殺死關(guān)鍵進(jìn)程。
2.限制進(jìn)程數(shù):
```bash
sysctl-wkernel.pid_max=65535
```
說(shuō)明:適用于高并發(fā)服務(wù)器。
三、網(wǎng)絡(luò)配置調(diào)優(yōu)
網(wǎng)絡(luò)性能直接影響系統(tǒng)響應(yīng)速度,以下為常見(jiàn)優(yōu)化方法。
(一)TCP/IP堆棧優(yōu)化
1.調(diào)整TCP窗口大?。?/p>
```bash
sysctl-wnet.ipv4.tcp_rmem="40968738016777216"
sysctl-wnet.ipv4.tcp_wmem="40966553616777216"
```
說(shuō)明:優(yōu)化TCP發(fā)送和接收緩沖區(qū)。
2.啟用TCP重傳緩存:
```bash
sysctl-wnet.ipv4.tcp_retries2=6
```
說(shuō)明:減少無(wú)效連接的重傳次數(shù)。
(二)防火墻與NAT優(yōu)化
1.調(diào)整iptables連接跟蹤表大?。?/p>
```bash
iptables-AINPUT-mstate--stateRELATED,ESTABLISHED-jACCEPT
```
說(shuō)明:減少連接跟蹤沖突。
2.啟用IP轉(zhuǎn)發(fā):
```bash
sysctl-wnet.ipv4.ip_forward=1
```
說(shuō)明:支持NAT路由功能。
四、磁盤(pán)I/O優(yōu)化
磁盤(pán)性能是系統(tǒng)瓶頸的常見(jiàn)來(lái)源,以下為優(yōu)化方法。
(一)文件系統(tǒng)掛載選項(xiàng)
1.使用`noatime`減少磁盤(pán)訪問(wèn):
```bash
mount-oremount,noatime/data
```
說(shuō)明:避免文件系統(tǒng)頻繁檢查訪問(wèn)時(shí)間。
2.啟用磁盤(pán)緩存:
```bash
mount-osync/boot
```
說(shuō)明:確保關(guān)鍵分區(qū)同步寫(xiě)入。
(二)I/O調(diào)度器調(diào)整
1.選擇合適的調(diào)度器:
```bash
echo"deadline">/sys/block/sda/queue/scheduler
```
說(shuō)明:`deadline`適合混合負(fù)載。
2.調(diào)整隊(duì)列深度:
```bash
echo256>/sys/block/sda/queue/nr_requests
```
說(shuō)明:增加隊(duì)列長(zhǎng)度提升吞吐量。
(三)SSD專(zhuān)項(xiàng)優(yōu)化
1.禁用寫(xiě)入時(shí)壓縮:
```bash
hdparm-W0/dev/sda
```
說(shuō)明:提升SSD寫(xiě)入速度。
2.啟用TRIM支持:
```bash
echo1>/sys/block/sda/queue/rotational
```
說(shuō)明:延長(zhǎng)SSD壽命。
五、內(nèi)存管理調(diào)優(yōu)
內(nèi)存不足會(huì)導(dǎo)致系統(tǒng)卡頓,以下為優(yōu)化策略。
(一)Swap使用策略
1.限制Swap使用比例:
```bash
sysctl-wvm.swappiness=30
```
說(shuō)明:優(yōu)先保留內(nèi)存,但允許部分Swap。
2.設(shè)置Swap文件大小:
```bash
fallocate-l4G/swapfile
mkswap/swapfile
swapon/swapfile
```
說(shuō)明:創(chuàng)建4GBSwap空間。
(二)內(nèi)存緩存優(yōu)化
1.調(diào)整PageCache大?。?/p>
```bash
sysctl-wvm.dirty_ratio=10
```
說(shuō)明:限制臟頁(yè)比例,避免OOM。
2.快速回收過(guò)期緩存:
```bash
sysctl-wvm.dirty_background_ratio=5
```
說(shuō)明:降低臟頁(yè)對(duì)性能影響。
六、總結(jié)
Linux系統(tǒng)調(diào)優(yōu)是一個(gè)持續(xù)優(yōu)化的過(guò)程,需結(jié)合實(shí)際場(chǎng)景逐步調(diào)整。關(guān)鍵點(diǎn)包括:
1.監(jiān)控基線數(shù)據(jù),量化調(diào)優(yōu)效果。
2.遵循最小變更原則,避免過(guò)度調(diào)優(yōu)。
3.定期復(fù)查配置,適應(yīng)負(fù)載變化。
七、服務(wù)與進(jìn)程優(yōu)化
服務(wù)與進(jìn)程是系統(tǒng)資源的主要消耗者,合理的配置和管理可以顯著提升系統(tǒng)性能和穩(wěn)定性。本部分將介紹如何優(yōu)化系統(tǒng)服務(wù)、管理進(jìn)程優(yōu)先級(jí)以及減少不必要的后臺(tái)服務(wù)。
(一)服務(wù)管理優(yōu)化
1.禁用
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年劇本殺運(yùn)營(yíng)公司員工服務(wù)禮儀規(guī)范制度
- 2026年劇本殺運(yùn)營(yíng)公司劇本線索卡制作與保管管理制度
- 中職電子商務(wù)專(zhuān)業(yè)跨境電商運(yùn)營(yíng)實(shí)務(wù)的教學(xué)課題報(bào)告教學(xué)研究課題報(bào)告
- 2026年生物科技基因編輯倫理報(bào)告及未來(lái)五至十年政策分析報(bào)告
- 2025年智慧城市交通信號(hào)優(yōu)化與自動(dòng)駕駛行業(yè)創(chuàng)新報(bào)告
- 2025年無(wú)人駕駛汽車(chē)傳感器技術(shù)發(fā)展與安全標(biāo)準(zhǔn)創(chuàng)新報(bào)告
- 倉(cāng)庫(kù)退料流程制度
- 乙肝上墻制度
- 中控室一套制度
- 不動(dòng)產(chǎn)審核制度
- 機(jī)關(guān)辦公樓網(wǎng)絡(luò)設(shè)備升級(jí)改造方案
- 2026年中考?xì)v史一輪復(fù)習(xí):七八九年級(jí)必背考點(diǎn)知識(shí)提綱填空版
- 天然氣供氣工程安全交底
- 《工業(yè)機(jī)器人系統(tǒng)操作員三級(jí)(高級(jí))理論知識(shí)考核要素細(xì)目表》
- 航天器多功能散熱結(jié)構(gòu)設(shè)計(jì)-洞察及研究
- 政治●天津卷丨2024年天津市普通高中學(xué)業(yè)水平選擇性考試政治試卷及答案
- 福州戶外顯示屏管理制度
- 檢察案卡填錄規(guī)范課件
- 2025江漢藝術(shù)職業(yè)學(xué)院輔導(dǎo)員考試題庫(kù)
- 醫(yī)院內(nèi)控制度
- 非煤地下礦山機(jī)電知識(shí)
評(píng)論
0/150
提交評(píng)論