Linux

需要重啟掛在 RHEL7

  • December 1, 2020

在 RHEL7 上,執行命令(作為 sudo)needs-restarting會掛起,needs-restarting -s而 whileneeds-restarting -r會在 2 秒內返回。“掛起”是指它需要很長時間,最終我的 SSH 會話超時。直到最近,這一切都很好。我能做些什麼來調查這個問題(除非“重啟”會修復“呃”)?

相關手冊頁:https ://man7.org/linux/man-pages/man1/needs-restarting.1.html

請注意,我重新啟動了伺服器,然後needs-restarting在幾秒鐘內完成。但這顯然並不理想。

needs-restarting --reboothint檢查Red Hat 決定需要重新啟動才能生效的少數軟體包的安裝日期。核心和 libc,還有 TLS 庫和 systemd。與系統啟動時間進行比較,很容易。

needs-restarting沒有重啟提示選項是一個更密集的查詢。在每個正在執行的程序的 smap 中搜尋文件描述符。在 rpmdb 中搜尋擁有的軟體包並檢查安裝時間與程序開始時間。如果--services是,則在程序中搜尋看起來像 systemd 服務的 cgroup。如果您有大量程序、打開的文件或記憶體,這會很慢。或者,如果 rpmdb 儲存速度較慢。

一個簡單的解決方案是在更新任何軟體包時重新啟動。證明系統可以關閉並在更改後恢復是有用的。

有選擇地重新啟動服務將減少重新啟動。needs-restarting但是,如果陷入困境,您如何找到這些?上次沒有安裝核心的更新周期是什麼時候?

引用自:https://serverfault.com/questions/1044448