web-dev-qa-db-ja.com

DebianとUbuntuの間でインストールされたライブラリを共有する

ハードディスクをパーティション分割して、UbuntuとDebianをインストールしようとしています。したがって、古いデータを保持する必要はありません。両方のOSの最新版が使用されます。

Ubuntuのaptを使用してライブラリやプログラムなどをインストールし、Debianに再インストールするのではなく、その逆の方法を理解しようとしています。ここでは、Ubuntuで機能するものはすべてDebianでも機能するものと想定しています。

/ homeを共有できることを知っています。しかし、大部分のライブラリ/プログラムはそうではありません。別のパーティションに/ usrを配置し、両方のOSに/ usrをマウントする必要がありますか?または、単に/ usr/localをマウントする必要がありますか?またはそれを行うためのより良い方法はありますか?

19
dev_nut

またはそれを行うためのより良い方法はありますか?

  • スナップとして使用するすべてのソフトウェアをインストールします。
  • /opt/という名前のパーティションに使用するすべてのソフトウェアをインストールします。これは、ソースインストール(tar.gz)である可能性があります。

これら2つのインストール方法は、ディストリビューション間で共有できます。最後の1つは、PATHに何かを追加するか、サービスをメインシステムにコピーする必要があります。

2つの異なるインストール間で/ usr /または/ var /を共有することはできません。ただし、/ usr/local /は共有できます。 2つのディストリビューションには異なるバージョンのライブラリを含めることができるため、これらのシステムのいずれかにいくつかのライブラリをインストールする必要がある場合があります。しかし、節約した数キロバイトは、これに費やす時間の価値がありません。さらに、あなたはまだどちらかのシステムを壊す可能性があります。

16
Rinzwind

never doは、DebianとUbuntuのリポジトリ、システムライブラリ、プログラムなどが混在することですそれは両方のシステムを大規模に破壊します。(これはUbuntuとMintのような非公式の亜種を混合することにも拡張されます;たとえば、16.04のUbuntuの場合、should n'tで、コアシステムを分離しておく必要があります)。

Ubuntuは、Debianよりもはるかに更新されたソフトウェアライブラリを備えた、はるかに迅速なリリースサイクルにあります。逆も同様です-Debianには更新されたライブラリなどがありません。

ミキシングとマッチングは、システムを爆発させます。これが、しないライブラリを互いに共有する理由です。

これを行うと、両方のシステムが破損します。 2つのシステム間でライブラリとプログラムを共有しようとしないでください。

技術的にはリリースとディストリビューション間でユーザーのホームディレクトリを共有できますが、1つ以上のOSで奇妙な問題が発生する可能性があります各システム上のソフトウェアのバージョン。

11
Thomas Ward

既存の回答に追加したいもう1つのポイントは、aptdpkgについて、およびインストールされたソフトウェアに関する情報をどのように処理するかです。

dpkg(コアパッケージ管理アプリケーション)は、/var/lib/dpkg/statusファイルを使用して、システムにインストールされたdebianパッケージに関する情報を保存および取得します。これはあなたのランニングについて非常に具体的です。 1つのエントリでさえ、パッケージ管理全体を台無しにする可能性があります。

たとえば、Ubuntuでnautilusのバージョン3.18がインストールされているとします。この情報を共有すると、debianは実際に3.18を持っている場合でも、nautilusの3.16を持っていることがわかります。これは非常に単純化された例です。しかし、さらに複雑になる可能性があります。たとえば、debianはnon-existingリポジトリからインストールされたパッケージが正当な理由がないことを確認し、それらを削除しようとします(逆も同様です)。

Rinzwindの答えは、スナップショットまたはフラットパックパッケージとして配布される自己完結型アプリケーションを使用するなど、一般的なアプリケーションで回避する1つの簡単な方法を示しています。これらはライブラリを共有していませんが、何らかの種類の共通アプリケーションが必要な場合は、目標を達成できます。

3
Anwar