怎樣完整地離線更新并升級基于Debian的操作系統(tǒng)
不久之前我已經(jīng)向你展示了如何在任意離線的 Ubuntu 和 Arch Linux 操作系統(tǒng)上安裝軟件。 今天,我們將會看看如何完整地離線更新并升級基于 Debian 的操作系統(tǒng)。 和之前所述方法的不同之處在于,這次我們將會升級整個操作系統(tǒng),而不是單個的軟件包。這個方法在你沒有網(wǎng)絡鏈接或擁有的網(wǎng)絡速度很慢的時候十分有用。
完整地離線更新并升級基于 Debian 的操作系統(tǒng)
首先假設,你在單位擁有正在運行并配置有高速互聯(lián)網(wǎng)鏈接的系統(tǒng)(Windows 或者 Linux),而在家有一個沒有網(wǎng)絡鏈接或網(wǎng)絡很慢(例如撥號網(wǎng)絡)的 Debian 或其衍生的操作系統(tǒng)?,F(xiàn)在如果你想要離線更新你家里的操作系統(tǒng)怎么辦?購買一個更加高速的網(wǎng)絡鏈接?不,根本不需要!你仍然可以通過互聯(lián)網(wǎng)離線更新升級你的操作系統(tǒng)。這正是 Apt-Offline工具可以幫助你做到的。
正如其名,apt-offline 是一個為 Debian 及其衍生發(fā)行版(諸如 Ubuntu、Linux Mint 這樣基于 APT 的操作系統(tǒng))提供的離線 APT 包管理器。使用 apt-offline,我們可以完整地更新/升級我們的 Debian 系統(tǒng)而不需要網(wǎng)絡鏈接。這個程序是由 Python 編程語言寫成的兼具 CLI 和圖形界面的跨平臺工具。
準備工作
- 一個已經(jīng)聯(lián)網(wǎng)的操作系統(tǒng)(Windows 或者 Linux)。在這份指南中,為了便于理解,我們將之稱為在線操作系統(tǒng)。
- 一個離線操作系統(tǒng)(Debian 及其衍生版本)。我們稱之為離線操作系統(tǒng)。
- 有足夠空間容納所有更新包的 USB 驅動器或者外接硬盤。
安裝
Apt-Offline 可以在 Debian 及其衍生版本的默認倉庫中獲得。如果你的在線操作系統(tǒng)是運行的 Debian、Ubuntu、Linux Mint,及其它基于 DEB 的操作系統(tǒng),你可以通過下面的命令安裝 Apt-Offline:
sudo apt-get install apt-offline
如果你的在線操作系統(tǒng)運行的是非 Debian 類的發(fā)行版,使用 git clone
獲取 Apt-Offline 倉庫:
git clone https://github.com/rickysarraf/apt-offline.git
切換到克隆的目錄下并在此處運行:
cd apt-offline/
sudo ./apt-offline
在離線操作系統(tǒng)(沒有聯(lián)網(wǎng)的操作系統(tǒng))上的步驟
到你的離線操作系統(tǒng)上創(chuàng)建一個你想存儲簽名文件的目錄:
mkdir ~/tmp
cd ~/tmp/
你可以自己選擇使用任何目錄。接下來,運行下面的命令生成簽名文件:
sudo apt-offline set apt-offline.sig
示例輸出如下:
Generating database of files that are needed for an update.
Generating database of file that are needed for operation upgrade
默認條件下,apt-offline 將會生成需要更新和升級的相關文件的數(shù)據(jù)庫。你可以使用 --update
或者 --upgrade
選項相應創(chuàng)建。
拷貝完整的 tmp
目錄到你的 USB 驅動器或者或者外接硬盤上,然后換到你的在線操作系統(tǒng)(有網(wǎng)絡鏈接的操作系統(tǒng))。
在在線操作系統(tǒng)上的步驟
插入你的 USB 驅動器然后進入 tmp
文件夾:
cd tmp/
然后,運行如下命令:
sudo apt-offline get apt-offline.sig --threads 5 --bundle apt-offline-bundle.zip
在這里的 -threads 5
代表著(并發(fā)連接的) APT 倉庫的數(shù)目。如果你想要從更多的倉庫下載軟件包,你可以增加這里的數(shù)值。然后 -bundle apt-offline-bundle.zip
選項表示所有的軟件包將會打包到一個叫做 apt-offline-bundle.zip
的單獨存檔中。這個存檔文件將會被保存在你的當前工作目錄中(LCTT 譯注:即 tmp
目錄)。
上面的命令將會按照之前在離線操作系統(tǒng)上生成的簽名文件下載數(shù)據(jù)。
根據(jù)你的網(wǎng)絡狀況,這個操作將會花費幾分鐘左右的時間。請記住,apt-offline 是跨平臺的,所以你可以在任何操作系統(tǒng)上使用它下載包。
一旦下載完成,拷貝 tmp
文件夾到你的 USB 或者外接硬盤上并且返回你的離線操作系統(tǒng)(LCTT 譯注:此處的復制操作似不必要,因為我們一直在 USB 存儲器的 tmp
目錄中操作)。千萬保證你的 USB 驅動器上有足夠的空閑空間存儲所有的下載文件,因為所有的包都放在 tmp
文件夾里了。
離線操作系統(tǒng)上的步驟
把你的設備插入你的離線操作系統(tǒng),然后切換到你之前下載了所有包的 tmp
目錄下。
cd tmp
然后,運行下面的命令來安裝所有下載好的包。
sudo apt-offline install apt-offline-bundle.zip
這個命令將會更新 APT 數(shù)據(jù)庫,所以 APT 將會在 APT 緩沖里找所有需要的包。
注意事項: 如果在線和離線操作系統(tǒng)都在同一個局域網(wǎng)中,你可以通過 scp
或者其他傳輸應用程序將 tmp
文件傳到離線操作系統(tǒng)中。如果兩個操作系統(tǒng)在不同的位置(LCTT 譯注:意指在不同的局域網(wǎng)),那就使用 USB 設備來拷貝。
好了大伙兒,現(xiàn)在就這么多了。 希望這篇指南對你有用。還有更多好東西正在路上。敬請關注!
祝你愉快!