创建rpm包时,如何保持与我提供的源码目录相同的权限?
When creating an rpm package, how can I retain the permissions same as that of the source directory I have provided?
我打包的源目录对某些目录和文件有不同的权限,我是否必须为每个目录和文件明确使用 %attr?有没有办法只使用与来源相同的权限?
相关规范文件部分:
%安装
cp -rp $RPM_BUILD_DIR/%{名称}-%{版本}/opt $RPM_BUILD_ROOT
cp -rp $RPM_BUILD_DIR/%{名称}-%{版本}/var $RPM_BUILD_ROOT
%file 部分是:
%文件
/选择
/var
编辑:
解决方案(感谢 Chris Maes)
使用 %defattr(-,-,-)
在这种情况下,只需使用破折号 (-
):
%files
%defattr(-, user, group)
/path/to/files
来自 documentation:
If a particular attribute does not need to be specified (usually because the file is installed with that attribute set properly), then that attribute may be replaced with a dash.
我打包的源目录对某些目录和文件有不同的权限,我是否必须为每个目录和文件明确使用 %attr?有没有办法只使用与来源相同的权限?
相关规范文件部分: %安装 cp -rp $RPM_BUILD_DIR/%{名称}-%{版本}/opt $RPM_BUILD_ROOT cp -rp $RPM_BUILD_DIR/%{名称}-%{版本}/var $RPM_BUILD_ROOT
%file 部分是: %文件 /选择 /var
编辑: 解决方案(感谢 Chris Maes) 使用 %defattr(-,-,-)
在这种情况下,只需使用破折号 (-
):
%files
%defattr(-, user, group)
/path/to/files
来自 documentation:
If a particular attribute does not need to be specified (usually because the file is installed with that attribute set properly), then that attribute may be replaced with a dash.