我是靠谱客的博主 风中白云,最近开发中收集的这篇文章主要介绍reprepro移除不用的软件或仓库,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

reprepro是一个强大的debian仓库管理工具。它的主要功能包含创建仓库、往仓库中添加包、从仓库中移除包、仓库导出、无用仓库移除等。
reprepro这些强大的功能全部依赖于其自身的一套管理数据库。同样的,运行reprepro命令也有特定的配置文件和目录结构的要求。首先介绍一下reprepro的配置文件目录结构要求。

reprepro的配置

这是正确运行reprepro命令的基础。

目录要求

  • Base目录:reprepro的执行需要一个Base目录,所有的一切配置都在这个base目录以及其子目录下。这个目录可以同–basedir 参数指定。如果没有传入的话,则默认为当前目录。
  • Conf目录:conf目录中存放执行reprepro所必须的distributions文件,这个目录的位置可以通过 –confdir 参数指定。如果没有指定的话,默认为Base目录下的conf/目录。
  • DB目录: 存放reprepro数据库的目录,可以通过–dbdir 指定,如果没有指定的话,默认为Base目录下的db/目录

配置文件conf/distributions

这是一个固定名称的文件,用于配置reprepro所管控的所有发行版版本信息。 这个文件有一定的内容结构要求,必须按照内容结构要求编写该文件并放到Base目录下的conf/distributions,reprepro命名才具备了可运行的基础。

这是一个纯文本文件,指定了不同的发行版本,每个发行版需要一组信息,以key:value的形式,每组key:value一行, 不同发行版间以空行分隔。例如下面是两个发行版仓库的信息:

Label:ubuntu
Suite:trusty
Codename:trusty
Components:main upstream partner
Architectures: i386 amd64 source
SignWith: yes
Contents: udebs
Label:mint
Suite:qiana
Codename:qiana
Components:main upstream partner
Architectures: i386 amd64 source
SignWith: yes
Contents: udebs

主要功能

移除未引用的包

pool中有可能存在没有被任何dists引用的包,这时就可以通过reprepro的命令检测和移除。

检测,列出未被引用的包

reprepro dumpunreferenced

移除未被引用的包

reprepro deleteunreferenced

移除仓库

  • 首先从distributions文件中移除要删除的仓库信息。

  • 在Base目录下执行

reprepro --delete clearvanished

注意:该命令会直接执行删除,务必小心。

这个命令会将distributions文件中没有的仓库信息从数据库中删除,同时删除该仓库特有的包(这也有一个单独的命令: reprepro deleteunreferenced)。

  • 移除 dists/ 目录下对应的仓库repo目录。

最后

以上就是风中白云为你收集整理的reprepro移除不用的软件或仓库的全部内容,希望文章能够帮你解决reprepro移除不用的软件或仓库所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(32)

评论列表共有 0 条评论

立即
投稿
返回
顶部