Software-Installation

是否有方法或兼容性庫可以在 Puppy linux 上執行 .deb 應用程序(沒有提供應用程序源)?

  • September 27, 2014

我在我的舊 x86 上網本上執行 Puppy Linux(準確地說是 Puppeee),我喜歡它:它為我的上網本注入了新的活力,使它適合作為低(ish)功率的家庭伺服器。

然而,一些雲和電話公司只勉強為 Linux 編譯他們的專有程式碼,而且通常只為幾個主要的發行版,如 Ubuntu。

當我只有公司提供的任何二進制包時,是否有任何方法可以在 Puppy Linux 等另一個發行版中為 Ubuntu 提供兼容性?

正如我在評論中提到的,docker可以很好地解決這個問題。它的缺點是它會佔用大量磁碟空間。除了磁碟空間之外,沒有其他成本,甚至沒有 CPU 或記憶體。

簡而言之,docker 本質上是在完整的作業系統映像中設置了一個 chroot。因此,您最終會在自己的內部執行另一個發行版。Docker 只負責設置應用程序執行的環境,然後啟動應用程序。應用程序啟動後,它只是您系統上的另一個程序。出現在ps、可以kill編輯等。

由於您正在執行完整的發行版,唯一可能的不兼容是如果您嘗試執行的任何內容都取決於您的核心所沒有的核心功能。這不太可能。

在系統上安裝 docker 後,您可以建構包含該軟體的映像。你可以通過創建一個看起來像這樣的“dockerfile”來做到這一點:

FROM ubuntu:12.04
RUN apt-get install -y wget
RUN wget http://telephonyco.com/proprietary_code.deb
RUN dpkg -i proprietary_code.deb

建構完成後,您可以使用以下命令直接執行程序:

docker run -ti name_of_image_you_created proprietary-program-foo

或者你可以在圖像中得到一個外殼:

docker run -ti name_of_image_you_created bash

引用自:https://unix.stackexchange.com/questions/157841