我正在开发一个将系统打包为RPM的打包系统。我有一种情况,如果指定我想要一个目录以及RPM中包含的每个文件和子目录,将非常方便。当然,这将在%files
部分中。
有没有办法做到这一点?我注意到有一种方法可以指定要包含的文件列表来自文件。我是否需要运行find
部分中的%install
才能将该列表生成为文件,然后稍后在%files
部分中使用该文件?
答案 0 :(得分:2)
这是rpm规范文件的默认行为:
%files
/directory
表示:/directory
和下面的所有文件和目录都是递归的。
注意:这仅包括您放入%{rpmbuildroot}
中的文件,不包括将要安装此rpm的系统上存在的文件!
另一个示例
%files
/usr/bin/*
请确保某些“官方目录”(例如/usr/bin
)不属于您的软件包(因为rpm
不允许两个软件包“拥有”相同的文件或目录)。该行将递归打包您放置在%{rpmbuildroot}/usr/bin/
下的所有文件和文件夹,而不是/usr/bin
本身。