RPM包的安裝與升級
說了這麼多,終於可以開始安裝了,我們先安裝apache程式。之所以選擇安裝apache程式,是因為我們後續安裝原始碼包時也計劃安裝apache程式,這樣就能初步認識到原始碼包和RPM包的區別。不過需要注意的是,同一個程式的RPM包和原始碼包可以安裝到一臺伺服器上,但是隻能啟動一個,因為它們需要佔用同樣的80埠。不過,如果真在生產伺服器上,那麼一定不會同時安裝兩個apache程式,容易把管理員搞糊塗,而且會佔用更多的伺服器磁碟空間。
- RPM 包預設安裝路徑
原始碼包和RPM包安裝的程式為什麼可以在同一臺伺服器上呢?主要是因為安裝路徑不同,所以不會覆蓋安裝。RPM包一般採用系統預設路徑安裝,而原始碼包一般通過手工指定安裝路勁(一般安裝到/usr/local/中)安裝。
RPM包預設安裝路徑是可以通過合令查詢的,一般安裝在如表10-1所示的目錄中。
目錄 | 說明 |
---|---|
/etc/ | 配置檔案安裝目錄 |
/usr/bin/ | 可執行的命令安裝目錄 |
/usr/lib/ | 程式所使用的函式庫儲存位置 |
/usr/share/doc/ | 基本的軟體使用手冊儲存位置 |
/usr/share/man/ | 幫助檔案儲存位置 |
RPM包難道就不能手工指定安裝路徑嗎?當然是可以的,但是一旦手工指定安裝路徑,所有的安裝檔案就會安裝到手工指定位置,而不會安裝到系統預設位置。而系統的預設搜尋位置並不會改變,依然會去預設位置之下搜尋,當然系統就不能直接找到所需的檔案,也就失去了作為系統預設安裝路徑的一些好處。所以我們一般不會指定RPM包的安裝路徑,而使用預設安裝路徑。
- RPM包的安裝
[root@localhost ~]# rpm –ivh 包全名
#注意一定是包全名。如果跟包全名的命令要注意路徑,因為軟體包在光碟當中
選項 | 說明 |
---|---|
-i | install安裝(install); |
-v | 顯示更詳細的資訊(verbose); |
-h | 列印#,顯示安裝進度(hash); |
–nodeps | 不檢測依賴性安裝。軟體安裝時會檢測依賴性,確定所需的底層軟體是否安裝。如果沒有安裝則會報錯。如果我不管依賴性,想強行安裝,可以使用這個選項。注意: 這樣不檢測依賴性安裝的軟體基本是不能使用的,所以不建議這樣做; |
–replacefiles | 替換檔案安裝。如果安裝軟體包,可是包中部分檔案已經存在,那麼正常安裝時候,會報錯“某個檔案已經存在”從而導致軟體無法安裝,使用這個選項可以忽視這個報錯,而覆蓋安裝; |
–replacepkgs | 替換軟體包安裝。如果軟體包已經安裝,此選項可以把軟體包重複安裝一遍; |
–force | 強制安裝。不管是否已經安裝,都重新安裝。就是replacefiles 和 replacepkgs 的綜合; |
–test | 測試安裝。不會實際安裝,只是檢測一下依賴性; |
–prefix | 指定安裝路徑。為安裝軟體指定安裝路徑,而不使用預設安裝路徑。注意:如果指定了安裝路徑,軟體沒有安裝到系統預設路徑中的話,系統會找不到這些安裝的軟體,需要進行手工配置才能被系統識別。所以 rpm 包我們一般都採用預設路徑安裝,例如:rpm -ivh --prefix=/usr/local/httpd; |
例如,安裝apache軟體包,注意出現兩個100%才是正確安裝,第一個100%僅是在準備,第二個100%才是正確安裝。
[root@localhost ~]# rpm -ivh /mnt/cdrom/Packages/httpd-2.2.15-53.el6.centos.x86_64.rpm
如果打算同時安裝多個軟體包呢?可以用一條命令同時安裝,將多個軟體包用空格分開就可以了。
[root@localhost ~]# rpm -ivh a.rpm b.rpm c.rpm
#一次安裝多個軟體包
RPM包預設儲存在系統光碟的Packages(注意P大寫)目錄中,所以在安裝軟體前需要掛載光碟,例如:
[root@localhost ~]# mkdir /mnt/cdrom
[root@localhost ~]# mount /dev/sr0 /mnt/cdrom/
- RPM 包升級
[root@localhost ~]# rpm –U|Fvh 包全名
選項 | 說明 |
---|---|
-U | 升級安裝,如果沒有安裝過,系統直接安裝。如果安裝過的版本較舊,則升級到新版本(upgrade); |
-F | 升級安裝,如果沒有安裝過,則不會安裝。必須安裝有較舊版本,才能升級(freshen); |
相關文章
- rpm包安裝升級與解除安裝
- Linux RPM包安裝、解除安裝、升級命令講解Linux
- RPM包安裝與介紹
- yum如何解除安裝已安裝的rpm並安裝本地rpm包
- 升級所有Python安裝包Python
- dp安裝包升級步驟
- centos(linux): rpm -V 驗證rpm包安裝程式的安全CentOSLinux
- mysql8.0.30的RPM包安裝方法MySql
- CentOS下使用rpm包安裝MySQLCentOSMySql
- centos以RPM包方式安裝redis的方法CentOSRedis
- 在 Fedora 中安裝替代版本的 RPM 包
- 基於Linux的MySQL5.7RPM包安裝LinuxMySql
- Mac brew swoole 安裝與升級Mac
- Greenplum_原始碼編譯安裝和RPM包安裝原始碼編譯
- rpm:虛擬包:空白包:欺騙包:do nothing包:滿足現有rpm包安裝依賴的要求
- yum/dnf/rpm 等 檢視rpm 包安裝路徑 (fedora 中 pygtk 包內容安裝到哪裡了)
- yum安裝軟體之後如何儲存rpm安裝包
- 徹底解除安裝rpm軟體包的指令碼指令碼
- beego的安裝和升級Go
- 使用CheckInstall從原始碼製作RPM安裝包原始碼
- Mysql 5.7在OL 6上以RPM包安裝MySql
- Yum命令之僅下載rpm安裝包且不安裝
- mysql安裝(rpm)MySql
- Z-Blog的安裝與升級注意事項
- Centos Docker安裝、升級、解除安裝CentOSDocker
- Linux rpm -e --nodeps rpm解除安裝Linux
- 全面梳理 簡明安裝指南 mysql 8 安裝升級與配置MySql
- ruby安裝及升級
- kali安裝和升級
- rpm 與 原始碼安裝的一些差異原始碼
- Linux下Go的安裝、配置 、升級和解除安裝LinuxGo
- PostgreSQL 10.12 安裝系列 - 本地RPM安裝SQL
- yum,rpm等失效,使用系統安裝包ISO檔案降級程式恢復系統
- kubernetes 1.14 升級安裝指南
- 安裝升級Linux GCC版本LinuxGC
- Linux CentOS升級安裝gitLinuxCentOSGit
- Vue專案升級webpack4.x和遇到的那些安裝包ErrorVueWebError
- MySQL 5.7.22 rpm 安裝方式MySql