修復 Ubuntu GNOME 中 tracker-miner-3 導致的 CPU 使用率過高問題

快速解決方法:如果tracker-miner-fs-3您新增或變更大量檔案後,Tracker 進程會持續佔用 CPU 資源,請等待索引完成並確認其狀態後再進行操作。如果檔案未變更時該進程仍然繁忙,請縮小 GNOME 搜尋範圍,更新 Ubuntu,然後再重建 Tracker 索引。重建索引不會刪除您的文檔,但會觸發一次新的掃描,並可能暫時增加 CPU 和磁碟使用率。

本指南適用於實際運行 Tracker 3 的 Ubuntu GNOME 系統。 Ubuntu 24.04 LTS 的軟體包中包含 Tracker 3 工具;較新的基於 GNOME 的版本可能會使用相關的 LocalSearch 服務和不同的指令名稱。請先確認您的電腦上存在哪些進程和命令。不同版本的說明和軟體包名稱可能有所不同。

1. 確認 Tracker Miner 是正在使用 CPU 的進程

開啟系統監視器,選擇「進程」,然後點選 CPU 列進行排序。尋找名為“miner tracker-miner-fs-3”或類似“description”的進程tracker-extract-3。 miner 會偵測檔案變更並建立可搜尋的索引;description 會讀取支援的檔案元資料。複製照片存檔、同步雲端資料夾或安裝升級後出現短暫的 CPU 使用率峰值是正常現象。

系統監視器進程列表,其中已在按 CPU 排序的進程表中選取 tracker-miner-fs-3。
系統監視器可以顯示檔案系統挖礦程式是否在 CPU 使用率清單中名列前茅。此處顯示的範例值僅供參考;請檢查您自己的進程清單。

若要查看終端視圖,請執行:

ps -eo pid,pcpu,comm,args --sort=-pcpu | head

在 Ubuntu 24.04 上,使用下列指令查詢 Tracker 的狀態:

tracker3 daemon
tracker3 status

守護程式指令會報告礦工狀態,而狀態指令可以顯示索引進度和已記錄的索引失敗情況。具體輸出因軟體包版本而異。如果缺少這些命令,請檢查當前活躍的世代,而不是隨意安裝軟體包:

command -v tracker3
command -v localsearch

GNOME 目前的 LocalSearch 文件描述了localsearch命令和localsearch-3服務。請使用發行版自備的指令名稱;不要同時執行兩個工具系列,也不要手動啟動第二個挖礦程式。 Ubuntu的 Tracker 守護程式手冊和Tracker 狀態手冊記錄了 Ubuntu 24.04 的指令。 GNOME LocalSearch 概述解釋了較新的服務系列。

2. 判斷 CPU 活動是暫時性的還是阻塞性的

索引通常在檔案系統活動激增後進行。首次登入、恢復備份、下載大量檔案或重新連接外部磁碟機後,請稍等片刻。如果條件允許,請保持筆記型電腦連接電源,並避免重複終止程序:挖礦程序可能會重新啟動並重複工作。檔案活動穩定後,請檢查進程狀態是否有變化以及 CPU 使用率是否下降。

如果機器處於空閒狀態且沒有檔案更改,而同一進程卻長時間處於高 CPU 使用率狀態,則更值得懷疑。請檢查是否有重複接收新檔案的目錄、雲端同步循環、掛載的驅動器斷開連接又重新連接,或者媒體檔案的元資料有問題。每次登入後都出現相同問題也可能是軟體包過時或索引損壞所致。

終端機顯示 tracker3 守護程式狀態指令以及範例檔案挖礦程式空閒狀態
Tracker 狀態視圖有助於區分活躍的索引流程和空閒的挖礦程式;不同 Ubuntu 版本之間的措詞可能有所不同。

3. 安裝可用的Ubuntu更新並乾淨地重新啟動。

在變更索引設定之前,請先安裝 Ubuntu 版本的更新。更新可能包含 Tracker、GNOME 及其庫中的修復程式。在終端機中運作:

sudo apt update
sudo apt upgrade

接受軟體包清單前請仔細檢查,然後重新啟動電腦或登出並重新登入。桌面穩定後,請再次檢查 CPU 使用率。避免複製清除 Tracker 軟體包的命令:GNOME 搜尋元件可能依賴這些軟體包,移除索引器可能會停用桌面搜尋功能,而不是修復底層循環問題。

4. 減少 GNOME 搜尋的位置

如果您不需要「活動」搜尋涵蓋所有標準資料夾,請排除包含大量且經常變更的集合的位置。例如,包含大量臨時存檔的「下載」目錄或用於建置輸出的資料夾。在 GNOME 中,開啟「活動」,輸入「搜尋」,開啟「設定」▸「搜尋」,然後選擇「搜尋位置」。僅關閉您不需要在搜尋中顯示的位置。具體面板可能因 GNOME 版本而略有不同。

GNOME 設定搜尋位置面板顯示具有單獨搜尋開關的標準資料夾
「搜尋位置」功能為「活動概覽」中的搜尋結果提供按位置進行控制。選單名稱和列出的資料夾因桌面版本而異。

GNOME 文件中將這些控制項描述為在「活動」概覽中選擇可搜尋的檔案系統位置。當搜尋範圍成為問題時,這些控制項非常有用,但它們並非適用於所有應用程式索引請求的通用開關。如果挖礦程序仍然繁忙,請確認活動索引程序的狀態和已安裝版本。除非您需要搜尋其內容,否則請避免新增整個已掛載的磁碟機或大型專案目錄。 GNOME幫助:設定檔系統位置搜尋描述了支援的設定路徑。

5. 僅當更簡單的修復方法無效時才重建索引。

如果系統處於閒置狀態但 CPU 使用率仍然很高,則索引可能會卡住或不一致。在安裝了 Tracker 3 的 Ubuntu 24.04 上,只需重置其檔案系統索引即可:

tracker3 reset --filesystem

請在繼續操作前閱讀所有確認提示。該命令會刪除 Tracker 儲存的檔案系統索引,而不是您的原始文件;Tracker 會在重新啟動時重新建立快取。由於它必須再次掃描符合條件的文件,CPU 和磁碟使用率可能會暫時升高。在重建完成之前,搜尋結果可能不完整。請避免手動刪除快取目錄,或使用從 Tracker 2 說明複製的全域重設選項,因為 Tracker 2 的指令語法不同。

使用 tracker3 reset --filesystem 指令在終端機執行後,會收到索引將會被重建的警告。
重置檔案系統索引是最後的手段,因為完全重新索引可能需要一些時間,並且會短暫增加資源使用量。請在繼續操作之前確認您已安裝版本中的相關說明。

Ubuntu 的Tracker 3 重置手冊指出,此操作會刪除檔案系統數據,並在重新啟動後重新建立挖礦程式的快取。此操作會更改索引,因此應謹慎使用。如果您的發行版使用本機搜索,請查閱其安裝手冊或GNOME 本機搜尋指令參考文檔,以了解相應的指令語法。

6. 驗證修復是否有效,並了解何時需要進一步調查。

索引完成後,再次依 CPU 使用率對系統監視器進行排序,並檢查挖礦程序的狀態。正常的挖礦狀態並非總是 CPU 使用率為零:索引程式可能會在檔案變更時短暫喚醒。有效的跡像是:機器空閒時 CPU 使用率持續下降,狀態不再重複顯示相同的未完成任務,並且 GNOME 搜尋仍然可以找到您選擇保留在可搜尋位置的檔案。

如果 CPU 使用率過高的問題再次出現,請記錄您的 Ubuntu 版本(設定 ▸ 關於)、進程名稱、峰值持續時間以及是否啟動了特定資料夾或同步應用程式。檢查狀態輸出是否有故障,並透過 Ubuntu 的錯誤回報系統或相關的 GNOME 專案提交可重複的問題。不要假設所有包含「tracker」的進程都是罪魁禍首:其他 Tracker 或本地搜尋元件可能正在進行一次性的提取操作。

應該先嘗試哪一種解決方法?

