阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Ubuntu 20.04中创建本地APT软件包仓库

92次阅读
没有评论

共计 1433 个字符,预计需要花费 4 分钟才能阅读完成。

导读 有些情况下,由于一些安全原因 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 软件包仓库

编写一个脚本来更新 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 软件包仓库
更新一下软件源:

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

Ubuntu 20.04 中创建本地 APT 软件包仓库

总结

在本文中,介绍了如何在 Ubuntu 20.04 LTS 创建本地 APT 仓库。

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2024-07-25发表,共计1433字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中