如何提高 OpenRC 系統的啟動時間?
我的帶有OpenRC 初始化的Gentoo系統需要很長時間才能啟動,大約 24 秒(從GRUB到GDM測量)。我想知道是否有任何推薦的方法來改善這個時間。但是網際網路上關於這個話題的內容並不多,我發現了什麼。
我有英特爾酷睿 i5-6400 和三星 SSD 970 EVO Plus 500GB。
每個人都喜歡快速啟動系統,尤其是在日常使用的台式電腦上。24 秒是一個相當慢的啟動時間,我能夠將其減少到9 秒。
我將向您展示一些技巧,而無需觸及您的核心。
/etc/rc.conf
讓我們從 OpenRC 配置文件開始。有一個選項叫做
rc_parallel
. 預設情況下,服務是一個一個啟動的,當一些服務需要更多時間時,它會延遲其他服務。設置rc_parallel="YES"
允許 RC 系統嘗試並行啟動服務以稍微提高速度。就我而言,它是-5秒。A 還必須設置
rc_send_sighup="YES"
,rc_timeout_stopsec="10"
,rc_send_sigkill="YES"
, 因為 xdm 服務不想在關閉系統時停止。rc-服務,rc-更新
另一件重要的事情是要知道,哪些服務實際上正在啟動。這就是您在啟動期間看到的輸出。如果要記錄此輸出,請
rc_logger="YES"
在/etc/rc.conf
文件中設置。您可以在此處找到確切的時間、警告消息或錯誤。服務分為所謂的執行級別,這意味著這些服務啟動的時間段。系統啟動涉及兩個執行級別。
boot
和default
。您可以使用以下命令列出所有服務及其執行級別:
rc-update show
。或者您可以列出所有正在執行和停止的服務:
rc-status --servicelist
就我而言,我發現了一些可以安全禁用的不必要服務。例如
bluetooth
,netmount
或net.enp0s31f6
服務來設置我的網路介面。即使我使用NetworkManager
服務,它也已啟用。我不需要這些服務,並且通過禁用它們又減少了 10 秒。您可以使用以下命令禁用特定執行級別的服務:
rc-update del <service> <runlevel>
。在禁用它之前,請務必**檢查特定服務的作用。**你最終可能會遇到一個損壞的系統。
我希望這可以幫助某人並節省我不得不花費的一點時間。