我们在运行 apache 的网络服务器上托管了自己的内部软件包存储库。
想要安装这些软件包之一的内部用户将这些 sources.list 指向网络服务器并执行 apt-get update 和 apt-get install packgname。
其中一个软件包是名为 ourpkgname_1.0.0-0_all.deb 的软件包
现在我做出了一些更改并创建了一个名为 ourpkgname_1.0.1-0_all.deb 的新更新包。
我不知道如何从 webserver 目录中删除原始包并添加新版本。仅在 /tmp/mirror/pool 等处删除它并复制名称包不起作用。我假设有一些命令需要运行才能复制和重新生成存储库中的任何内容,但不知道如何操作。
有人能帮忙或者给我指出适当的文档吗
答案1
由于您已经完成所有设置,因此本文概述的步骤博客帖子可能足以让你朝着正确的方向前进。
答案2
我发现复制版一个很棒的工具。它使存储库的创建和维护变得轻而易举。以下是手册中的一些精简说明:
- 确定放置存储库的位置 (
YOURBASEDIR=/path/to/custom/repo
)。 - 创建目录结构(
mkdir -p $YOURBASEDIR/conf
)。 在其中创建一个文本文件(
editor $YOURBASEDIR/conf/distributions
)并添加以下内容:Codename: custom_repo Components: main Architectures: i386
添加你的包裹:
reprepro --basedir $YOURBASEDIR includedeb custom_repo ourpkgname_1.0.1-0_all.deb
将此行添加到您的“/etc/apt/sources.list“:
deb file:/path/to/custom/repo custom_repo main
然后是通常的
apt-get update && apt-get upgrade
,之后是你的版本1.0.1-0是一处绝佳的去处。
此工具功能非常强大,因此如果您想要的不仅仅是这个简单的用例(例如,如果您想导入当前的自定义 repo,或者如果您想添加 gpg 签名),请查看网站和/或手册页。