Che*_*evy 3 redhat rhel5 rpm user-permissions
我的任务是设置一个 RHEL 5.x 构建主机,它可以为普通用户构建 RPM。
在带有 rpm 版本 4.8 的 RHEL 6.x 上,我有/usr/lib/macros:
# Path to top of build area.
%_topdir %{getenv:HOME}/rpmbuild
Run Code Online (Sandbox Code Playgroud)
在带有 rpm 版本 4.4 的 RHEL 5.x 上,%{getevn:HOME} 不可用。
我知道我可以使用/home/someuser/.rpmmacros:
%_topdir /home/someuser/rpmbuild
Run Code Online (Sandbox Code Playgroud)
这将适用于该用户,但是我不想单独为每个用户执行此操作。此外,由于.rpmmacro不会扩展,${HOME}或者~我怀疑使用它们是不安全的。这反过来使/etc/skel这项任务变得不稳定(或者我怀疑)。
简而言之,我的问题是:如何设置允许所有用户在其主目录中构建 RPM 包的 RHEL 5.x 主机?
如果可能的话,让你的构建服务器 EL6。这样以后会省去很多麻烦...
对于只构建偶尔的 RPM 包的简单构建框,让您的用户使用mock. 您可以在 EPEL 存储库中找到它。
使用mock构建所有正确的依赖关系,已经在chroot环境构建它指定一个RPM保证。
添加应该能够访问用户谁mock的mock组。
然后这些用户可以使用如下命令构建 RPM:
mock -r epel-5-x86_64 file.src.rpm
Run Code Online (Sandbox Code Playgroud)
如果您需要构建大量RPM,或者您正在创建一个存储库,您可能需要使用koji 之类的东西来设置一个自动构建服务器。
| 归档时间: |
|
| 查看次数: |
785 次 |
| 最近记录: |