Ubuntu 20.04 中創(chuàng)建本地 APT 軟件包倉庫
有些情況下,由于一些安全原因Ubuntu機器沒有連接到互聯(lián)網(wǎng)。在這種情況中,你可以設(shè)置自己的本地APT軟件包倉庫,并在Ubuntu機器上安裝軟件包。
在本文中,介紹了如何在Ubuntu 20.04 LTS創(chuàng)建本地APT倉庫。希望對你有幫助~
系統(tǒng)環(huán)境
Ubuntu 20.04 LTS
安裝dpkg-dev
需要安裝dpkg-dev軟件包,才能為本地APT倉庫創(chuàng)建軟件包元數(shù)據(jù)。
bob@ubuntu-20-04:~$ sudo apt install -y dpkg-dev
安裝http服務(wù)
如果該軟件倉庫需要為其他ubuntu 20.04服務(wù)器使用,可以安裝web服務(wù)器為其他ubuntu 20.04服務(wù)器提供軟件倉庫。
bob@ubuntu-20-04:~$ sudo apt install -y apache2
創(chuàng)建本地倉庫的存儲目錄
創(chuàng)建/var/www/html/repo目錄,用來存放軟件包:
bob@ubuntu-20-04:~$ sudo mkdir /var/www/html/repo
創(chuàng)建掛載點,并掛載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軟件包并將其復(fù)制到我們的本地APT倉庫目錄中。
bob@ubuntu-20-04:~$ sudo find /mnt/cdrom -iname "*.deb" -exec cp {} /var/www/html/repo \;
編寫一個腳本來更新Package.gz文件
創(chuàng)建一個腳本文件以掃描更新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腳本文件添加可執(zhí)行權(quán)限:
bob@ubuntu-20-04:~$ sudo chmod +x /bin/update-debs
現(xiàn)在執(zhí)行此腳本以創(chuàng)建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文件,在文件底部添加下面內(nèi)容:
bob@ubuntu-20-04:/etc/apt$ sudo vim sources.list
# Local APT Repository
deb [allow-insecure=yes] http://192.168.43.174/repo ./
更新一下軟件源:
bob@ubuntu-20-04:~$ sudo apt update