如何配置Ubuntu無人值守升級? 手動操作實現(xiàn)Ubuntu自動升級技巧

Ubuntu 是廣泛應用于服務器、桌面和嵌入式設備的 Linux 發(fā)行版之一,提供了豐富的軟件包和工具庫,用戶可根據(jù)需求進行安裝和配置。然而,由于更新和軟件包眾多,要保持系統(tǒng)最新和安全,則具有一定的挑戰(zhàn)性,這時 Ubuntu 無人值守升級便可派上用場。
本文將為大家將介紹 Ubuntu 無人值守升級的作用、優(yōu)點和功能,以及如何通過命令行「終端」進行配置。
什么是 Ubuntu 無人值守升級
- 無人值守升級包是在 Ubuntu 系統(tǒng)上自動安裝安全和其他更新的工具。它在后臺靜默運行,定期檢查更新并自動下載和安裝,無需用戶干預。
- 無人值守升級通過確保系統(tǒng)與最新的更新和補丁保持同步,保證 Ubuntu 系統(tǒng)的安全性和穩(wěn)定性,是一個非常重要的自動化工具。
Ubuntu 無人值守升級的特點和功能
- 自動化更新:可以自動下載和安裝更新,節(jié)省用戶時間和精力。
- 提高安全性:確保 Ubuntu 系統(tǒng)與最新的安全更新和補丁保持同步,降低惡意軟件攻擊和系統(tǒng)漏洞的風險。
- 增強穩(wěn)定性:無人值守升級通過保持系統(tǒng)最新,確保系統(tǒng)的穩(wěn)定性和可靠性。
- 自定義設置:用戶可以根據(jù)自己的需要自定義設置,例如自動安裝哪些更新、忽略哪些更新以及何時安裝它們。
- 郵件通知:可以向用戶發(fā)送已安裝更新的電子郵件通知,提供系統(tǒng)更新的透明度和增強控制。
步驟 1:更新 Ubuntu
在安裝和設置無人值守升級之前,建議先更新 Ubuntu 系統(tǒng)以避免沖突。要更新 Ubuntu 系統(tǒng),請打開「終端」并運行以下命令:
sudo apt update && sudo apt upgrade
該命令會將所有已安裝的軟件包及其依賴關系更新到最新版本。根據(jù)系統(tǒng)可用的更新數(shù)量,可能需要一些時間。
步驟2:安裝 Ubuntu 無人值守升級包
1、要安裝無人值守升級包,請打開「終端」并運行以下命令:
sudo apt install unattended-upgrades
安裝 Ubuntu 無人值守升級包
默認情況下,Ubuntu 無人值守升級包應該已經(jīng)安裝。但是,如果已刪除該包,請使用上述命令重新安裝。
2、安裝或升級某些應用后可能需要重啟系統(tǒng),如果您希望在自動升級之后也自動重啟 Ubuntu 系統(tǒng),還需要安裝apt-config-auto-update
包。請使用以下命令進行安裝:
sudo apt install apt-config-auto-update
3、(可選)對于筆記本電腦用戶,建議安裝 powermgmt-base 軟件包以應用適用于電池的無人值守選項。要安裝此軟件包,請打開「終端」并運行以下命令:
sudo apt install powermgmt-base
安裝完該軟件包后,需要按需對其進行配置。例如,需要自定義自動安裝哪些更新、忽略哪些更新以及何時安裝它們。
無人值守升級包需要管理員權(quán)限才能運行。因此,在運行本文中提到的所有命令時,都需要使用 sudo 命令。
4、建議您驗證無人值守升級包是否正常工作。要執(zhí)行此操作,請打開「終端」并輸入以下命令:
sudo unattended-upgrades --dry-run --debug
熟悉 Ubuntu 無人值守升級的 systemctl 命令也非常重要,因為在進行配置更改或系統(tǒng)重啟后,可能需要檢查其狀態(tài)。要檢查無人值守升級的狀態(tài),請使用以下命令:
systemctl status unattended-upgrades
查看 unattended-upgrades 服務狀態(tài)
以下 systemctl 命令可以控制:啟動、停止、開機啟用、開機禁用或重新啟動無人值守升級服務:
- 啟動無人值守升級服務:
sudo systemctl start unattended-upgrades
- 停止無人值守升級服務:
sudo systemctl stop unattended-upgrades
- 在系統(tǒng)啟動時啟用無人值守升級服務:
sudo systemctl enabe unattended-upgrades
- 在系統(tǒng)啟動時禁用無人值守升級服務:
sudo systemctl disable unattended-upgrades
- 重啟無人值守升級服務:
sudo systemctl restart unattended-upgrades
步驟 3:配置 Ubuntu 無人值守升級
下面我們將介紹,如何使用「終端」命令對無人值守升級進行配置。這些設置是可選的,可以根據(jù)您的需求進行個性化定制。
我們將詳細解釋每項配置的目的和功能,以幫助您了解在 Ubuntu 系統(tǒng)上配置無人值守升級的過程。這能夠幫助您做出明智的決策。
在進入配置文件之前,先來看看無人值守升級包的所有 CLI 選項及其說明的摘要:
選項 | 描述 |
---|---|
-h, –help | 顯示幫助信息。 |
-d, –debug | 啟用調(diào)試消息。 |
–apt-debug | 使用 apt/libapt 打印詳細的調(diào)試消息。 |
-v, –verbose | 輸出詳細信息。 |
–dry-run | 模擬升級過程和下載但不安裝。 |
–download-only | 只下載升級包但不安裝。 |
–minimal-upgrade-steps | 以最少的步驟升級包。 |
–no-minimal-upgrade-steps | 一起升級所有軟件包,而不分成較小的集合。 |
這些選項可以在「終端」中運行unattended-upgrade
命令時使用,以控制自動升級過程的行為。例如:
--dry-run
選項可以用于在不實際對系統(tǒng)進行任何更改的情況下測試升級過程。--download-only
選項可用于下載升級包而不安裝它們。- 默認情況下,無人值守升級會使用
--minimal-upgrade-steps
選項,將軟件包分批次升級。 - 如果您需要將所有軟件包一起升級,可以使用
--no-minimal-upgrade-steps
選項。
在配置無人值守升級時,了解這些選項非常重要,以確保其行為符合您的偏好和要求。
編輯配置文件
編輯配置文件時,要使用具有 root 權(quán)限的文本編輯器,如 nano 或 vi。要用 vi 打開配置文件,請運行以下命令:
sudo vi /etc/apt/apt.conf.d/50unattended-upgrades
您可以修改配置文件列出的各種選項。要激活選項,請刪除文件中的注釋(以//
或#
開頭的行)。
編輯 unattended-upgrades 配置文件
Allowed Origins 允許的來源
該選項指定應從哪些來源安裝更新。默認情況下,僅允許安裝security
「安全」和updates
「更新」存儲庫。您可以取消注釋此選項,并添加所需的其他存儲庫到列表中,如下所示:
Unattended-Upgrade::Allowed-Origins { "${distro_id}:${distro_codename}"; "${distro_id}:${distro_codename}-security"; "${distro_id}:${distro_codename}-updates"; "${distro_id}:${distro_codename}-proposed"; "${distro_id}:${distro_codename}-backports"; };
Package Blacklist 軟件包黑名單
該選項允許指定應從自動更新中排除的軟件包。要排除軟件包,請取消注釋此選項,并按照下面的示例添加排除的軟件包:
Unattended-Upgrade::Package-Blacklist { "package-name-xx"; "package-name-xxx"; };
AutoFixInterruptedDpkg
此選項確定系統(tǒng)是否應自動修復中斷的dpkg
安裝。若要啟用自動修復,請按以下示例設置該值為true
:
Unattended-Upgrade::AutoFixInterruptedDpkg "true";
DevRelease “auto”
此選項指定是否自動升級到開發(fā)版本。默認情況下,該選項已禁用。若要啟用自動升級到開發(fā)版本,請將該選項的值設置為auto
,如下所示:
Unattended-Upgrade::DevRelease "auto";
MinimalSteps “true”
此選項指定升級時是否執(zhí)行最小步驟。默認情況下,此選項已啟用。要禁用最小步驟,請按下面的示例設置值為false
:
Unattended-Upgrade::MinimalSteps "false";
InstallOnShutdown “false”
此選項指定是否在關機時安裝更新。默認情況下,此選項已禁用。要啟用關機時安裝更新,請按照以下示例將值設置為true
:
Unattended-Upgrade::InstallOnShutdown "true";
此選項用于指定發(fā)送電子郵件通知的地址。默認情況下,不發(fā)送通知。要指定通知電子郵件地址,請按以下示例添加一個字符串值:
Unattended-Upgrade::Mail "example@mail.com";
MailReport “on-change”
此選項用于指定何時發(fā)送電子郵件通知。默認情況下,僅在有更改時發(fā)送通知。要每次發(fā)送通知,請按照下面的示例將值設置為on-start
:
Unattended-Upgrade::MailReport "on-start";
Remove-Unused-Kernel-Packages
此選項指定是否在升級后刪除未使用的內(nèi)核包。默認情況下,此選項已啟用。不刪除未使用的內(nèi)核包,請按照以下示例將值設置為false
:
Unattended-Upgrade::Remove-Unused-Kernel-Packages "false";
Remove-New-Unused-Dependencies
該設置控制在包升級后刪除 Ubuntu 系統(tǒng)不再需要的新依賴項。默認情況下,此設置已啟用,任何不再需要的新依賴項都將自動從系統(tǒng)中刪除。若要啟用此設置,請使用以下配置:
Unattended-Upgrade::Remove-New-Unused-Dependencies "true";
如果要保留這些新依賴項,可以將值更改為false
將該其禁用。但需要注意,這可能會導致未使用的依賴項在系統(tǒng)上積累,占用寶貴的磁盤空間。
Remove-Unused-Dependencies
此選項指定升級后是否刪除未使用的依賴項。默認情況下,該選項已禁用。要啟用刪除未使用的依賴項,請按照以下示例將值設置為true
:
Unattended-Upgrade::Remove-Unused-Dependencies "true";
Automatic-Reboot
此選項指定在升級后是否自動重啟 Ubuntu 系統(tǒng)。默認情況下,此選項已禁用。要啟用自動重啟,請按照下面的示例將值設置為true
:
Unattended-Upgrade::Automatic-Reboot "true";
Automatic-Reboot-WithUsers
此選項指定在有用戶登錄時是否自動重啟系統(tǒng)。默認情況下,此選項已啟用。若要禁用此選項,請按照以下示例將值設置為false
:
Unattended-Upgrade::Automatic-Reboot-WithUsers "false";
Automatic-Reboot-Time
此選項指定升級后系統(tǒng)自動重啟的時間。默認設置為02:00
。要更改重啟時間,請照以下示例修改該值:
Unattended-Upgrade::Automatic-Reboot-Time "03:00";
Acquire::http::Dl-Limit
此選項指定軟件包的最大下載速度,單位為每秒千字節(jié)。默認情況下,此選項已禁用。若要啟用下載速度限制,請按照以下示例設置所限制的速度值:
Acquire::http::Dl-Limit "100";
SyslogEnable
此選項指定是否將升級事件記錄到系統(tǒng)日志中。默認情況下,此選項已啟用。要禁用記錄,請按照以下示例將值設置為false
:
Unattended-Upgrade::SyslogEnable "false";
SyslogFacility
此選項用于指定升級事件應記錄到哪個設施。默認情況下,事件會記錄到daemon
設施。若要將事件記錄到其他設施,請按照以下示例修改值:
Unattended-Upgrade::SyslogFacility "local7";
OnlyOnACPower
此選項指定是否只有在系統(tǒng)連接到交流電源時才執(zhí)行升級。默認情況下,該選項被禁用。若要僅在使用交流電源時啟用升級,請按照以下示例將值設置為true
:
Unattended-Upgrade::OnlyOnACPower "true";
Skip-Updates-On-Metered-Connections
該選項指定當系統(tǒng)連接到付費連接時是否跳過更新。默認情況下,該選項已啟用。若要在付費連接時下載更新,請按照以下示例將值設置為false
:
Unattended-Upgrade::Skip-Updates-On-Metered-Connections "false";
Verbose
此選項指定是否輸出詳細的升級信息。默認情況下,該選項已禁用。若要啟用詳細輸出,請按以下示例將值設置為true
:
Unattended-Upgrade::Verbose "true";
Debug
該選項指定是否在升級過程中輸出調(diào)試信息。默認情況下,該選項已禁用。要啟用調(diào)試輸出,請按照以下示例將值設置為true
:
Unattended-Upgrade::Debug "true";
Allow-downgrade
該選項指定是否允許在升級過程中降級軟件包。默認情況下,該選項已禁用。要允許降級,請按照以下示例將值設置為true
:
Unattended-Upgrade::Allow-downgrade "true";
允許降級可能會導致系統(tǒng)不穩(wěn)定或存在安全漏洞。建議僅在必要時啟用此選項,并仔細考慮所涉及的風險。
測試和應用更改
在對配置文件進行任何更改后,務必運行以下命令以確保更改已生效:
sudo unattended-upgrades --dry-run --debug
該命令會模擬升級運行,并顯示配置文件導致的錯誤或警告。如果一切正常,就可以運行下面的命令來執(zhí)行實際的升級:
sudo unattended-upgrades
該命令將根據(jù)配置文件的設置自動檢查并安裝可用的升級包。
通過上面的介紹,您現(xiàn)在應該更好地了解了如何在 Ubuntu 系統(tǒng)上配置和修改 Unattended-Upgrades 無人值守升級包。
步驟 4:使用 Cron Job 定期執(zhí)行 Ubuntu 無人值守升級
要在您的 Ubuntu 系統(tǒng)上安排自動無人值守升級,可以使用 Cron Job。Cron Job 是 Linux 中的基于時間的任務調(diào)度程序,允許您在指定的時間或間隔自動運行命令或腳本。
要為無人值守升級創(chuàng)建 Cron Job,請按照以下步驟:
1、在「終端」中運行以下命令打開 crontab 配置文件:
sudo crontab -e
2、這將在 nano 或 vi 編輯器中打開 crontab 文件,將以下行添加到文件底部:
0 0 * * * /usr/bin/unattended-upgrade -d
使用 Cron Job 定期執(zhí)行 Ubuntu 無人值守升級
這行命令指定了unattended-upgrade
命令應在每天午夜運行(0 0 * * *
)。
步驟 5:查看 Ubuntu 無人值守升級日志
Unattended-Upgrades 軟件包默認將所有升級活動記錄到系統(tǒng)日志。日志可以在/var/log/syslog
文件和其他系統(tǒng)日志中找到。
要查看 Ubuntu 無人值守升級日志,請使用以下命令:
sudo grep unattended-upgrades /var/log/syslog
該命令會在 syslog 文件中搜索包含 unattended-upgrades 關鍵字條目,并在屏幕上輸出。您也可以使用以下命令顯示 syslog 文件中的最后 50 個條目:
sudo tail -n 50 /var/log/syslog | grep unattended-upgrades
除了上述命令之外,您還可以使用各種grep
選項根據(jù)特定標準過濾日志。例如,要按日期和時間過濾日志,可以使用以下命令:
sudo grep "unattended-upgrades.*YYYY-MM-DD" /var/log/syslog
將YYYY-MM-DD
替換為所需的日期,格式為 年-月-日
。該命令將顯示包含 unattended-upgrades 關鍵詞且與指定日期匹配的所有日志條目。
您也可以使用以下命令按軟件包名稱過濾日志:
sudo grep "unattended-upgrades.*<package_name>" /var/log/syslog
將<package_name>
替換為要搜索的軟件包名稱。此命令將顯示所有包含 unattended-upgrades 關鍵詞并匹配指定軟件包名稱的日志條目。
使用上述命令,您可以輕松檢查和過濾 Ubuntu 系統(tǒng)中的 Unattended-Upgrades 日志,并解決升級過程中可能出現(xiàn)的任何問題。
在 Ubuntu 系統(tǒng)中設置和配置無人值守升級可以極大地提高系統(tǒng)的安全性和穩(wěn)定性。它能夠自動安裝安全更新和補丁,確保系統(tǒng)隨時具備最新的安全修復程序,無需手動檢查更新并安裝。
相關文章
Ubuntu系統(tǒng)怎么安裝Warp? 新一代AI 終端神器安裝使用方法
Warp是一款使用Rust開發(fā)的現(xiàn)代化AI 終端工具,該怎么再Ubuntu系統(tǒng)中安裝使用呢?下面我們就來看看詳細教程2025-01-20解決VMware中Ubuntu虛擬機鼠標閃爍或指針位置不正確的方案
剛下載虛擬機后,電腦在虛擬機內(nèi)出現(xiàn)了鼠標閃爍或者鼠標指針位置不對的問題,該怎么解決呢?下面我們就來看看詳細教程2025-01-09什么是 Ubuntu LTS?Ubuntu LTS和普通版本區(qū)別對比
Ubuntu LTS是Ubuntu操作系統(tǒng)的一個特殊版本,旨在提供更長時間的支持和穩(wěn)定性,與常規(guī)的Ubuntu版本相比,LTS版本在以下幾個方面有所不同2025-01-04如何安裝HWE內(nèi)核? Ubuntu安裝hwe內(nèi)核解決硬件太新的問題
今天的主角就是hwe內(nèi)核(hardware enablement kernel),一般安裝的Ubuntu都是初始內(nèi)核,不能很好地支持新硬件,導致諸如內(nèi)置網(wǎng)卡、聲卡等不工作,我們可以通過一些方法安裝h2025-01-04如何安裝 Ubuntu 24.04 LTS 桌面版或服務器? Ubuntu安裝指南
對于我們程序員來說,有一個好用的操作系統(tǒng)、好的編程環(huán)境也是很重要,如何安裝 Ubuntu 24.04 LTS 桌面版或服務器?詳細請看下文介紹2025-01-04如何評價Ubuntu 24.04 LTS? Ubuntu 24.04 LTS新功能亮點和重要變化
Ubuntu 24.04 LTS即將發(fā)布,帶來一系列提升用戶體驗的顯著功能,本文深入探討了該版本的亮點,幫助用戶做出明智的決策2025-01-04Ubuntu 24.04 LTS怎么關閉 Ubuntu Pro 更新提示彈窗?
Ubuntu每次開機都會彈窗提示安全更新,設置里最多只能取消自動下載,自動更新,但無法做到直接讓自動更新的彈窗不出現(xiàn),該怎么徹底禁止更新彈窗呢?詳細請看下文介紹2025-01-04Ubuntu 怎么啟用 Universe 和 Multiverse 軟件源?
在Ubuntu中,軟件源是用于獲取和安裝軟件的服務器,通過設置和管理軟件源,您可以確保系統(tǒng)能夠從可靠的來源獲取最新的軟件包,本文將介紹如何在Ubuntu中設置和管理軟件源2025-01-04Ubuntu怎么安裝vscode? Ubuntu下vscode安裝調(diào)試圖文教程
在Ubuntu系統(tǒng)下配置Visual Studio Code(VSCode)主要涉及安裝VSCode、安裝必要的插件以及進行一些基本的設置,以下是一個詳細的步驟指南2024-12-25Ubuntu 下載和安裝 VMware Workstation Pro 免費版詳細圖文教程
VMware Workstation Pro 是一款強大的虛擬化軟件,在Ubuntu上安裝VMware Workstation Pro,可以按照以下步驟進行2024-12-21