Centos下rpm包如何制作?(linux怎樣安裝rpm包)
2023-09-06
更新時(shí)間:2023-09-06 00:18:56作者:未知
Centos下rpm包如何制作?
談?wù)揜PM對(duì)好多編譯安裝的朋友來多,RPM安裝是傻瓜安裝。
呵呵,其實(shí)RPM是一種非常有效果的集中部署的解決方案。
yum+RPM是非??焖俦憬莸拇笠?guī)模部署方案。
下面簡(jiǎn)單介紹下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 log file rotation program for Apache Name: %{name} Version: %{version} Release: %{release} Copyright: Apache license Group: %{group} Packager: Andrew Ford <A.Ford@ford-mason.co.uk> 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 a set of output files, the names of which are constructed using template and the current date and time. The template uses the same format specifiers as the Unix date command (which are the same as the standard C strftime library function). %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 make prefix=$RPM_BUILD_ROOT/usr mandir=$RPM_BUILD_ROOT/usr/share/man install 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 |
復(fù)制代碼然后,將源碼包復(fù)制到 /usr/src/redhat/SOURCES/
cp cronolog-1.6.2.tar.gz /usr/src/redhat/SOURCES/
執(zhí)行,rpmbuild -ba cronolog.spec
這樣RPM包就生成了,^_^
ls -l /usr/src/redhat/RPMS/i386/