我正在创建一个rpm,应该在centos 7中安装httpd,php,python3。
Name: test
Version: 1
Release: 0
Summary: Securaa RPM Creates specific files
Group: Applications/test
License: GPL
Source0: test-1.tar.gz
BuildArch: noarch
BuildRoot: %{_tmppath}/%{name}-buildroot
%description
Creates YUM repository pointing local network CentOS repository
%prep
%setup -q
%install
mkdir -p "$RPM_BUILD_ROOT"
cp -R * "$RPM_BUILD_ROOT"
%clean
rm -rf "$RPM_BUILD_ROOT"
%post
echo ..
echo "Executing script"
/etc/test/test.sh
%files
%defattr(-,root,root,-)
/etc/test/test.sh
在test.sh
中:
yum install httpd
yum install php
yum install -y python36u python36u-libs python36u-devel python36u-pip
已构建rpm,执行rpm后未安装必要的软件包。
答案 0 :(得分:2)
如果您的自定义软件包需要其他软件包作为依赖项,请在您的规范文件中使用Requires
列出这些软件包;不要尝试通过Shell脚本安装它们。
例如,对于您的包裹:
Requires: httpd php python36u python36u-libs python36u-devel python36u-pip