Redhat

在 RHEL 5.3 上通過 rpm 包管理器創建 rpm 時獲得權限被拒絕

  • December 27, 2012

我正在嘗試通過 rpm 包管理器創建 rpm。以下是我的規格文件:

**# This is a spec file for openldappkg**

%define _topdir /osp/rpmBuildOpenLdap
%define name    openldap
%define release 1
%define version     2.4.30
%define buildroot   %{_topdir}/%{name}-%{version}-root

BuildRoot:  %{buildroot}
Summary:        openldap pkg
License:        GPL
Name:       %{name}
Version:        %{version}
Release:        %{release}
Source:         %{name}-%{version}.tgz
Prefix:         /usr
Group:          

%description
The openldap pkg program downloads files installs openldap for use.

%prep
%setup -q

%build
./configure
make

%install
make install prefix=$RPM_BUILD_ROOT/usr

############################################################

以下是我得到的錯誤:

{跳過部分日誌}

Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.60752
+ umask 022
+ cd /osp/rpmBuildOpenLdap/BUILD
+ cd openldap-2.4.30
+ LANG=C
+ export LANG
+ unset DISPLAY
+ ./configure
/var/tmp/rpm-tmp.60752: line 30: ./configure: Permission denied
error: Bad exit status from /var/tmp/rpm-tmp.60752 (%build)

RPM 建構錯誤:來自 /var/tmp/rpm-tmp.60752 (%build) 的錯誤退出狀態

當我通過 ./configure -> make -> make install 直接安裝包時,它已成功安裝,但是當我嘗試通過 rpm 創建包時,問題就來了。

請提出您寶貴的建議。

感謝您。

終於找到問題了。問題出在源頭上。

我想用根據我的要求修改的文件替換源中的一些文件,為此我解壓縮原始源文件並放入修改後的文件,然後將其壓縮回來。

現在,當我使用這個更改的源創建包時,權限被拒絕錯誤即將到來。雖然我的問題沒有解決,但我還是找到了根本原因。只是想和大家分享。

謝謝。

臨時目錄是否可以掛載noexec?

剛剛注意到我錯過了哪個目錄配置已用完-應該是“/osp/rpmBuildOpenLdap/BUILD 的某些部分是否可以掛載 noexec?”

引用自:https://serverfault.com/questions/383404