溫馨提示×

怎樣優化centos性能通過清理

小樊
43
2025-09-28 15:07:48
欄目: 智能運維

一、清理系統緩存(快速釋放內存)
系統緩存(頁面緩存、目錄項緩存、inode緩存)會占用內存,但Linux會自動管理。若需手動釋放(如內存緊張時),可通過以下命令:

  • 同步數據到磁盤(避免數據丟失):sync
  • 清理所有緩存(頁面+目錄項+inode):echo 3 > /proc/sys/vm/drop_caches
  • 僅清理頁面緩存(不影響正在運行的程序):echo 1 > /proc/sys/vm/drop_caches
  • 清理目錄項和inode緩存(加速目錄查找):echo 2 > /proc/sys/vm/drop_caches
    注:這些操作需root權限,清理后系統會重新構建緩存,短暫影響性能但能釋放內存。

二、清理YUM/DNF緩存(釋放磁盤空間)
YUM(CentOS 7及以下)/DNF(CentOS 8及以上)會緩存下載的軟件包(位于/var/cache/yum/var/cache/dnf),占用大量磁盤空間。清理命令:

  • YUM緩存sudo yum clean all
  • DNF緩存sudo dnf clean all
  • 手動刪除緩存目錄(徹底清理):rm -rf /var/cache/yum/*(YUM)或rm -rf /var/cache/dnf/*(DNF)。

三、清理臨時文件(避免磁盤空間浪費)
臨時文件(位于/tmp、/var/tmp)通常不再需要,長期積累會占用磁盤空間甚至導致磁盤滿。清理方法:

  • 手動刪除(立即生效):sudo rm -rf /tmp/*、sudo rm -rf /var/tmp/*(注意:避免刪除正在使用的文件)。
  • 定時任務(自動清理):通過crontab -e添加0 3 * * * rm -rf /tmp/*(每天凌晨3點清理/tmp),同理可設置/var/tmp。

四、清理舊內核(釋放/boot分區空間)
舊內核不會自動刪除,會導致/boot分區空間不足(無法升級內核或系統)。清理命令:

  • 查看已安裝內核rpm -q kernel
  • 刪除舊內核(保留最新的2個):package-cleanup --oldkernels --count=2(需安裝yum-utilssudo yum install yum-utils)。

五、清理孤立包(無用的依賴)
安裝軟件時產生的孤立依賴(不再被任何軟件包需要)會占用空間。清理命令:

  • YUMsudo yum autoremove
  • DNFsudo dnf autoremove
    這些命令會自動刪除無用的依賴包,減少磁盤占用。

六、清理日志文件(避免日志膨脹)
日志文件(位于/var/log)會隨時間增長占用大量空間,尤其是messages、access.log等。清理方法:

  • 截斷大日志(清空內容但保留文件):find /var/log -type f -name "*.log" -size +50M -mtime +7 -exec truncate -s 0 {} \;(清空大于50M且7天未修改的日志)。
  • 刪除舊日志(徹底刪除):find /var/log -type f -name "*.log" -mtime +30 -exec rm -f {} \;(刪除30天以上的日志)。
  • 設置日志輪轉(自動管理日志大小和保留時間):編輯/etc/logrotate.conf,調整rotate(保留份數)、compress(壓縮舊日志)、maxage(最大保留天數)等參數,或手動觸發輪轉:sudo logrotate -f /etc/logrotate.conf。

七、關閉不必要的服務(減少資源占用)
不必要的服務(如firewalld、NetworkManager)會在后臺運行,消耗CPU、內存和磁盤I/O。關閉命令:

  • 停止服務sudo systemctl stop service_name(如sudo systemctl stop firewalld)。
  • 禁用服務(開機不啟動):sudo systemctl disable service_name。
  • 查看運行中的服務systemctl list-unit-files --type=service(篩選出不需要服務的名稱)。

八、調整內核參數(優化系統性能)
通過修改/etc/sysctl.conf文件調整內核參數,提升系統性能:

  • 啟用TCP端口復用(減少TIME_WAIT狀態連接):net.ipv4.tcp_tw_reuse = 1
  • 縮短TIME_WAIT超時時間(快速釋放端口):net.ipv4.tcp_fin_timeout = 30
  • 增加本地端口范圍(支持更多并發連接):net.ipv4.ip_local_port_range = "1024 65535"
  • 調整TCP最大半連接隊列(應對SYN Flood攻擊):net.ipv4.tcp_max_syn_backlog = 8192
  • 使配置生效sudo sysctl -p(加載/etc/sysctl.conf中的參數)。

九、調整文件系統掛載選項(減少磁盤I/O)
通過修改/etc/fstab文件,為文件系統添加noatime(不記錄文件訪問時間)和nodiratime(不記錄目錄訪問時間)選項,減少磁盤寫操作:

  • 編輯/etc/fstab:找到根分區(如/dev/sda1),修改掛載選項為defaults,noatime,nodiratime。
  • 重新掛載文件系統sudo mount -a(使修改生效)。

十、調整Swappiness(優化內存與Swap使用)
Swappiness(默認60)控制系統使用Swap分區的傾向,值越高越易使用Swap(導致性能下降)。降低Swappiness(如10)可減少Swap使用:

  • 臨時調整sudo sysctl vm.swappiness=10
  • 永久生效:編輯/etc/sysctl.conf,添加vm.swappiness=10,然后執行sudo sysctl -p。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女