當前位置: 首頁>>技術教程>>正文


在debian/ubuntu中同時安裝兩個glibc

, , ,

問題描述

是否可以在同一台計算機上安裝和使用兩個不同的glibc版本。哪一個版本僅用於運行依賴於舊glibc二進製文件的舊版軟件?

是否有可能借助程序包管理器來做到這一點(例如“將此程序包及其依賴項安裝到/opt/old-glibc),而不是直接管理它

最佳方法

是的,有可能。您必須非常注意庫的加載路徑,並且可能需要重新編譯其他庫。

作為減少摩擦的方法,我建議在chroot中安裝舊版本的Debian或Ubuntu。也就是說,創建一個目錄,例如/old/etch,並將較早的發行版安裝在以該目錄為根的樹中;要運行該有問題的程序,請調用chroot以將其對文件係統的視圖限製為/old/etch

Debian(或Ubuntu)附帶了一個軟件包,用於協助在chroot中安裝另一個係統:schroot(dchroot的後繼者)。首先,使用debootstrap安裝較舊的發行版(僅安裝基本係統和程序需要的內容,而不安裝服務器)。然後設置schroot以方便地運行程序(可訪問/dev/proc/home和其他“satellite”文件係統)。

因此,計劃是:先進行debootstrap,再進行dchroot。在How do I run 32-bit programs on a 64-bit Debian/Ubuntu?中,我提供了有關類似設置的教程-無論您運行的是不同版本的發行版,不同的體係結構還是不同的Debian-like發行版,隻需選擇適當的軟件包源即可,其餘都是相同的。

參考資料

本文由Ubuntu問答整理, 博文地址: https://ubuntuqa.com/zh-tw/article/10808.html,未經允許,請勿轉載。