古い32ビットシステムでUbuntu 8.04を実行するために使用されていた古い独自のソフトウェアを実行するには、コンテナを作成する必要があります。私は必要なライブラリを最新バージョンに接続して、連続OSのアップグレードでソフトウェアを調整してきましたが、今はそれができなくなった点に達しました(少なくとも簡単ではありません)。
しかし、Playonlinuxを使用すると、特別なライブラリを含むコンテナを作成することができ、以前のWindowsプログラムはWindows 3.11にあると信じており、2018ビットシステムのLinux 64であるエイリアンの世界にいることを知らずに動作します。 ..可能であれば、誰かが私のLinux 32ビットソフトウェアを調整する方法を知っていれば、より簡単になります。
「Fakeroot」のような言葉が浮かび上がるのにどこから始めるべきかわかりません。
完全な答えが不可能であっても、手がかりを歓迎します。
PS。私はDebian 9を使用しています
答え1
に基づいてUbuntu Wikiのこのページ1つの方法は、Ubuntu 8.04 chrootでプログラムを実行することです。このガイドラインでは、Ubuntuまたは他のDebian派生物(またはDebian自体)を想定しています。
インストール
debootstrap
とschroot
:sudo apt install debootstrap schroot
32ビットUbuntu 8.04(Hardy Heronとも呼ばれる)用の設定ファイルを作成し、名前を付けて、
/etc/schroot/chroot.d/hardy_i386.conf
次のコンテンツを含めます。[hardy_i386] description=Ubuntu 8.04 Hardy for i386 location=/srv/chroot/hardy_i386 personality=linux32 root-users=mephisto run-setup-scripts=true run-exec-scripts=true type=directory users=mephisto
(
mephisto
適切なユーザー名に置き換えてください。カンマを使用して複数のユーザーを指定できます)。Ubuntu 8.04をインストールします。
sudo mkdir -p /srv/chroot/hardy_i386 sudo debootstrap --variant=buildd --arch=i386 hardy /srv/chroot/hardy_i386 http://old-releases.ubuntu.com/ubuntu/
chrootを使い始める:
schroot -c hardy_i386 -u root
(これを行うと、chrootにあるかのようにログインしますが
root
、これはもちろん適切でもそうでないかもしれません)。
デフォルトでは、chrootはホームディレクトリをバインドマウントするので危険です。必要に応じ/home
て、行をコメントアウトしてこの機能を無効にできます/etc/schroot/mount-defaults
。
答え2
仮想マシン(例:キーボード仮想マシンまたは仮想ボックスこのような場合)は、または同じコンテナシステムよりもchroot
優れた選択肢です。docker
lxc
Ubuntu 8.04は古いです(2008)。 Wheezy(2013-2016)よりはるかに古く、wheezyでさえ、現在のカーネルとlibc6を持つ最新のシステムで実行するのは難しいです(*)docker
。おそらく、コンテナにあるよりもコンテナにある方がchroot
簡単です。しかし、私はそれを信じていません。
仮想マシンにUbuntu 8.04をインストールするのは非常に簡単です。インストーラISOをダウンロードしてVMを設定してから(たとえばlibvirtのvirt-manager
GUIを使用)、ISOを使用してVMを起動します。
あるいは、さまざまな「物理仮想」テクノロジを使用して、既存のコンピュータを仮想マシンに複製することもできます。 IMO、Ubuntu 8.04を新しくインストールし、古代のアプリケーションを実行するように特別に設定するのが最善です。
(*)たとえば、1年前に、libc6とjessieの他のライブラリをdockerで実行するためにwheezyコンテナにインストールする必要がありました。問題は、実行中のホストがdocker
libc6 2.24にアップグレードされ、wheezyコンテナの以前のlibc6がそれを使用できないことです。コンテナをjessieにアップグレードする方が合理的です。ただし、コンテナで実行されているアプリケーションは、jessieで実行するには古すぎます。だから私はひどいフランケンを喘ぎました。
あなたのアプリケーションはWindows 3.11アプリケーションのようです(またはただの例ではないかもしれません...わかりません)。 VMでは、Ubuntu 8.04を実行する必要さえないかもしれません。この場合、適切な以前のバージョンのWindows(95、98、またはXP. KVM自体でWindows for Workgroups 3.11を実行することもできます)の有効なライセンスがある場合は、VMにインストールしてからVMにアプリケーションをインストールします。
有効なライセンスがない場合は試してみることができますリアクトOS、Windowsのフリーソフトウェアレプリカ(主にWindows Server 2003との互換性を目的としていますが、以前のバージョンのWindowsでソフトウェアを実行することもできます)。ところで、ReactOSとWINE開発の間には多くの交差があります。
それ以外の場合、Ubuntu 8.04+WINE は仮想マシンで正しく実行されます。
答え3
古代のLinuxディストリビューションを実行するのに非常に優れており、シンプルなファイル共有機能を備えた86boxなどのPCエミュレータを試してみてください。