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

如何解決Linux中CPU使用率高的問題?

譯文
系統(tǒng) Linux
電腦死機了?還是開始聽到電腦發(fā)出很響的CPU風扇噪音?Linux中CPU使用率過高的原因很多,但最常見的原因是運行異常的應(yīng)用程序。本文介紹了如何在Linux中解決CPU使用率過高的問題。

【51CTO.com快譯】電腦死機了?還是開始聽到電腦發(fā)出很響的CPU風扇噪音?Linux中CPU使用率過高的原因很多,但最常見的原因是運行異常的應(yīng)用程序。本文介紹了如何在Linux中解決CPU使用率過高的問題。

找出罪魁禍首

運行異常的應(yīng)用程序連速度最快的處理器都“俯首稱臣”??梢允褂肧ystem Monitor應(yīng)用程序或終端中的top,找出有問題的那個應(yīng)用程序。

打開終端,鍵入top,然后按回車鍵。

圖1

默認情況下,所有進程都按照CPU使用率來排序,最耗CPU的進程位于頂部。如果某個應(yīng)用程序始終位于前五名,CPU使用率明顯高于其余應(yīng)用程序,那它就是罪魁禍首。

終止或殺死應(yīng)用程序

top包括支持renice和kill的功能,那樣您可以使用這些工具來改變?nèi)魏芜M程的優(yōu)先級或強制停止它。

應(yīng)用程序的nice優(yōu)先級是指與其他運行中的進程相比,允許它使用的CPU資源數(shù)量。nice接受的值在+19到-20之間。數(shù)值越高,優(yōu)先級越低。

在top中,按r并輸入有問題的那個應(yīng)用程序的PID。試著改成“+5”值,如果不管用,重試“+10”、“+15”,最后是最低優(yōu)先級“+19”。

圖2

如果該應(yīng)用程序沒有響應(yīng),應(yīng)立即終止它。在top中按k,輸入PID,然后按回車鍵,該應(yīng)用程序?qū)⑾А?/p>

更新一切

如果您每次運行應(yīng)用程序時問題依然存在,更新該應(yīng)用程序可能會解決問題。

為此,在終端中輸入:

  1. sudo apt update && sudo apt -y upgrade 

圖3

之后,試著再運行有問題的那個應(yīng)用程序。

刪除并重新安裝應(yīng)用程序

如果問題沒有解決,有可能是由于程序配置中的錯誤參數(shù)。將其重置為原始狀態(tài)可能會有所幫助。

先備份配置,以防這可能不是問題的根源,到時候便于恢復。然后,清除有問題的那個應(yīng)用程序:

  1. sudo apt purge APP_NAME 

圖4

重新安裝應(yīng)用程序:

  1. sudo apt update 
  2. sudo apt install APP_NAME 

圖5

這會將應(yīng)用程序重置為原始狀態(tài)。

回到以前的版本

如果升級應(yīng)用程序解決不了問題,可以改而回到以前的版本。可以試著降級并使用舊版本,至少直到開發(fā)人員修復了應(yīng)用程序中的錯誤。

要降級應(yīng)用程序,先通過運行終端并執(zhí)行以下命令來查看可用版本:

  1. sudo apt policy APP_NAME 

目前安裝的版本旁邊會有三個星號。注意其他可用版本。

降級之前,建議您清除現(xiàn)有版本。這將清除任何與配置有關(guān)的問題。

安裝舊版本,方法如下:

  1. sudo apt install APP_NAME=VERSION 

圖6

使用替代應(yīng)用程序

Linux的優(yōu)點是,有許多應(yīng)用程序可執(zhí)行同樣的操作。因此,如果一個應(yīng)用程序?qū)е翪PU使用率過高,您可以換成替代應(yīng)用程序。

修復導致CPU使用率過高的核心應(yīng)用程序

如果大量耗用CPU資源的是核心應(yīng)用程序(比如systemd或Xorg),會發(fā)生什么?

若是systemd,試著禁用電腦上非必需的功能和輔助設(shè)備,比如游戲手柄和打印機。

如果設(shè)備是游戲手柄、鼠標或鍵盤,您又在運行Ubuntu或兼容的發(fā)行版,請在終端中鍵入xinput,查看所有已連接的設(shè)備。想禁用其中一個設(shè)備,請使用:

  1. xinput --disable DEVICE_ID 

