我是 Java 开发人员。我的目标是将我的对象包装到 deb 文件中/将它们上传到私有存储库并从该存储库安装它们。
我的问题是:
- Debian 存储库只是一个满足某些特定规则的 HTTP 文件存储吗?
- 存储包裹的规则和结构是什么?
deb http://my-repository.com stable non-free
添加足以/etc/apt/sources.list
使用这个存储库吗?
答案1
Debian 存储库只是一个满足某些特定规则的 HTTP 文件存储吗?
是的,但它也可以是 FTP 存储或只是本地目录。
存储包裹的规则和结构是什么?
Debian Wiki:Debian 存储库格式记录官方 Debian 存储库的结构以及客户端官方理解的格式。
deb http://my-repository.com stable non-free
添加足以/etc/apt/sources.list
使用这个存储库吗?是的,但这取决于你如何设置你的存储库。不过最简单的方法是设置一个平面存储库具有相同的设置简单档案/存储库(本地目录)
最好为每个版本创建一个文件夹,例如:
trusty
。将您的 Debian 软件包复制到其中。
生成包列表(从其父目录运行):
dpkg-scanpackages -m trusty /dev/null | gzip -9c > ./trusty/Packages.gz
将整个文件夹上传到您的网站
现在您可以通过添加以下格式的存储库来访问它:
deb http://my-repository.com trusty/
注意:
/
这里是必须的,因为trusty
在这个设置中目录也是必须的。
更新说明(2021-05-28):下一步是什么?
在受限/封闭的私有网络中,上述操作在某种程度上是可以的。但将 Debian 软件包发布到公共网络中需要采取更多安全措施,例如:
- 签名:每个软件包发布文件(构建时)、存储库软件包列表
- 并发布用于签名的密钥对中的公钥,以便用户可以将其添加到 APT。
这是一个 Debian 页面,其中有关于安全 APT