安裝及管理程式
目錄:
1、應用程式與系統命令的關係
2、典型應用程式的目錄結構
3、常見的軟體包封裝過程
1、RPM包管理工具
2、RPM命令的格式
3、查詢RPM包軟體資訊
4、安裝、升級、解除安裝RPM軟體包
5、維護RPM資料庫
1、原始碼編譯概述
2、配置本地yum源倉庫
3、yum常用的操作指令
1、應用程式與系統命令的關係
角色 | 系統命令 | 應用程式 |
檔案位置 | 一般在/bin和/sbin目錄中,或為shell內部指令 | 通常在/usr/bin、/usr/sbin和/usr/local/bin、/usr/local/sbin目錄中 |
主要用途 | 完成對系統的基本管理工作,例如IP配置工具 | 完成相對獨立的其他輔助任務,例如網頁瀏覽器 |
適用環境 | 一般只在字元操作介面中執行 | 根據實際需要,有些程式可在圖形介面中執行 |
執行格式 | 一般包括命令字、命令選項和命令引數 | 通常沒有固定的執行格式,由程式開發者自行定義 |
2、典型應用程式的目錄結構
檔案型別 | 儲存目錄 | 說明 |
普通的可執行程式檔案 | /usr/bin | 所有使用者可執行 |
伺服器程式、管理程式檔案 | /usr/sbin | 只有管理員能執行 |
應用程式配置檔案 | /etc | 通過RPM或yum方式安裝的應用程式 |
日誌檔案 | /var/log | 系統日誌 |
應用程式參考文件檔案 | /usr/share/doc | 關於應用程式的參考文件等資料 |
應用程式手冊頁檔案 | /usr/share/man |
執行檔案及配置檔案的man手冊頁 |
3、常見的軟體包封裝型別
檔案型別 | 儲存目錄 |
RPM軟體包 | 副檔名為“.rpm”,適用於RHEL、centOS等系統 |
DEB軟體包 | 副檔名為“.deb”,適用於Ubuntu、Debian等系統 |
原始碼軟體包 |
一般為“.tar.gz”、“.tar.bz2”等格式的壓縮包 包含程式的原始程式碼,需要編譯安裝 |
附帶安裝程式的軟體包 |
軟體包的副檔名不一,以tarball格式的居多 在軟體包中會提供用於安裝的可執行程式或指令碼檔案,如install.sh、setup等 |
1、RPM包管理工具
RPM 軟體包管理器Red-Hat Package Manager
- 由Red Hat公司提出,被眾多Linux發行版所採用
- 建立統一的檔案資料庫
- 詳細記錄軟體包安裝、解除安裝、升級等變化資訊
- 自動分析軟體包依賴關係RPM軟體包
●軟體素材參考∶ http∶//www.rpm.org
●一般命名格式∶
2、rpm命令的格式
rpm命令能夠實現幾乎所有對RPM軟體包的管理功能
執行"man rpm"命令可以獲得關於rpm命令的詳細幫助資訊
rpm命令功能
- 查詢、驗證RPM軟體包的相關資訊
- 安裝、升級、解除安裝RPM軟體包
- 維護重建RPM資料庫資訊等綜合管理操作
3、查詢RPM軟體包資訊
查詢已安裝的 RPM 軟體資訊
rpm -q【子選項】 【軟體名】
●常用選項
-qa、-qi、-ql、-qf、-qc、-qd
rpm -qi 軟體名 #顯示已安裝的指定軟體的詳細資訊
rpm-ql 軟體名 #顯示已安裝的指定軟體的檔案列表
rpm -qc 軟體名 #列出已安裝的指定軟體的配置檔案
rpm -qd 軟體名 #列出已安裝的指定軟體的軟體包文件所在位置
rpm-qR 軟體名 #列出已安裝的指定軟體的依賴的軟體包及檔案
rpm -qf 檔案或目錄 #查詢已安裝的指定軟體屬於哪個安裝包
rpm -qa #顯示當前系統中以 rpm方式安裝的所有軟體列表
rpm -qa | grep -i postfix #查詢軟體postfix是否已安裝
查詢RPM 軟體包檔案中的資訊
rpm -qp【子選項】 RPM包檔案
●常用選項
-qpi、-qpl、-qpc、-qpd
查詢未安裝的 RPM 軟體包檔案中資訊
rpm -qpi RPM包檔名 #查詢指定軟體包的詳細資訊
rpm -qpl RPM包檔名 #查詢指定軟體包的檔案列表
rpm -qpc RPM包檔名 #查詢指定軟體包的配置檔案
rpm -qpd RPM包檔名 #查詢指定軟體包的軟體包文件的位置
4、安裝、升級、解除安裝RPM軟體包① 安裝或升級RPM軟體
rpm + 【選項】+ RPM包檔案
rpm + -ivh RPM軟體包
常用選項: -i : 安裝一一個新的RPM 軟體包 -U: 升級某個軟體包,若未安裝過,則進行安裝 -F: 升級某個軟體包,若未安裝過,則放棄安裝 ② 解除安裝指定的RPM軟體
rpm + -e + 軟體名 常用選項: -h: 在安裝或升級軟體包的過程中,以“#”號顯示安裝進度 -v: 顯示軟體安裝過程中的詳細資訊 -e: 解除安裝指定名稱的軟體包 –force: 強制安裝某個軟體包,比如要安裝版本更舊的軟體包 –nodeps: 在安裝或升級、解除安裝–個軟體包時,不檢查與其他軟體包的依賴關係 5、維護RPM資料庫 ① 重建RPM資料庫
當RPM資料庫發生損壞,可通過重建RPM資料庫修復 rpm - -rebuilddb 或 rpm - -initdb ② 匯入驗證公鑰
在沒有匯入用於數字簽名驗證的公鑰檔案之前,安裝光碟中的一部分RPM軟體包時會報錯。需要RPM資料庫中匯入位於光碟根目錄下的公鑰檔案 mount /dev/sr0/mnt/ rpm - -import/mnt/RPM-GPG-KEY-Centos-
解決軟體包依賴關係方法:
① 安裝有依賴關係的多個軟體時
• 被依賴的軟體包需要先安裝
• 可同時指定多個.rpm包檔案進行安裝 ② 解除安裝有依賴關係的多個軟體時
• 依賴其他程式的軟體包需要先解除安裝
• 可同時指定多個軟體名進行解除安裝 ③ 忽略依賴關係
結合 ‘‘- -nodeps" 選項,但可能導致軟體異常
1、原始碼編譯概述
使用原始碼安裝軟體的優點
●獲得最新的軟體版本,及時修復bug
●根據使用者需要,靈活定製軟體功能
應用場合舉例
●安裝較新版本的應用程式時
●當前安裝的程式無法滿足需要時
●需要為應用程式新增新的功能時
編譯的安裝過程
2、配置本地yum源倉庫
1 mount /dev/cdrom/mnt/ 2 #把光碟掛載到/mnt目錄下 3 4 cd /etc/yum.repos.d/ 5 mkdir repos .bak 6 mv * . repo repos .bak 7 8 cd /etc/yum.repos.d/ 9 vim local.repo 10 [local] 11 #倉庫類別 12 name=local 13 #倉庫名稱 14 baseurl=file: ///mnt 15 #指定URL訪問路徑為光碟掛載目錄 16 enabled=1 17 #開啟此yum源,此為預設項,可省略 18 gpgcheck=0 19 #不驗證軟體包的簽名 20 yum clean all && yum makecache 21 #刪除yum快取並更新
3、yum常用的操作命令
1 yum -y install 軟體名 2 #安裝、升級軟體包,"-y”選項表示自動確認 3 yum -y remove 軟體名 4 #解除安裝軟體包,可自動解決其依賴關係 5 yum -y update 軟體名 6 #升級軟體包 7 8 yum list 9 #查詢軟體包列表 10 yum list installed 11 #查詢系統中已安裝的軟體包 12 yum list available 13 #查詢倉庫中尚未安裝的軟體包 14 yum list updates 15 #查詢可以升級版本的軟體包