Debian

如何安裝兩個寫相同文件的包

  • July 18, 2016

我有兩個包,每個包都創建 /usr/bin/ffprobe。其中之一是來自 Deb Multimedia 儲存庫的 ffmpeg,而另一個是從原始碼建構的 ffmbc 0.7-rc5。手動卷對業務至關重要,我們過去只在需要的地方從源頭安裝它。我只能假設它會破壞 ffmpeg 文件,並且從來沒有任何不良影響。

理論上,我們的 ffmbc 包覆蓋 ffmpeg 包中的文件應該是可以接受的。缺點是對 ffmpeg 的更新將覆蓋 ffmbc 二進製文件。有什麼簡單的方法可以調和這個嗎?

在基於 Debian 的系統上,有 DPKG(在 apt 下方)可以使用命令dpkg-divert進行轉移設置

dpkg-divert 是用於設置和更新轉移列表的實用程序。

文件轉移是一種強制 dpkg(1) 不將文件安裝到其位置,而是安裝到轉移位置的方法。…系統管理員也可以使用它來覆蓋某些軟體包的配置文件,或者在安裝包含這些文件的較新版本的軟體包時,dpkg 需要保留某些文件(未標記為“conffiles”) .

因此,對於您的情況,您可以使用這樣的命令來設置轉移。(我還沒有測試過,檢查手冊頁並驗證這看起來是正確的。)

dpkg-divert --local --divert /usr/bin/ffprobe.ffmpeg --rename /usr/bin/ffprobe

引用自:https://serverfault.com/questions/424761