5 個重要的 systemd 調整,可顯著提高系統啟動速度

並非所有 Linux 用戶都沉迷於系統的啟動速度,但我個人喜歡快速、流暢的啟動。即使使用固態硬碟,瓶頸也可能悄悄出現,導致速度變慢。 Systemd 提供了各種工具,可協助您追蹤並解決這些延遲問題。只要稍加調整,我就能夠在不犧牲穩定性的情況下大幅縮短啟動時間。

5 個重要的 systemd 調整,可顯著提高系統啟動速度

這些改進的真正好處不僅僅是節省秒錶上的秒數。更快運行的系統反應速度更快,節省了您寶貴的等待時間。

識別起飛過程中的弱點

使用 systemd-analyze 追蹤啟動性能

在加快速度之前,您需要知道是什麼導致速度變慢。 systemd-analyze 核心和使用者空間初始化所需的時間,讓您大致了解啟動時間。結合 systemd-analyze blame 您將看到按啟動時間排序的服務明細。真正的罪魁禍首通常就在這裡,無論是配置錯誤的隱藏程序,還是您從未使用過的東西。

透過多次執行此分析,您將了解服務的一致性和異常值。某些服務可能會因設備偵測而出現間歇性峰值,而其他服務則始終保持較高的負載。專注於最嚴重的問題,可以讓您事半功倍。我通常會在進行更改之前保存輸出副本,以便客觀地衡量進度。

也值得使用 systemd-analyze critical-chain,它顯示了依賴項在啟動順序中的排列方式。妨礙其他重要任務的服務是重新排序或停用的主要物件。使用此工具,您可以擺脫猜測,做出明智的調整,從而真正減少啟動延遲。

減少後台運行的服務

停用您實際上不使用的服務。

確定了耗時的任務後,下一步就是減少不必要的任務。 許多 Linux 發行版允許 預設啟用的服務可能並非每個使用者都需要。例如,即使在沒有印表機或藍牙裝置的裝置上,印表機驅動程式或藍牙管理器也經常在背景運作。停用這些服務可以節省啟動過程中的寶貴時間。

管理這個問題最簡單的方法是使用指令 systemctl disable 後跟服務名稱。這樣可以防止它在啟動時運行,但允許你在需要時手動啟動它。對於你絕對確定永遠不會使用的服務,可以使用以下命令 systemctl mask 它甚至會更進一步,完全阻止這些程式。 systemd 運作的程式越少,您的機器就能越快達到可用狀態。

不要隨意禁用服務。務必仔細檢查它們的作用以及哪些其他服務可能依賴它們。在進行任何更改之前備份計算機絕對是一個好主意。

當然,這需要謹慎。停用一些重要功能可能會破壞您依賴的功能,因此我建議您一次更改一項,並在每次修改後進行測試。幾天后,您就可以創建一個更流暢、更快速的啟動配置文件,而不會破壞系統的穩定性。

利用 Systemd 中的平行性

優化依賴項,加快啟動速度

systemd 的手冊頁

systemd 相對於舊版設定係統的一大優點在於它能夠並行啟動服務。它無需等待每個程式載入完畢再啟動下一個,而是同時執行獨立的程式。這意味著您的 CPU 和磁碟空間能夠更有效率的利用,從而自然地加快運行速度。關鍵在於確保正確定義依賴關係,以免服務之間不必要地相互阻塞。

您可以使用命令檢查依賴關係 systemctl list-dependencies 或直接查看模組檔案。如果你發現某個服務正在等待一些你不需要的東西,你可以修改它的配置。新增如下指令 After= أ或者 Requires= 調整服務相對於其他服務的啟動時間。刪除不必要的依賴項可避免空閒等待,並更好地利用並行性。

另一個技巧是為某些服務啟用套接字啟動。這樣,systemd 僅在存取其套接字時啟動服務,而不是每次啟動時啟動它。這不僅可以縮短啟動時間,還可以減少後台系統資源的佔用。正確配置後,您的系統會感覺更快、更輕。

隱藏導致速度變慢的服務

確保不要重新啟用任何已隱藏的內容。

這 5 個 Linux 發行版非常適合恢復 PC

有時,僅僅禁用某個服務是不夠的,因為更新其他軟體包或依賴項可能會重新啟用它。隱藏是最有效的解決方案,因為它本質上將服務綁定到 /dev/null 這樣它們就不會意外啟動。這對於您知道並非設定必需的服務尤其有用。一個很好的例子就是與您選擇的網路管理器衝突的網路驅動程式。

若要隱藏服務,您可以使用命令 systemctl mask 後跟模組名稱。從現在起,即使其他進程嘗試執行該模組,systemd 也會拒絕。如果您隨時改變主意,只需使用以下命令即可取消隱藏 systemctl unmask. 讓您放心,不需要的服務不會再次出現在您的啟動順序中。

缺點是隱藏錯誤的服務可能會造成混亂,尤其是在其他服務間接依賴該服務的情況下。這就是為什麼我總是在隱藏之前仔細檢查依賴關係樹。但如果操作正確,隱藏可以確保您的系統始終保持最佳狀態,即使在更新後也是如此。

改進啟動桌面會話的方式

編輯顯示管理器並登入以提高速度

對於桌面使用者來說,啟動過程的最後階段通常是圖形會話。 GDM、LightDM 或 SDDM 等顯示器管理器可自行增加啟動時間。修改它們或切換到更輕量級的版本可以帶來顯著的差異。例如,LightDM 在中等硬體上通常比更重的版本更快。

另一件值得檢查的事情是,哪些應用程式會在會話設定中自動啟動。許多桌面環境預設運行小型輔助應用程式、更新程式或雲端同步用戶端。將這些應用程式精簡到您實際使用的範圍,不僅可以加快桌面啟動速度,還能減少登入後的混亂。這與禁用系統服務的原理相同,只不過是在使用者層級應用。

您也可以試驗系統在圖形介面和多用戶場景之間的切換。透過將某些服務延遲到桌面載入之後,您可以優先存取可用的會話。像這樣的小調整通常會累積起來,將緩慢的啟動體驗變得明顯更流暢。

為什麼 systemd 修改在日常使用上很有用

這些調整的真正好處不僅僅是節省幾秒鐘。快速啟動的系統感覺反應更快,等待時間更少。透過分析、停用、隱藏和微調服務,您可以根據自己的需求打造更流暢的體驗。如果出現問題,更改很容易恢復,但一旦設置,往往會持續生效。對我來說,這些小小的改進每天都在積累,最終的回報是 Linux 系統感覺速度達到了應有的水準。

評論被關閉。