有些状况下,因为一些平安起因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文件,而后增加:
https://www.51cto.com/it/news...
https://www.donews.com/news/d...
https://www.pcpop.com/article...
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仓库。