安裝軟件前準備:
查看虛擬機設置,確認光盤已經連接。
確認光盤連接後,我們需要將光盤掛載一個目錄下,使得我們可以查看光盤中的內容。
(光盤的掛載選項爲“ro,sync”,類型爲iso9660,也可直接寫入/etc/fstab文件進行掛載,方便重新啓動後自動掛載。)
掛載成功後,目錄/mnt/cdrom/Packages/下可以查看到軟件包,我們使用rpm安裝時,使用這個目錄裏面的安裝包。同樣,配置yum倉庫時,也使用此目錄。
RPM包管理及YUM應用
在 Linux 操作系統下,幾乎所有的軟件均通過RPM 進行安裝、卸載及管理等操作。RPM 的全稱爲Redhat Package Manager ,是由Redhat 公司提出的,用於管理Linux 下軟件包的軟件。Linux 安裝時,除了幾個核心模塊以外,其餘幾乎所有的模塊均通過RPM 完成安裝。RPM 有五種操作模式,分別爲:安裝、卸載、升級、查詢和驗證。
語法
rpm(選項)(參數)
選項
-a:查詢所有套件;
-e<套件檔>或--erase<套件檔>:刪除指定的套件;
-i:安裝;
-q:查詢包是否安裝;
-v:顯示指令執行過程;
-h:顯示安裝進度;
參數
軟件包:指定要操縱的rpm軟件包。
如何安裝rpm軟件包
rpm軟件包的安裝可以使用程序rpm來完成。執行下面的命令:
rpm -ivh your-package.rpm
其中your-package.rpm是你要安裝的rpm包的文件名,一般置於當前目錄下。
(此時的文件名,可以是絕對路徑,如果不是絕對路徑,需要使用cd命令切換目錄到/mnt/cdrom/Packages(/mnt/cdrom是我們掛載光盤的位置)下。)
安裝過程中可能出現下面的警告或者提示:
... conflict with ...
可能是要安裝的包裏有一些文件可能會覆蓋現有的文件,缺省時這樣的情況下是無法正確安裝的可以用rpm --force -i強制安裝即可
... is needed by ...
... is not installed ...
此包需要的一些軟件你沒有安裝可以用rpm --nodeps -i來忽略此信息,也就是說rpm -i --force --nodeps可以忽略所有依賴關係和文件問題,什麼包都能安裝上,但這種強制安裝的軟件包不能保證完全發揮功能。(注意:我們下面講的yum就是用來解決依賴關係,使用yum安裝軟件,自動查找依賴關係及安裝依賴包,使用rpm安裝時忽略依賴信息,可能會導致軟件安裝完成後無法使用的結果。)
如何卸載rpm軟件包
使用命令rpm -e包名,包名可以包含版本號等信息,但是不可以有後綴.rpm,比如卸載軟件包proftpd-1.2.8-1,可以使用下列格式:
rpm -e proftpd-1.2.8-1
rpm -e proftpd-1.2.8
rpm -e proftpd-
rpm -e proftpd
不可以是下列格式:
rpm -e proftpd-1.2.8-1.i386.rpm
rpm -e proftpd-1.2.8-1.i386
rpm -e proftpd-1.2
rpm -e proftpd-1
有時會出現一些錯誤或者警告:
... is needed by ...
這說明這個軟件被其他軟件需要,不能隨便卸載,可以用rpm -e --nodeps強制卸載
可以先查詢軟件包的名稱後再進行卸載:
如何查看與rpm包相關的文件和其他信息
下面所有的例子都假設使用軟件包mysql-3.23.54a-11
1、我的系統中安裝了那些rpm軟件包。
rpm -qa 將列出所有安裝過的包
如果要查找所有安裝過的包含某個字符串sql的軟件包
rpm -qa | grep sql
2、如何獲得某個軟件包的文件全名。
rpm -q mysql
可以獲得系統中安裝的mysql軟件包全名,從中可以獲得當前軟件包的版本等信息。這個例子中可以得到信息mysql-3.23.54a-11
3、一個rpm包中的文件安裝到那裏去了?
rpm -ql 包名
注意這裏的是不包括.rpm後綴的軟件包的名稱,也就是說只能用mysql或者mysql-3.23.54a-11而不是mysql-3.23.54a-11.rpm。如果只是想知道可執行程序放到那裏去了,也可以用which,比如:
which mysql
搭建yum源
Yum軟件倉庫
Yum倉庫則是爲進一步簡化RPM管理軟件難度而設計的,Yum能夠根據用戶的要求分析出所需軟件包及其相關依賴關係,自動從服務器下載軟件包並安裝到系統,聽起來就已經很爽了吧?
yum軟件倉庫的使用拓撲圖
用戶能夠根據需求來指定Yum倉庫與是否校驗軟件包,而這些只需幾條關鍵詞即可完成,現在來學習下配置的方法.
所有Yum倉庫的配置文件均需以.repo結尾並存放在/etc/yum.repos.d/目錄中的。
[rhel-media]: yum源的名稱,可自定義。
name= rh可自定義
baseurl=file:///media/cdrom :提供方式包括FTP(ftp://..)、HTTP(http://..)、本地(file:///..)
enabled=1 : 設置此源是否可用,1爲可用,0爲禁用。
gpgcheck=1 : 設置此源是否校驗文件,1爲校驗,0爲不校驗。(一般設置爲0即可)
gpgkey=file:///media/cdrom/RPM-GPG-KEY-redhat-release :若爲校驗請指定公鑰文件地址。
Yum倉庫中的RPM軟件包可以是由紅帽官方發佈的,也可以是第三方組織發佈的,當然用戶也可以編寫的,鏡像光盤內已經包含了大量的可用RPM軟件包。
命令 | 作用 |
yum repolist all | 列出所有倉庫。 |
yum install 軟件包名稱 | 安裝軟件包 |
yum remove 軟件包 | 移除軟件包 |
配置yum倉庫:
查看原有倉庫文件列表:
將倉庫文件“CentOS-Base.repo”重命名爲“CentOS-Base.repo.bak”
修改文件/etc/yum.repos.d/CentOS-Media.repo
修改內容:
1. 將baseurl改爲光盤掛載位置
2. 將enabled=0改爲enabled=1
3. 將gpgcheck=1改爲gpgcheck=0
yum安裝軟件:
-y參數表示yes,若不加此參數,後面會提醒是否安裝,需要輸入“y”安裝過程才能繼續進行,添加參數後,yum便會自動安裝不再詢問。
檢測軟件包是否安裝成功
yum卸載軟件:
資料來源:
https://www.linuxprobe.com