RPM 升级后一些文件被删除
Some files are deleted after RPM upgrade
我有 2 个 RPM 文件。例如,在 RPM1 中我有 File.xml。在 RPM2 中,这个文件不存在,但我通过一些脚本创建了它。据我所知,升级后,如果该文件不在 RPM2 列表中,它将被删除。 Spec文件中有没有不删除这个文件的配置?
最简单的解决方案是在 RPM2 中创建一个虚拟文件。但我想使用 SPEC 文件。
if the file is not in the list of RPM2 it will be deleted
没有。文件列表是 rpm 保留的文件。如果您删除 rpm,那么这些文件将被删除。例如,您在 %post 脚本中创建的自定义文件将不会被删除,因为 rpm
不知道它们属于谁。
规范文件的示例部分:
%post
echo "content" > /etc/file.xml
%files
/etc/file2.xml
当您安装使用上述规格文件创建的 rpm 时; /etc/file.xml
和 /etc/file2.xml
将出现在系统上。
如果您现在删除该 rpm,/etc/file2.xml
将被删除(因为在 %files
部分),但 /etc/file.xml
将保留,因为它不属于您的 rpm。
我有 2 个 RPM 文件。例如,在 RPM1 中我有 File.xml。在 RPM2 中,这个文件不存在,但我通过一些脚本创建了它。据我所知,升级后,如果该文件不在 RPM2 列表中,它将被删除。 Spec文件中有没有不删除这个文件的配置?
最简单的解决方案是在 RPM2 中创建一个虚拟文件。但我想使用 SPEC 文件。
if the file is not in the list of RPM2 it will be deleted
没有。文件列表是 rpm 保留的文件。如果您删除 rpm,那么这些文件将被删除。例如,您在 %post 脚本中创建的自定义文件将不会被删除,因为 rpm
不知道它们属于谁。
规范文件的示例部分:
%post
echo "content" > /etc/file.xml
%files
/etc/file2.xml
当您安装使用上述规格文件创建的 rpm 时; /etc/file.xml
和 /etc/file2.xml
将出现在系统上。
如果您现在删除该 rpm,/etc/file2.xml
将被删除(因为在 %files
部分),但 /etc/file.xml
将保留,因为它不属于您的 rpm。