web-dev-qa-db-ja.com

rpm.specファイルの%filesからディレクトリパスを除外または削除します

私のスペックファイルのパスは次のようになります:

/opt/OV
/opt/OV/NonOV
/opt/OV/NonOV/ABCD
/opt/OV/NonOV/ABCD/ABC
/opt/OV/NonOV/ABCD/ABC/Test1
/opt/OV/NonOV/ABCD/ABC/Test1/test1.txt
/opt/OV/NonOV/ABCD/ABC/Test2
/opt/OV/NonOV/ABCD/ABC/Test2/test2.txt
/opt/OV/newconfig
/opt/OV/newconfig/inventory
/opt/OV/newconfig/inventory/HPOvXYZ.xml

このパスをスペックファイル/opt/OV/newconfig/inventory "に含めたくないのは、複数のrpmにこの共通パスがあると、「パッケージのファイルとの競合」というエラーが発生するためです。

以下のように%excludesコマンドで確認しました。

%files
%exclude /opt/OV/newconfig/inventory

したがって、このコマンドの問題は、直接除外し、再帰的にファイルすることです。 rpm.specファイルのパスは次のようになります。

/opt/OV
/opt/OV/NonOV
/opt/OV/NonOV/ABCD
/opt/OV/NonOV/ABCD/ABC
/opt/OV/NonOV/ABCD/ABC/Test1
/opt/OV/NonOV/ABCD/ABC/Test1/test1.txt
/opt/OV/NonOV/ABCD/ABC/Test2
/opt/OV/NonOV/ABCD/ABC/Test2/test2.txt
/opt/OV/newconfig

このパスも/opt/OV/newconfig/inventory/HPOvXYZ.xmlを除外しています。コマンドがあるので、ディレクトリパスのみを除外/削除します。

前もって感謝します。

11
Prem
%files
/opt/OV
%exclude %dir /opt/OV/newconfig/inventory

これにより、ファイルリストに/opt/OV/newconfig/inventory/HPOvXYZ.xmlが残ります。

10
msuchy