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 次 |
最近记录: |