为什么要 .spec
转成.rpm
文件,因为在一些工作中,有些服务器是权限设置特严格,任何文件的创建都是不被允许的,需要特定安装,如.rpm
文件安装。
.spec
文件是一个配置规范文件,主要用于RPM软件包的编译过程。 它详细说明了软件包如何被配置、需要打哪些补丁、安装哪些文件、安装到哪里以及安装过程需要哪些系统级别的活动。
.spec
文件由多个段组成,这些段分别定义了rpm的编译
、打包
、安装
等阶段的工作内容。
spec基本说明
.spec文件
创建 demo.spec
文件.内容如下
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| Name:xxxx Version:1.0.0 Summary:xxxx Release:1 License:1 Group:Application/System Vendor:xxx
%description %prep %build %pre %post groupadd -r www useradd -r -g www -s /sbin/nologin -d /home/www -M www chown -R www:www /home/nginx %preun %postun %files /home/nginx
%changelog
|
.spec目录变成.rpm
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
| sudo yum install rpm-build sudo dnf install rpm-build
sudo yum install rpm-devtools sudo dnf install rpm-devtools
rpmdev-setuptree
~/rpmbuild/ ├── BUILD ├── BUILDROOT ├── RPMS ├── SOURCES ├── SPECS └── SRPMS
cd /root/rpmbuild/SPECS && rpmbuild -bb demo.spec
cd /root/rpmbuild/RPMS/aarch64/ rpm -qpl demo-1.0.0-1.aarch64.rpm
|
.rpm内容解压
1 2 3 4 5
| sudo yum install rpm2cpio cpio
rpm2cpio demo-1.0.0-1.aarch64.rpm | cpio -idmv
|