如何在rpm中执行Python脚本
我需要开发一个RPM包,这个包要合并一些文件,检查是否有已经存在的文件和目录,还要重命名文件等等。
我写了一个Python脚本来完成这些工作,所以执行命令python3 my_script.py时,它运行得非常好。
现在我需要创建一个RPM包,这个包应该能执行这个Python脚本。
我查了一下rpmbuild,但是当我安装这个RPM包时,什么都没有发生,可能我走错了方向。
有没有什么建议或者网上的教程呢?
谢谢!
1 个回答
2
我通过网上找到的一些指南和教程解决了我的问题。下面是一个示例 .spec 文件,它可以生成一个 .rpm 文件,并将安装文件保存在 /opt/mytest 目录下:
Name: mytest
Version: 1.0
Release: 1%{?dist}
Summary: A test script
Group: Utilities
License: GPL
URL: http://www.mypage.com
Source0: mytest-1.0.tar.gz
BuildArch: noarch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
%description A test script inside a simple RPM package
%prep
%setup -q
%build
%install
rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT/opt/mytest
install app.py $RPM_BUILD_ROOT/opt/mytest/app.py
%clean
rm -rf $RPM_BUILD_ROOT
%files
%dir /opt/mytest
%defattr(-,root,root,-)
/opt/mytest/app.py
/opt/mytest/app.pyc
/opt/mytest/app.pyo
%post
chmod 755 -R /opt/mytest
cd /opt/mytest
python3 app.py