建立本地APT軟體包倉庫

夢共裡醉發表於2022-05-09
有些情況下,由於一些安全原因Ubuntu機器沒有連線到網際網路。在這種情況中,你可以設定自己的本地APT軟體包倉庫,並在Ubuntu機器上安裝軟體包。
系統環境

Ubuntu 20.04 LTS

安裝dpkg-dev

需要安裝 dpkg-dev軟體包,才能為本地APT倉庫建立軟體包後設資料。

bob@ubuntu-20-04:~$ sudo apt install -y dpkg-dev
安裝http服務

如果該軟體倉庫需要為其他ubuntu 20.04伺服器使用,可以安裝web伺服器為其他ubuntu 20.04伺服器提供軟體倉庫。

bob@ubuntu-20-04:~$ sudo apt install -y apache2
建立本地倉庫的儲存目錄

建立 /var/www/html/repo目錄,用來存放軟體包:

bob@ubuntu-20-04:~$ sudo mkdir /var/www/html/repo

建立掛載點,並掛載ubuntu 20.04的光碟到 /mnt/cdrom目錄。

bob@ubuntu-20-04:~$ sudo mkdir /mnt/cdrom
bob@ubuntu-20-04:~$ sudo mount /dev/cdrom /mnt/cdrom
mount: /mnt/cdrom: WARNING: device write-protected, mounted read-only.

查詢 /mnt/cdrom裡面所有deb軟體包並將其複製到我們的本地APT倉庫目錄中。

bob@ubuntu-20-04:~$ sudo find /mnt/cdrom -iname "*.deb" -exec cp {} /var/www/html/repo \;

Ubuntu 20.04中建立本地APT軟體包倉庫Ubuntu 20.04中建立本地APT軟體包倉庫

編寫一個 來更新Package.gz檔案

建立一個 檔案以掃描更新 Packages.gz檔案因為你可能會不時的在本地APT倉庫中新增新的deb軟體包。因此,每次在repo目錄中新增新的deb軟體包之後,都需要更新 Packages.gz檔案。

bob@ubuntu-20-04:~$ sudo vim /bin/update-debs
#!/bin/bash
cd /var/www/html/repo
dpkg-scanpackages . /dev/null | gzip -9c > Packages.gz

給update-debs指令碼檔案新增可執行許可權:

bob@ubuntu-20-04:~$ sudo chmod +x /bin/update-debs

現在執行此指令碼以建立Packages.gz檔案:

bob@ubuntu-20-04:~$ sudo /bin/update-debs
將本地APT倉庫地址新增到sources.list檔案中

首先備份一下 sources.list檔案,然後新增:

bob@ubuntu-20-04:~$ cd /etc/apt/
bob@ubuntu-20-04:/etc/apt$ sudo cp -p sources.list sources.list.back

開啟sources.list檔案,在檔案底部新增下面內容:

bob@ubuntu-20-04:/etc/apt$ sudo vim sources.list
# Local APT Repository
deb [allow-insecure=yes] http://192.168.43.174/repo ./

Ubuntu 20.04中建立本地APT軟體包倉庫Ubuntu 20.04中建立本地APT軟體包倉庫
更新一下軟體源:

bob@ubuntu-20-04:~$ sudo apt update

Ubuntu 20.04中建立本地APT軟體包倉庫Ubuntu 20.04中建立本地APT軟體包倉庫

總結

在本文中,介紹瞭如何在Ubuntu 20.04 LTS建立本地APT倉庫。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31524109/viewspace-2892934/,如需轉載,請註明出處,否則將追究法律責任。

相關文章