インストール中にユーザー定義の引数をRPMに渡すことは可能ですか?
例えば:
~>rpm -i sample.rpm -license_path=/path/
また
~>rpm -i -license_path=/path/ sample.rpm
また
~>rpm -i -somearg sample.rpm
-サクティ
RPMは、ユーザー定義の引数を取ることを意図したものではありません。
RPM-インストール時間パラメータを参照してください
回避策の1つは、rpmのインストール後スクリプトでstdinからの入力を要求することです。この場合、ファイルまたはヒアドキュメントからstdioをリダイレクトすることで、回答を渡すことができます。
>rpm -i sample.rpm <<__NOT_RECOMMENDED__
somearg
__NOT_RECOMMENDED__
再配置可能なRPMを作成しようとしているようです。
ファイルのプリアンブルに、.spec
再配置可能なファイルパスのプレフィックスを入れます。たとえば、ファイルへのフルパスが
/base/path/to/my/file
その後、/base
RPMのインストール中に変更できますが/path/to/my/file
、同じままです。
.spec
ファイル
に入れるものは次のとおりです。
#Preamble: Summary, Name, etc.
Prefix: /base
%install
ファイルのおよび%files
セクションに再配置可能なすべてのファイルをリストするときに、このプレフィックスに言及していることを確認してください.spec
。再配置可能なRPMが機能しない場合があるので、これらのことも考慮してください。
%files
%{prefix}/path/to/my/file
これで、RPMをインストールするときに、別のプレフィックスを指定できます。
rpm -i sample.rpm --prefix /tmp
これにより、ファイルがにインストールされます/tmp/path/to/my/file
。