cd my-dir;
rpm2cpio to-install.rpm | cpio -idv
RPM パッケージをインストールせずに抽出する方法 (rpm 抽出コマンド) を参照してください。
rpm パッケージの内容を抽出する方法
export ins=foo-bar.rpm
rpm2cpio $ins | cpio -idv
tar.gz
の抽出方法 アーカイブ
gzip -dc foo-bar.tar.gz | tar xvf –
cd foo-bar-dir
tar.gz
を抽出する方法 パッケージを現在のディレクトリに
export file=foo-bar.tar.gz
# Note that `xovf` switch order *matters*
gzip -dc $file | tar -xovf -
ルート以外でバイナリをビルドする方法
./configure --prefix=$HOME && make && make install
root 権限なしで rpm を「インストール」することに対する「本当の」答えは、できないことだと思います。 .しかし、実際にインストール プロセスを開始できると仮定して...
RPM は、通常はファイルシステム階層に従っている仕様ファイル (.spec) で提供される指示のリストを使用してインストールします。その階層のほとんどのパスは、ほとんどの場合、オペレーティング システムのパスであり、ユーザーのパスではありません。そのため、ユーザー名が RPM のインストール先のすべてのパスにアクセスできない限り、確実に失敗します。すべてのパスの前に /home/me
を付ける RPM を作成すると、 (またはあなたが所有する他のパス)、それはうまくいくでしょう。これには、他の回答で説明されているように src.rpm を取得して抽出し、再構築する必要があります。その頃には、root アクセス権を取得するか、ソフトウェアを最初から構築することを検討することになるかもしれません (通常、多くのマシンにソフトウェアを配布する予定がない場合に行うことです)。
手動ビルド プロセスに役立つ巧妙なトリックがあります。たとえば、RPM に既にリストされている依存関係を利用して、すべての依存関係を取得できます:https://stackoverflow.com/a/13877738/1236128.