Opensuse

在 OpenSuse (zypper) 中自動更新軟體的技巧

  • August 2, 2018

我目前正在僅命令行環境中工作。

我想使用 自動執行每日更新zypper,但是我找不到一個好方法。好的,我的意思是乾淨和簡單。

sudo zypper update每天使用 cron執行是否安全?有人告訴我,這並不總是一個好方法。

還有其他方法可以讓我通過 zypper 完全自動進行包更新嗎?

(我前一陣子解決了這個問題,只是忘記發布答案)

我最終創建了一個每天凌晨 3 點執行的 cron 作業(我的電腦保持 24/7)並呼叫更新腳本。

該腳本僅包含幾行程式碼,基本上會刷新儲存庫 ( zypper ref),然後安裝所有可用更新 ( zypper up)。在過去的幾個月裡,它對我有用。

如果幾年後有人來這裡仍然在尋找“更集成”的解決方案,您目前可以在終端中執行此操作:

sudo zypper install yast2-online-update-configuration
sudo yast2 online_update_configuration

然後啟用自動線上更新,並選擇頻率(每天、每週或每月)。您還可以選擇決定是否自動接受許可證(無論如何,99% 的人只是點擊“是”),是否自動安裝額外推薦的軟體包作為升級的結果,以及是否較小的增量 RPM好的。

實際所做的是將腳本 (/usr/lib/YaST2/bin/online_update) 連結到相關的 /etc/cron.{daily,weekly,monthly} 目錄,然後編輯腳本讀取的配置文件。但這比製作自己的 cron 工作要容易一些。並且該腳本可以更輕鬆地支持一些方便的選項,例如將更新限制為特定類別等。

此外,如果增量 RPM 對讀者來說是新事物:

Delta RPM 包包含 RPM 包的舊版本和新版本之間的差異。將增量 RPM 應用於舊 RPM 會產生全新的 RPM。不必擁有舊 RPM 的副本,因為 delta RPM 也可以與已安裝的 RPM 一起使用。delta RPM 包的大小甚至比更新檔 RPM 還要小,這在通過 Internet 傳輸更新包時是一個優勢。缺點是涉及增量 RPM 的更新操作比普通或更新檔 RPM 消耗更多的 CPU 週期。

引用自:https://unix.stackexchange.com/questions/21054