圖7

想重新啟用設(shè)備,請在上述命令中將disable換成enable。

至于其他設(shè)備,解決辦法稍微復雜一點。首先,您得在終端中輸入lsmod并按回車鍵,查看Linux內(nèi)核作為模塊加載的所有其他驅(qū)動程序。找到有問題的設(shè)備對應(yīng)的驅(qū)動程序,并記下名稱。然后,輸入以下內(nèi)容:

  1. sudo nano /etc/modprobe.d/blacklist.conf 

您剛打開的文檔是啟動過程中不應(yīng)加載的模塊的黑名單。它可能已經(jīng)填充了一些條目。移至文件末尾,遵循同樣的語法,將模塊添加到該列表中。您的條目應(yīng)是這樣:

  1. blacklist MODULE_NAME 

保存文件,重新啟動,但愿現(xiàn)在一切正常。

若是Xorg,試著禁用Window Manager的合成器。雖然合成器將與CPU有關(guān)的任務(wù)卸載到GPU,但并非總是如此。有時,通過啟用合成支持,您還可以實現(xiàn)許多效果。

有時,GPU的驅(qū)動程序也會導致CPU使用率過高。Xorg與英偉達或AMD驅(qū)動程序的特定版本并不是很兼容。解決辦法是升級或降級到不同的版本。另外,可以試用GPU驅(qū)動程序的開源版本。不過,那些版本沒有同樣的功能集,可能缺少一些功能。

換掉內(nèi)核

Linux內(nèi)核很少是CPU使用率過高的原因。不過,如果您到了這一步卻仍未找到解決辦法,不妨試一試。

如官網(wǎng)上所述,要在Ubuntu中安裝流行的Liquorix內(nèi)核,訪問終端并輸入:

  1. sudo add-apt-repository ppa:damentz/liquorix && sudo apt-get update 

圖8

這會將存儲庫添加到Ubuntu的源代碼中。然后,要將內(nèi)核本身加載上來,請使用:

  1. sudo apt-get install linux-image-liquorix-amd64 linux-headers-liquorix-amd64 

重新啟動以啟用新內(nèi)核,但愿CPU使用率會回到正常水平。

但愿其中一種解決辦法對您有用。如果沒用,您也可以試著用taskset為應(yīng)用程序手動分配CPU核心

(https://www.maketecheasier.com/assign-cpu-cores-with-taskset-linux/)。最后,也許是時候從頭開始重新安裝操作系統(tǒng)或改用不同的發(fā)行版本了

(https://www.maketecheasier.com/best-linux-distros/)。

原文標題:How to Fix High CPU Usage in Linux,作者:Odysseas Kourafalos

【51CTO譯稿,合作站點轉(zhuǎn)載請注明原文譯者和出處為51CTO.com】

責任編輯:趙寧寧 來源: 51CTO
相關(guān)推薦

2019-01-15 15:04:54

CPU電腦使用率

2021-11-11 16:46:02

CPU使用率 .NET

2021-08-10 11:45:57

topCPULinux

2012-07-02 16:38:22

Linux服務(wù)器閏秒

2012-07-03 09:57:11

閏秒Linux 服務(wù)器

2021-05-31 15:53:57

CPU Top命令

2022-07-23 21:31:24

KubernetesLinux開源

2019-09-24 14:52:35

CPU負載Linux

2009-11-16 17:03:20

Oracle優(yōu)化CPU

2024-04-11 13:27:19

Linuxtop命令

2011-03-23 14:42:47

CPU過度消耗

2009-12-15 15:12:05

Linux限制進程cp

2023-03-06 08:41:32

CPU使用率排查

2019-07-31 07:26:16

Linux服務(wù)器CPU

2022-04-06 06:35:58

進程命令CPU

2017-05-03 11:10:14

Linux進程監(jiān)控cpustat

2017-03-23 19:27:55

LinuxCPUCPU利用率

2009-12-22 09:23:59

Linux Sysst

2014-12-01 13:44:03

cgroupscpulimitlinux

2010-04-27 10:32:54

Oracle優(yōu)化CPU
點贊
收藏

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