谈论RPM对好多编译安装的朋友来多,RPM安装是傻瓜安装。
呵呵,其实RPM是一种非常有效果的集中部署的解决方案。
yum+RPM是非常快速便捷的大规模部署方案。
下面简单介绍下rpm的制作:
以cronolog为例:
首先下载cronolog的源码包。
解开源码包,tar xzvf cronolog-1.6.2.tar.gz
找到 cronolog.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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
vim cronolog.spec
%define name cronolog
%define version 1.6.2
%define release 1
%define group System Networking/Daemons
Summary: a flexible logfilerotation programforApache
Name: %{name}
Version: %{version}
Release: %{release}
Copyright: Apache license
Group: %{group}
Packager: Andrew Ford
URL: http://www.ford-mason.co.uk/resources/cronolog/
Source: http://www.ford-mason.co.uk/resources/cronolog/cronolog-%version.tar.gz
BuildRoot: /tmp/%{name}-root
%description
"cronolog"is a simple program that reads log messages from its input
and writes them to asetof output files, the names ofwhichare
constructed using template and the currentdateandtime. The
template uses the sameformatspecifiers as the Unixdatecommand
(whichare the same as the standard C strftime libraryfunction).
%changelog
%prep
%setup -n %{name}-%{version}
%build
./configure
make
%install
rm-rf $RPM_BUILD_ROOT
mkdir-p $RPM_BUILD_ROOT/usr/share/doc/%{name}-${RPM_PACKAGE_VERSION} -m 755
makeprefix=$RPM_BUILD_ROOT/usrmandir=$RPM_BUILD_ROOT/usr/share/maninstall
install-m 644 README $RPM_BUILD_ROOT/usr/share/doc/%name-${RPM_PACKAGE_VERSION}
#install -m 644 $RPM_SOURCE_DIR/doc/cronolog.1m $RPM_BUILD_ROOT/usr/man/man1/cronolog.1
#install -m 755 $RPM_SOURCE_DIR/src/cronolog $RPM_BUILD_ROOT/usr/sbin/cronolog
#strip $RPM_BUILD_ROOT/usr/sbin/* || echo Ignored strip on a non-binary file
%post
%preun
%postun
%clean
rm-rf $RPM_BUILD_ROOT
%files
#%attr(-,root,root) /usr/share/doc/%{name}-%{version}/README
%attr(-,root,root)/usr/sbin/cronolog
%attr(-,root,root)/usr/sbin/cronosplit
#%files man
%attr(644,root,root)/usr/share/man/man1/*.1*
%doc README
|
复制代码然后,将源码包复制到 /usr/src/redhat/SOURCES/
cp cronolog-1.6.2.tar.gz /usr/src/redhat/SOURCES/
执行,rpmbuild -ba cronolog.spec
这样RPM包就生成了,^_^
CentOS 6.6系统如何安装 CentOS 6.6系统安装教程
Centos8如何关闭终端响铃 Centos8关闭终端响铃方法
Centos8终端如何设置字符编码 Centos8终端设置字符编码方法
centos 7 自带的 php 5.4升级为 5.6的教程
CentOS7.6系统下使用yum配置lnmp环境的教程
CentOS 7 安装python3.7.1的方法及注意事项