Freebsd

如何判斷 FreeBSD 主機是否需要重新啟動才能啟動新核心?

  • December 8, 2016

“uname”會告訴我正在執行的核心的版本。我如何知道這是否與已安裝的核心不同(即,將在下次重新啟動時載入的核心)?

理想情況下,我想編寫一個可以輸出“需要重新啟動”或“執行和安裝的核心匹配”的腳本。

使用freebsd-version -k!從它的手冊

-k 列印已安裝核心的版本和更新檔級別。與 uname(1) 不同,如果安裝了新核心但係統尚未重新啟動,freebsd-version 將列印新核心的版本和更新檔級別。

您應該比較 and 的輸出,freebsd-version -k如果uname -r不同,您應該比較reboot

另一種選擇是使用strings(想法取自/bin/freebsd-version):

strings /boot/kernel/kernel | sed -n "s,^@(#)FreeBSD \([^ ]*\).*,\1,p"

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