Windows XP Windows 7 Windows 2003 Windows Vista Windows教程綜合 Linux 系統教程
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟件教程
 Windows教程網 >> Linux系統教程 >> Linux教程 >> linux下制作安裝rpm包的方法

linux下制作安裝rpm包的方法

日期:2017/2/7 14:24:10      編輯:Linux教程
 

RPM是RPM Package Manager(RPM軟件包管理器)的縮寫,這一文件格式名稱雖然打上了RedHat的標志,但是其原始設計理念是開放式的。linux環境下制作安裝rpm包的方法如下: 

一、制作rpm包

以rp-pppoe-3.10為列進行制作過程。

1.下載rp-pppoe-3.10.tar.gz

[root@localhost home]# pwd

/home

[root@localhost home]#

2.解壓

# tar zxvf rp-pppoe-3.10.tar.gz

3.

# cp /home/rp-pppoe-3.10/rp-pppoe.spec /usr/src/redhat/SOURCES/

# cp /home/rp-pppoe-3.10.tar.gz /usr/src/redhat/SOURCES/

3.制作rpm包

# cd /usr/src/redhat/SOURCES/

# rpmbuild -bb rp-pppoe.spec <==僅編譯成 RPM 檔案

# rpmbuild -ba rp-pppoe.spec <==編譯並同時產生 RPM 與 SRPM 檔案

如果編譯成功,就已經制作好rp-pppoe的rpm包了,查看一下

[root@localhost i386]# pwd

/usr/src/redhat/RPMS/i386

[root@localhost i386]# ll

total 420

-rw-r--r-- 1 root root 186322 01-06 11:09 rp-pppoe-3.10-1.i386.rpm

-rw-r--r-- 1 root root 150356 01-06 11:09 rp-pppoe-debuginfo-3.10-1.i386.rpm

-rw-r--r-- 1 root root 63319 01-06 11:09 rp-pppoe-gui-3.10-1.i386.rpm

[root@localhost i386]#

二、linux下rpm包的安裝

1.查看系統有五安裝過rp-pppoe。

[root@localhost i386]# rpm -qa rp-pppoe

rp-pppoe-3.5-1

2.刪除系統已經安裝過的rpm包

[root@localhost i386]# rpm -e rp-pppoe

[root@localhost i386]# rpm -qa rp-pppoe

3.安裝剛才制作好的rpm包

[root@localhost i386]# ls

rp-pppoe-3.10-1.i386.rpm rp-pppoe-gui-3.10-1.i386.rpm

rp-pppoe-debuginfo-3.10-1.i386.rpm

[root@localhost i386]# rpm -ivh rp-pppoe-3.10-1.i386.rpm

Preparing... ########################################### [100%]

1:rp-pppoe ########################################### [100%]

[root@localhost i386]# rpm -qa rp-pppoe

rp-pppoe-3.10-1

[root@localhost i386]# ls /etc/ppp/pppoe-server-options

/etc/ppp/pppoe-server-options

以上信息說明安裝成功了哦。

三、linux下制作安裝rpm包錯誤的解決

在制作rpm(1.3步)的時候出現錯:

RPM build errors:

Installed (but unpackaged) file(s) found:

解決辦法:

將/usr/lib/rpm/macros 中

%__check_files /usr/lib/rpm/check-files %{buildroot} 注釋掉

Copyright © Windows教程網 All Rights Reserved