创建本地APT软件包仓库
有些情况下,由于一些安全原因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 \;
编写一个脚本来更新Package.gz文件
创建一个脚本文件以扫描更新Packages.gz
文件因为你可能会不时的在本地APT仓库中添加新的deb软件包。因此,每次在repo目录中添加新的deb软件包之后,都需要更新Packages.gz
文件。
https://www.51cto.com/it/news/2020/0407/19877.html
https://www.donews.com/news/detail/4/2982630.html
https://www.pcpop.com/article/4498652.shtml
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 ./
更新一下软件源:
bob@ubuntu-20-04:~$ sudo apt update
总结
在本文中,介绍了如何在Ubuntu 20.04 LTS创建本地APT仓库。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· AI 智能体引爆开源社区「GitHub 热点速览」
2021-05-09 几种从Windows上传文件到Linux系统的方法
2020-05-09 Centos7.7 配置OpenVPN (二)
2016-05-09 Linux挂载命令mount用法及参数详解
2016-05-09 RHEL6.2下挂载光驱安装软件