首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用reprepro从apt存储库中删除deb包

用reprepro从apt存储库中删除deb包
EN

Ask Ubuntu用户
提问于 2018-02-28 10:58:14
回答 1查看 11.5K关注 0票数 6

问题摘要:

reprepro list stretch没有列出我的apt存储库中的任何包,reprepro remove stretch 也没有从我的存储库中删除任何包。我如何才能:

  1. 添加包,以便reprepro list stretch找到它们,或者
  2. 使用reprepro删除我的回购包

环境:

我有一个内置机器,上面有一个贴切的存储库。当我完成建筑时,我会安装我的软件包:

代码语言:javascript
复制
sudo reprepro -Vb /var/www/html/apt/debian \
              includedeb stretch \
              ${build_dir}/a320-latest-0.0.${SVN_REVISION}-Linux.deb

一切似乎都很顺利。我可以从任何将我的存储库添加到他们的apt-get install a320-latest的客户端进行/etc/apt/sources.list.d/

当我进一步检查时,我可以确认我安装了几个包:

代码语言:javascript
复制
bob@apollo:/var/www/html/apt/debian$ tree pool
pool
└── main
    ├── a
    │   ├── a320
    │   │   └── a320_0.0.571_amd64.deb
    │   └── a320-latest
    │       └── a320-latest_0.0.575_amd64.deb
    ├── h
    │   └── helloworld
    │       └── helloworld_0.2_amd64.deb
    └── s
        ├── sim-dev
        │   └── sim-dev_1.0_amd64.deb
        ├── sim-devenv
        │   └── sim-devenv_1.0_amd64.deb
        ├── sim-runtime
        │   └── sim-runtime_1.1_amd64.deb
        └── sim-workstation
            └── sim-workstation_1.0_amd64.deb

11 directories, 7 files

它们似乎也存在于存储库注册表中:

代码语言:javascript
复制
bob@apollo:/var/www/html/apt/debian$ cat dists/stretch/main/binary-amd64/Packages | grep Package:
Package: a320
Package: a320-latest
Package: helloworld
Package: sim-dev
Package: sim-devenv
Package: sim-runtime
Package: sim-workstation

预期工作流:

我想删除pool/main/a/a320pool/main/h/helloworld

我试过:

代码语言:javascript
复制
bob@apollo:/var/www/html/apt/debian$ sudo reprepro list stretch
bob@apollo:/var/www/html/apt/debian$ sudo reprepro remove stretch a320
Not removed as not found: a320
Exporting indices...

我希望reprepro list stretch会列出我的包,而reprepro remove stretch a320会删除a320包。但这似乎什么也做不了。

我很想手动删除*.deb文件和./dists/.../Packages中的条目,但我怀疑这会破坏一些校验和并销毁存储库。它可能还会使./dists与包含一些二进制对象(SQLite?)的./db不同步。

我也尝试过reprepro export stretchreprepro update stretch,但是他们似乎什么也没做。

至少有一些东西在起作用,

现在对客户来说一切都很好。

另外,我可以推断reprepro找到了stretch存储库,否则它会给出以下错误之一:

代码语言:javascript
复制
bob@apollo:/var/www/html/apt$ sudo reprepro list stretch
Error opening config file './conf/distributions': No such file or directory(2)
There have been errors!

bob@apollo:/var/www/html/apt/debian$ sudo reprepro list wheezy
Cannot find definition of distribution 'wheezy'!
There have been errors!
EN

回答 1

Ask Ubuntu用户

回答已采纳

发布于 2018-02-28 14:21:00

您的部分解决方案就在您的问题中:您必须告诉reprepo在哪里查找!

代码语言:javascript
复制
sudo reprepro -Vb /var/www/html/apt/debian list stretch

代码语言:javascript
复制
sudo reprepro -Vb /var/www/html/apt/debian remove stretch a320

应该能起作用。

票数 7
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/1010612

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档