在 RPM %files 部分是否可以递归地指定一个目录及其所有文件和子目录?
In an RPM %files section is it possible to specify a directory and all of its files and subdirectories recursively?
我正在开发一个以 RPM 形式打包东西的打包系统。我有一个案例,指定我想要一个目录及其下的每个文件和子目录包含在 RPM 中会非常方便。这当然会在 %files
部分。
有办法吗?我注意到有一种方法可以指定要包含的文件列表来自文件。我是否必须在 %install
部分中 运行 find
将该列表生成到文件中,然后稍后在 %files
部分中使用该文件?
这是 rpm 规范文件的默认行为:
%files
/directory
表示:/directory
和下面的所有文件和目录递归。
注意: 这仅包括您放入 %{rpmbuildroot}
中的文件,而不包括您将安装此 rpm 的系统上存在的文件!
另一个例子
%files
/usr/bin/*
确保 "official directories" 像 /usr/bin
不属于你的包(因为 rpm
不允许两个包 "own" 同一个文件或目录).此行将递归打包您放置在 %{rpmbuildroot}/usr/bin/
下的所有文件和文件夹,但不打包 /usr/bin
本身。
我正在开发一个以 RPM 形式打包东西的打包系统。我有一个案例,指定我想要一个目录及其下的每个文件和子目录包含在 RPM 中会非常方便。这当然会在 %files
部分。
有办法吗?我注意到有一种方法可以指定要包含的文件列表来自文件。我是否必须在 %install
部分中 运行 find
将该列表生成到文件中,然后稍后在 %files
部分中使用该文件?
这是 rpm 规范文件的默认行为:
%files
/directory
表示:/directory
和下面的所有文件和目录递归。
注意: 这仅包括您放入 %{rpmbuildroot}
中的文件,而不包括您将安装此 rpm 的系统上存在的文件!
另一个例子
%files
/usr/bin/*
确保 "official directories" 像 /usr/bin
不属于你的包(因为 rpm
不允许两个包 "own" 同一个文件或目录).此行将递归打包您放置在 %{rpmbuildroot}/usr/bin/
下的所有文件和文件夹,但不打包 /usr/bin
本身。