dput
将包添加到本地 reprepro 实例时看到此消息:
...
Exporting indices...
Corrupted file list data for pool/main/q/qualys-cloud-agent/qualys-cloud-agent_2.6.0-88_all.deb
Corrupted file list data for pool/main/q/qualys-cloud-agent/qualys-cloud-agent_2.6.0-88_all.deb
Calculating packages to pull...
Installing (and possibly deleting) packages...
Exporting indices...
Deleting files no longer referenced..
我在 Debian buster 上运行 reprepro 5.3.0 版本。
如何修复(或删除)损坏的文件?
答案1
这看起来像是二进制包 () 本身的内部问题*.deb
,与reprepro
. (几乎)每个二进制包md5sums
的控制组件中都包含一个文件。您可以使用以下命令查看它:
ar -x qualys-cloud-agent_2.6.0-88_all.deb # extracts {control,data}.tar.xz
tar -xf control.tar.xz # extracts control,md5sums
cat md5sums
最好的解决方案是发布,qualys-cloud-agent_2.6.0-88.1
这是2.6.0-88
.在安装之前,请在本地安装它并使用(从包中)dput
验证 md5sums 。debsums
debsums
dpkg -i qualys-cloud-agent_2.6.0-88.1_all.deb
debsums -c qualys-cloud-agent
如果检查通过,您就可以dput <your_repo> qualys-cloud-agent_2.6.0-88.1_all.changes
。
升级软件包的版本非常重要,因为它将确保从您的存储库安装此软件包的任何人都能获得更新。如果你真的不想升级版本(也许你确定没有人使用过你的存储库);你可以:
reprepro -Vb /path/to/repo remove buster qualys-cloud-agent
reprepro -Vb /path/to/repo include buster qualys-cloud-agent_2.6.0-88_all.changes
如果debsums
失败,则以下内容会很有用:
- 知道你是如何构建你的包的 (
dpkg-buildpackage
,cpack
,dpkg-deb
) - 查看摘录,
/var/lib/dpkg/info/qualys-cloud-agent.md5sums
以便我们查找任何格式问题 - 知道你是否正在使用
reprepro includedeb
而不是reprepro include