你所觀察到的下一步最佳措施
大型檔案複製後 CPU 使用率上升,然後呈下降趨勢等待索引完成並重新檢查狀態
重複下載或建置過程中的高使用報酬率減少不需要的可搜尋位置
儘管目前已更新,礦工在空閒時仍保持忙碌狀態。檢查狀態和故障,然後考慮重置檔案系統索引
此處顯示的命令未安裝確定 Ubuntu 版本並檢查 Tracker 版本是否為 3 或本地搜尋。

大多數情況下,最穩健的解決方法是讓正常的索引過程完成,或縮小不必要的搜尋範圍。只有當問題持續存在時才需要重置索引,並且要做好在索引重建期間磁碟和 CPU 活動暫時增加的心理準備。

留下評論

修復 Ubuntu GNOME 中 tracker-miner-3 導致的 CPU 使用率過高問題

修復 Ubuntu GNOME 中 tracker-miner-3 導致的 CPU 使用率過高問題

了解為什麼 tracker-miner-fs-3 在 Ubuntu GNOME 中會佔用大量 CPU 資源,如何檢查索引狀態、減少可搜尋位置以及安全地重建 Tracker 索引。

如何在啟用 BitLocker 的情況下雙啟動 Ubuntu 24.04 和 Windows 11

如何在啟用 BitLocker 的情況下雙啟動 Ubuntu 24.04 和 Windows 11

了解 Ubuntu 24.04 何時可以與 BitLocker 雙啟動、如何保護您的復原金鑰以及安全的相同磁碟機或不同磁碟機安裝路徑。

如何將 Pardus Linux 用戶端加入 Active Directory 網域

如何將 Pardus Linux 用戶端加入 Active Directory 網域

使用 Pardus Domain Joiner 將 Pardus Linux 加入 Active Directory。檢查 DNS 和時間,安裝 CLI,使用 SSSD 加入,並驗證網域登入存取權限。

如何設定 Pardus Image Creator 進行自訂作業系統部署

如何設定 Pardus Image Creator 進行自訂作業系統部署

了解 Pardus Image Writer 的功能、安裝方法以及如何安全地將經過驗證的自訂 ISO 映像部署到 USB 隨身碟。內容包括建置和測試指南。

修正 SLES 啟動時「載入核心模組失敗」的問題

修正 SLES 啟動時「載入核心模組失敗」的問題

透過尋找錯誤模組、修正啟動配置,並在需要時重建 initramfs,來診斷和修復 SLES 上的 systemd-modules-load.service 故障。

如何使用 OSTree 將 Debian 桌面遷移到 Immutable OS

如何使用 OSTree 將 Debian 桌面遷移到 Immutable OS

了解為什麼安裝軟體包就無法使 Debian 成為 OSTree 不可變系統,然後安全地遷移到 OSTree 桌面或規劃自訂 Debian 鏡像。

修復 Ubuntu 24.04 中 Wayland 下觸控板手勢無法運作的問題

修復 Ubuntu 24.04 中 Wayland 下觸控板手勢無法運作的問題

透過檢查 GNOME 設定、libinput 事件、更新和擴充功能來修復 Ubuntu 24.04 Wayland 上缺少的三指觸控板手勢。

How to Configure a PipeWire Audio Output Switching Script on Debian

How to Configure a PipeWire Audio Output Switching Script on Debian

Create a reliable PipeWire output toggle script on Debian with wpctl. Switch between speakers, Bluetooth, USB, or HDMI sinks without hard-coding IDs.

如何在 HamoniKR 作業系統上透過 CUPS 設定印表機

如何在 HamoniKR 作業系統上透過 CUPS 設定印表機

使用 CUPS 在 HamoniKR OS 上設定 USB 和網路印表機。新增佇列,選擇免驅動 IPP 或特定型號的驅動程序,設定預設值,並列印測試頁。

如何在 Ubuntu 上使用 Cgroups 限制進程的 CPU 和記憶體使用量

如何在 Ubuntu 上使用 Cgroups 限制進程的 CPU 和記憶體使用量

在 Ubuntu 上使用 systemd cgroups 來限制指令或服務的 CPU 時間和記憶體使用量。比較瞬態作用域、持久限制和關鍵權衡。