%build"编译连接脚本程序(build)开始执行" make %install"安装脚本程序(install)开始执行" make install %clean"建包结束后清理脚本程序(clean)开始执行" %pre"安装前执行脚本程序(pre)开始执行" %post"安装后执行脚本程序(post)开始执行" %preun"卸载前执行脚本程序(preun)开始执行" %postun"卸载后执行脚本程序(...
%prerpm安装前执行的脚本 %postrpm安装后执行的脚本 %preunrpm卸载前执行的脚本 %postunrpm卸载后执行的脚本 %files定义那些文件或目录会放入rpm中 这里会在虚拟根目录下进行,千万不要写绝对路径,而应用宏或变量表示相对路径。如果描述为目录,表示目录中除%exclude外的所有文件。 %defattr(-,root,root)指定包装文件...
由前面的日志了解到,生成rpm除了源码外,最重要的就是懂得编写.spec脚本。rpm建包的原理其实并不复杂,可以理解为按照标准的格式整理一些信息,包括:软件基础信息,以及安装、卸载前后执行的脚本,对源码包解压、打补丁、编译,安装路径和文件等。 实际过程中,最关键的地方,是要清楚虚拟路径的位置,以及宏的定义。 二、关...
$RPM_BUILD_ROOT是指开头定义的BuildRoot,而$RPM_BUILD_DIR通常就是指/usr/src/asianux/BUILD,其中,前面的才是%file需要的。 %pre rpm安装前执行的脚本 %post rpm安装后执行的脚本 %preun rpm卸载前执行的脚本 %postun rpm卸载后执行的脚本 %files 定义那些文件或目录会放入rpm中 这里会在虚拟根目录下进行,千...
(3)httpd脚本文件 1. 4、在 SPECS 目录下创建 httpd.spec $ cd rpmbuild/SPECS/ 查看系统组: [root@RS1 rpm-4.11.3]# less /usr/share/doc/rpm-4.11.3/GROUPS $ vim httpd.spec Name:httpd Version:2.4.34 Release: 1%{?dist} Summary:wang123 ...
一、编写spec脚本 由前面的日志了解到,生成rpm除了源码外,最重要的就是懂得编写.spec脚本。rpm建包的原理其实并不复杂,可以理解为按照标准的格式整理一些信息,包括:软件基础信息,以及安装、卸载前后执行的脚本,对源码包解压、打补丁、编译,安装路径和文件等。
%preun <==<wiz_tmp_highlight_tag>rpm卸载前执行的脚本 if [ $1 ==0 ];then /sbin/service %{name} stop >/dev/null 2>&1 /sbin/chkconfig -del %{name} fi 说明: $1等于0就是卸载 %postun <==<wiz_tmp_highlight_tag>rpm卸载完成后执行的脚本 ...
对于systemd命令,您应该使用$1进行测试,以查看软件包是首次安装、升级还是删除,从而确定要运行哪个...
接着,RPM执行卸载前脚本,如果有脚本的话。...请注意RPM卸载软件时几乎替你在操作系统上做了所有的事,这很棒。但是,这也意味着RPM在卸载你系统上的重要软件时,也一样铁面无私。例如:RPM:RPM能卸载它自己吗,答案当然是可以。...大多数情况下,RPM的依赖检测能检测到你所需要卸载的软件与其他软件的依赖关系,这...
%pre rpm安装前执行的脚本 %post rpm安装后执行的脚本 %preun rpm卸载前执行的脚本 %postun rpm卸载后执行的脚本 %preun %postun 的区别是什么呢? 前者在升级的时候会执行,后者在升级rpm包的时候不会执行 %files 定义那些文件或目录会放入rpm中 这里会在虚拟根目录下进行,千万不要写绝对路径,而应用宏或变量...