私は大規模なコンピュータシステムの管理者ではないユーザーです。私のシステムにインストールされていない最新のパッケージが必要です。 yumを使ってインストールしたいです。 sudo、admin、またはrootアクセス権を持たないユーザーとして、パッケージ管理を使用して自分のホームディレクトリにパッケージをインストールできますか?いつもmake from sourceを使うことができますが、yumを使うことができれば人生は簡単になります。
答え1
を使用する代わりに、yum
必要なrpmを見つけてダウンロードしてください。まだroot権限なしで直接インストールすることはできませんが、RPMパッケージは実際に解凍できるコンテンツを含むクールな.cpioファイルです。最も簡単な方法は、おそらくmc
(「Midnight Commander」)ファイルブラウザ(これまで作成されたソフトウェアの中で最も優れた部分の1つ)を使用することです。これにより、ファイルの内容を参照して.rpm
ファイルから直接コピーできます。
それ以外はrpm2cpio
.cpioに変換してから、cpio
その中のファイルを抽出して正しい場所に置くことができます。どちらもすでにRedhatまたはFedoraシステムにインストールされています。以下は「xsnow」インストールの例です(空のディレクトリにインストールすることをお勧めします)。
»rpm2cpio xsnow-1.42-17.fc17.x86_64.rpm > xsnow.cpio
私のシステムfc17 x86_64の.rpmが見つかりました。これは、他のコンポーネントに関連付けられているプリコンパイルされたバイナリであるため、重要です。次に、.cpioを抽出します。
»cpio -idv < xsnow.cpio
./usr/bin/xsnow
./usr/share/doc/xsnow-1.42
./usr/share/doc/xsnow-1.42/README
./usr/share/man/man6/xsnow.6.gz
212 blocks
Press any key to continue...
このディレクトリツリーを参照すると、依存関係を解決するのに役立つ可能性があるいくつかのメタ情報を除いて、必要なものがすべてそこにあります。これは以下を使用して見つけることができますrpm -q -p [package] --[query]
。
»rpm -q -p xsnow-1.42-17.fc17.x86_64.rpm --requires
warning: xsnow-1.42-17.fc17.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID d2382b83: NOKEY
libX11.so.6()(64bit)
libXext.so.6()(64bit)
libXpm.so.4()(64bit)
libc.so.6()(64bit)
libc.so.6(GLIBC_2.2.5)(64bit)
libc.so.6(GLIBC_2.3.4)(64bit)
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rtld(GNU_HASH)
rpmlib(PayloadIsXz) <= 5.2-1
確かに私はすでにそのようなものをすべて持っています。今やるべきことは、xsnow実行可能ファイルを自分のホームディレクトリにすでにbinを含む$ PATHに入れることです。
»cp ./usr/bin/xsnow ~/bin
ヴィオラ!これで、xsnow
xsnowがKDEと正しく機能しないことがわかったので、何でも入力して見ることができます。 :(しかし、プロセスのポイントが明確であることを願っています。ホームディレクトリの外では何もする必要はありません。
ライブラリをインストールする必要がある場合は、自宅にライブラリを作成して次の場所に追加する必要があります~/.bashrc
。
export LD_LIBRARY_PATH=/home/you/lib
答え2
ほとんどのバイナリは/
。
以下の非ルートパッケージマネージャがあります。Gentooプレフィックスそしてルートレス GoboLinux可能0個設置。
あなたが言ったように自分でコンパイルしたり、chrootを使ってこの問題を軽減することができます。しかし、chrootの最大の障害は、前提条件とカーネル共有オブジェクトへの接続です。
答え3
ここで他の答えを読んだ後、使用をあきらめてyum
見つけました。このガイドライン私のために働きました(リンクに記載されているものは少し修正されました)。
ユーザーフォルダにminicondaをインストールします。
$ wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
$ ./Miniconda3-latest-Linux-x86_64.sh
ローカルインストールパッケージ
$ conda install <pkg-name>
完璧!
プロンプトで「はい」と答えるか、デフォルトを選択すると、condaパッケージマネージャでインストールしたすべてのエントリが配置されます~/miniconda3/
。したがって、私の場合は、実行後にconda install R glpk
バイナリの次の場所が表示されます。
$ which conda R glpsol
~/miniconda3/bin/conda
~/miniconda3/bin/R
~/miniconda3/bin/glpsol
私はまだを使用することを好みますyum
が、このソリューションを使用すると引き続き使用できます。