私はたくさん検索しましたが、成功しませんでした。私の問題は、Arch Linuxに複数のアプリケーションインスタンスをインストールしたいということです。具体的には、最新のSkypeインスタンス2〜3つが必要です。 1つは仕事用、1つは個人用、1つは大学用です。それぞれに異なるディレクトリ、異なるデスクトップ項目、および異なる設定が必要です。これは単にスカイプの問題ではありません。 Windowsではこれは簡単です。インストールパスを異なる設定にすると、別のインスタンスが作成されます。しかし、Linuxではこれを行うことはできません。他のソフトウェアでもこれを行う方法を知りたいです。
オーダーメイドの包装でやりたいと思いますが、どこから始めるべきかわかりません!
ありがとう
答え1
おそらくあなたは間違ったものを探していると思います。プログラム(バイナリ)と設定は非常に異なります。同じプログラムバイナリを別の設定(別のユーザーなど)で使用できます。
Windowsでは、アプリケーションの設定を「プログラムファイル」に保存する傾向がありましたが、この現象はますます減少しています。通常、ユーザーアプリケーションの設定は、WindowsおよびLinuxのホームディレクトリのどこかに保存されます。 Linuxで設定をアプリケーションディレクトリに保存することは/etc
。
別の設定でアプリケーションを2回実行する方法を探しています。
環境HOME
変数は通常、ホームディレクトリの場所に設定されます。設定にホームディレクトリを使用するアプリケーションは、環境変数のみを読み取ることがHOME
できます。アプリケーションを実行する前に変更すると、これらの要件を満たすのに十分です。コマンドラインからこれを行うか、単純なシェルスクリプトを作成することで実行できます。
#!/bin/bash
mkdir -p ~/.work
export HOME=~/.work
skype
これがうまくいかない場合は、アプリケーションを設定して使用するためにより極端なアクションが必要になることがあります。chroot環境。
答え2
シンプルでクリーンな方法は、他のユーザーからそのアプリケーションを起動することです。
この方法で実行されたバイナリは同じです(/usrなど)しかし$HOME
異なります。
このソリューションにはいくつかの重要な欠点があり、お客様の要件と互換性がない可能性があります。
- 各インスタンスには新しいユーザーが必要です
- できない共有するそれらの間でデータを簡単に転送
一つ進化この概念の鍵は、次のようにアプリケーションを起動することです。仮想デバイス;
私はこれが上記の問題を克服した以前の解決策の進化だと思います。
- 新しいインスタンスは次のように簡単に作成できます。クローン仮想デバイス
- データ共有可能簡単にVM間、VMとホスト間
欠点は、リソースがたくさん必要な点
ですが、心に留めておいてください。これは比率VM発明のアップストリーム!