私の職場では、RedHatとSuseのマシンに通常のユーザーアカウントを持っています。 root権限がありません。
インターネットから(ソースまたはバイナリから)ダウンロードしたソフトウェアをインストールするにはどうすればよいですか?
たとえば、今私はGeany IDEを自分で使用するためにインストールしたいと思います。ソースをダウンロードしてコンパイルしようとしました、そしてRPMをインストールしようとしましたが、これらのどれもが必要なので、ルート。
あなたはcanソフトウェアを自分のホームディレクトリにインストールします。ソースからのコンパイルに問題がなく、パッケージがautomakeを使用している場合は、configureで次のオプションを使用できます。
--prefix=$HOME/install
または何でも。同様に、rpmにもプレフィックスオプションがあります。ただし、これは、rpmが再配置可能であるbuiltである場合にのみ機能します。
私は JuJ を使用しています。これにより、$ HOME/.jujuディレクトリ内に(パッケージマネージャーのみを含む)非常に小さなLinuxディストリビューションを作成できます。
これにより、proot経由でアクセス可能なホームディレクトリ内にカスタムシステムを配置できるため、root権限なしでパッケージをインストールできます。すべての主要なLinuxディストリビューションで正常に動作します。唯一の制限は、JuJuが推奨される最小バージョン2.6.32のLinuxカーネルで実行できることです。
たとえば、JuJuをインストールしてpipをインストールするには、次のように入力します。
$>juju -f
(juju)$> pacman -S python-pip
(juju)> pip
ほとんどの場合、PREFIXを渡して、ホームディレクトリにインストールするように構成できます。
./configure --prefix=/home/ioks/bin
これにより、権限の問題が回避される場合があります。
以下は、RPMの非root使用を説明する非常に素晴らしいドキュメントです。
「RPMを操作するにはシステム管理者権限が必要だと言われましたか?騙されました。」
標準の場所(/ usr/binなど)にインストールする場合、簡単な答えは、システム管理者が特別な設定を行わない限り、インストールできないということです。
ソースからコンパイルする場合、ほとんどのパッケージには、非標準のインストールターゲットを設定できる--prefixオプションがあります。これにより、他のソフトウェアパッケージで使用できるライブラリを含め、ホームディレクトリにコンテンツをインストールできます。
うーん。これはおそらくユーザーが実行できることではありませんが、「標準」のシステムインストールディレクトリをオーバーレイするユーザーごとの「オーバーレイ」ファイルシステム(union-fsなど)があるのは理にかなっているのではないでしょうか。 「通常の」場所にソフトウェアをインストールする特権のないユーザー。
また、グローバルunion-fsファイルシステムを使用して、管理者がインストールした非標準SW(多くのシステムでは/ usr/local/*にあることが多い)を配布パッケージから分離することもできます。 (おそらく、更新を分離するためにも、 "ロールバック" ala XPシステムの復元)も可能にします)。
うーん
私はあなたと同じ問題を抱えています。まだ試していませんが、この問題では Linuxbrew が便利なようです。