AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / unix / 问题 / 427738
Accepted
user1794469
user1794469
Asked: 2018-03-03 10:17:04 +0800 CST2018-03-03 10:17:04 +0800 CST 2018-03-03 10:17:04 +0800 CST

如何告诉 aptitude 软件包是手动安装的?

  • 772

我安装了一个包(不记得哪个包,但那不应该太重要)并且需要“真正的” ffmpeg,所以我清除了 debian 包ffmpeg并手动安装了另一个版本。

问题是我现在无法安装或更新任何软件包而不aptitude告诉我xyz package需要ffmpeg哪些未安装。但是,由于安装了该软件包,所有依赖它的程序都可以正常工作。我不想用存储库版本覆盖我拥有的版本,我只想告诉aptitudeffmpeg 确实已安装。

我试过apt-mark了,但因为 aptitude 认为它没有安装它不会手动标记它。

根据要求apt-cache policy ffmpeg显示:

ffmpeg:
  Installed: (none)
  Candidate: 7:3.2.10-1~deb9u1~bpo8+1
  Version table:
     10:2.6.9-dmo1 0
        100 /var/lib/dpkg/status
     7:3.2.10-1~deb9u1~bpo8+1 0
        100 http://http.debian.net/debian/ jessie-backports/main amd64 Packages

我仍然对解决方案非常感兴趣,但我决定只安装存储库版本,然后重新安装我想要的版本。Aptitude 确实“安装”了 ffmpeg,但它没有覆盖我当前的版本(也许它把它放在不同的位置,或者它看到了一个“更新”的版本)。

debian package-management
  • 1 1 个回答
  • 653 Views

1 个回答

  • Voted
  1. Best Answer
    kemotep
    2018-03-03T12:11:24+08:002018-03-03T12:11:24+08:00

    不建议使用 dpkg 安装随机包。

    在采取任何行动之前阅读整个答案

    Apt有问题,因为它与您的ffmpeg. 就它而言,您没有ffmpeg安装并且因此给您上述错误。你的输出apt-cache policy ffmpeg证明了这一点。我不知道将随机.deb文件与之关联的方法,apt除非您的包apt在其安装过程中设置。如果有人可以纠正我这一点,我将不胜感激。如果您需要当前存储库中不可用的包,您可以自行决定将 testing/unstable/backports/whatever 存储库添加到包含您要查找的包的 source.list 并使用包管理器。

    我不建议您使用非官方的 Debian 存储库。

    ffmpeg 在此处查找可用版本。如果您想要的版本位于稳定版以外的存储库中,则应将其添加到您的 sources.list 中。如果您设置“Apt Pinning”,您可以管理多个 Debian 版本,而开销很小。通过删除当前实例来修复您的ffmpegstart 安装,以便我们可以从头开始。

    apt-get purge ffmpeg
    dpkg --purge ffmpeg
    dpkg -l | ffmpeg
    

    这将清除ffmpeg,然后查看是否已安装。您应该按照此帖子rc查找状态。然后,您可以按照wiki 中关于 apt pinning的指南添加测试和不稳定的存储库。不要忘记为您计划使用的每个存储库创建文件以及相应的文件。一旦你创建了正确的文件来设置 apt pinning,你就可以简单地运行:/etc/apt/sources.list.d//etc/apt/preferences.d/

    apt-get install ffmpeg/unstable
    

    ffmpeg从不稳定的 repo安装。如果你设置了 apt pinning,你可以用你想要的包来自的任何 repo 替换不稳定的。

    但是,如果您绝对必须使用非官方的 Debian 存储库

    这是添加包含ffmpeg您可能正在寻找的软件包的第三方存储库的指南。如果您决定使用 apt pinning,则需要创建 repo ( /etc/apt/sources.list.d/deb-multimedia.list) 和首选项 ( /etc/apt/preferences.d/deb-multimedia.preferences)。ffmpeg按照前面描述的方式清除后完成以下步骤。

    nano /etc/apt/sources.list
    

    添加这一行:

    deb http://www.deb-multimedia.org stretch main non-free
    

    保存并退出。现在按照以下步骤操作:

    apt-get update
    

    自 Buster 以来,“-oAcquire::AllowInsecureRepositories=true”选项是强制性的,因此也需要用于不稳定的。

    apt-get update -oAcquire::AllowInsecureRepositories=true
    
    apt-get install deb-multimedia-keyring -oAcquire::AllowInsecureRepositories=true
    

    由于 Squeeze,您可以使用 apt-get 安装此软件包。当包裹询问要做什么时只需按 y (不要按返回)。

    如果 apt-get 找不到新密钥,请执行以下操作:

    wget http://www.deb-multimedia.org/pool/main/d/deb-multimedia-keyring/deb-multimedia-keyring_2016.8.1_all.deb
    sudo dpkg -i deb-multimedia-keyring_2016.8.1_all.deb
    

    您可以通过以下方式验证包的完整性:

    sha256sum deb-multimedia-keyring_2016.8.1_all.deb
    9faa6f6cba80aeb69c9bac139b74a3d61596d4486e2458c2c65efe9e21ff3c7d deb-multimedia-keyring_2016.8.1_all.deb
    

    最后的和强制性的步骤。

    apt-get update和apt-get dist-upgrade安装所有与 ffmpeg 相关的软件包。

    之后你就可以运行了apt-get install ffmpeg,你应该有正确的包。

    结论

    我知道这涵盖了很多,但我想全面。我个人管理 Debian 的理念是尽可能不要偏离稳定版,不要偏离官方 repos 并根据Debian wiki正确设置 apt pinning ,并仔细限制和管理.deb来自源代码或从源代码安装的任何内容。如果您可以通过让您可以管理的所有内容来帮助防止包/库的版本控制之间发生冲突,apt那么您应该是安全的。

    抱歉,如果这太冗长或不是您需要的,我只是想确保我涵盖了所有基础。祝你好运!

    • 4

相关问题

  • GRUB 配置以识别同一 Linux 发行版的不同桌面环境(安装)

  • astyle 不会更改源文件格式

  • 接收有关全新 Debian 的电子邮件

  • Debian Stretch:libgs_plugin_systemd-updates.so 中的 gnome-software 段错误

  • 如何在拼音输入法中输入ü?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    ssh 无法协商:“找不到匹配的密码”,正在拒绝 cbc

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    如何卸载内核模块“nvidia-drm”?

    • 13 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Wong Jia Hau ssh-add 返回:“连接代理时出错:没有这样的文件或目录” 2018-08-24 23:28:13 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST
  • Martin Hope
    Bagas Sanjaya 为什么 Linux 使用 LF 作为换行符? 2017-12-20 05:48:21 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve