LINUXの親バージョンRPMからソフトウェアパッケージを削除した後、空のディレクトリが残ります。

LINUXの親バージョンRPMからソフトウェアパッケージを削除した後、空のディレクトリが残ります。

RPMバージョン4.8.0:

[root@sdl34815 x8664]# rpm -ivh tmfi1700-17.00.00.00.rpm
Preparing...         ########################################### [100%]
   1:tmfi1700        ########################################### [100%]
[root@sdl34815 x8664]# rpm -ev tmfi1700
[root@sdl34815 x8664]# ls /opt/manoj
ls: cannot access /opt/manoj: No such file or directory

RPMバージョン4.11.2:

sdl34817:/opt/BASE/Packages/Linux/x8664 # rpm -ivh tmfi1700-17.00.00.00.rpm
Preparing...                   ################################# [100%]
Updating / installing...
   1:tmfi1700-17.00.00.00-1    ################################# [100%]
sdl34817:/opt/BASE/Packages/Linux/x8664 # rpm -ev tmfi1700
Preparing packages...
tmfi1700-17.00.00.00.rpm
sdl34817:/opt/BASE/Packages/Linux/x8664 # ls -R /opt/manoj
/opt/manoj:
client:
/opt/manoj/client:
17.00
/opt/manoj/client/17.00:

rpm -qlvp tmfi1700-17.00.00.00.rpm以下を提供します。

drwxr-xr-x 2 root root 0 Jan 24 2019 /opt/manoj
drwxr-xr-x 2 root root 0 Jan 24 2019 /opt/manoj/client
drwxr-xr-x 2 root root 0 Jan 24 2019 /opt/manoj/client/17.00
drwxr-xr-x 2 root root 0 Jan 24 2019 /opt/manoj/client/17.00/lib64

答え1

これはバージョンによるものではありませんrpm。パッケージングするときは、どのファイルとフォルダを含めるかを決定する必要があります。以下を使用する場合:

%files
/opt/manoj/*

これにより、パッケージはそのディレクトリ内のすべてのファイルを所有します/opt/manojが、ディレクトリ自体は所有しません/opt/manoj。それからあなたは使うべきです

%files
/opt/manoj

これにより、パッケージはその/opt/manojディレクトリ(およびその下のすべてのエントリ)を再帰的に所有します。

関連情報