1. 程式人生 > >5周第1次課 安裝軟件包的三種方法 rpm包介紹 yum工具用法 yum搭建本地倉庫

5周第1次課 安裝軟件包的三種方法 rpm包介紹 yum工具用法 yum搭建本地倉庫

rpm包介紹 yum工具用法 yum搭建本地倉庫

Linux 安裝軟件的三種方式

  1. rpm 工具:此種安裝方式即通過rpm 工具對介質上的rpm 包進行安裝。

  2. yum 工具:核心依然是rpm,但不同的是它是基於網絡的源,並會自動安裝依賴組件。

  3. 源碼包:源代碼包,需要相應的編譯器進行編譯,然後才能安裝。三種方式裏最難的。


1.rpm 工具

rpm包的來源:光盤或其他地方拷貝
本次實驗,將Centos7虛擬光盤加載到虛擬機上

1.1 進入系統後執行掛載

[root@centos701 ~]# mount /dev/cdrom /mntmount: /dev/sr0 寫保護,將以只讀方式掛載

1.2 查看光盤中的rpm 包

[root@centos701 ~]# cd /mnt[root@centos701 mnt]# cd Packages/[root@centos701 Packages]#ls................
yum-3.4.3-150.el7.centos.noarch.rpm
yum-langpacks-0.4.2-7.el7.noarch.rpm
yum-plugin-fastestmirror-1.1.31-40.el7.noarch.rpm
...............
yum-plugin-tmprepo-1.1.31-40.el7.noarch.rpm
yum-utils-1.1.31-40.el7.noarch.rpm
zip-3.0-11.el7.x86_64.rpm
.................

rpm 包以“-”為分隔符,分成四部分,分別表示“包名-版本號-發布版本號-支持平臺”

1.3 使用 rpm 工具安裝 rpm 包

格式:rpm 參數 包文件/包名/其他

功能參數示例
安裝rpm-ivh 包文件rpm -ivh zip-3.0-11.el7.x86_64.rpm
升級rpm-Uvh 包文件rpm -Uvh zip-3.1-11.el7.x86_64.rpm
卸載rpm-e 包名rpm -e zip 卸載時需註意依賴包的問題 很少用
查詢已安裝的包-qa 包名rpm -qa
查詢是否已安裝-q 包名rpm -q zip
查詢指定包信息-qi包名rpm -qi vim-enhanced 很少用
列出包安裝了哪些文件-ql包名rpm -ql zip
查看一個文件由哪個包安裝-qf 文件絕對路徑rpm -qf /usr/bin/ls

組合用法rpm -qf `which cd`

2.yum 工具

2.1 yum工具介紹

yum的來源:紅帽公司或其他開源站點,國內有新浪、網易、阿裏、騰訊等。
因此,使用過程中需要連接到源服務器。服務器可以是外網上的,也可以是內網的。
優點:用戶無論是安裝或是卸載,都不必關心依賴包,yum 會自動安裝或卸載。
主要配置文件存放位置 /et/yum.repos.d/ Centos-

格式:yum 參數 包文件/包名/其他

參數中的-y,表示遇到征求意見時,輸入 y

功能參數示例
列出可用包listyum list
列出可用套件grouplistyum grouplist
列出並匹配關鍵字|grepyum list |grep `vim`
搜索匹配特定字符的 rpm 包searchyum search vim (在包名稱、包描述中搜索)
搜索能安裝匹配字符命令的rpm包providesyum provides "/*/realplay"
安裝包installyum install -y gzip
安裝套件groupinstallyum groupinstall -y GNOME 桌面
(如需使用英文"LANG=en")
yum groupinstall -y `GNOME Desktop`
卸載rpm 包removeyum remove -y ppp
升級系統及系統所有rpmupdateyum update 此操作一般在安裝好系統後執行一次
升級指定 rpm包updateyum update -y vim

2.2 yum 搭建本地倉庫(源)

場景:無法與外網通信,但又需要安裝軟件

思路:利用光盤中的 rpm 包作為源,通過修改 yum源配置文件,完成源的本地化。


步驟預覽:

2.2.1 加載Centos7光盤並掛載到/mnt

mount /dev/cdrom /mnt

2.2.2 備份 yum 配置目錄

cp -r /etc/yum.repos.d/

2.2.3 清空 yum 配置目錄

rm -rf /etc/yum.repos.d/*

2.2.4 創建新的yum配置文件 vim dvd.repo

內容如下:

[dvd]name=install dvdbaseurl=file:///mntenable=1gpcheck=0
2.2.5 驗證

yum clean
yum install GConf2.x86_64或系統中未安裝的包


詳細步驟如下:

[root@centos701 ~]# mount /dev/cdrom /mnt[root@centos701 ~]# cp -r /etc/yum.repos.d/ /etc/yum.repos.d.bak     ###先備份目錄[root@centos701 ~]# ls /etc/yum.repos.d.bak/  ##確認備份成功CentOS-Base.repo  CentOS-Debuginfo.repo  CentOS-Sources.repo  CentOS-fasttrack.repoCentOS-CR.repo    CentOS-Media.repo      CentOS-Vault.repo
[root@centos701 ~]# cd /etc/yum.repos.d/      ##切換到配置目錄[root@centos701 yum.repos.d]# rm -rf ./*    ##清空當前目錄[root@centos701 yum.repos.d]# vim dvd.repo  ##創建配置文件,並寫入以下內容[dvd]
name=install dvd
baseurl=file:///mntenable=1gpcheck=0:wq   ##保存退出[root@centos701 yum.repos.d]# yum clean      ##清空 yum 配置緩存[root@centos701 yum.repos.d]# yum list |less  ##查看 rpm 包狀態Installed Packages     ##已安裝過的包列表,以 @xxx 標註GeoIP.x86_64                            1.5.0-11.el7                   @anacondaNetworkManager.x86_64                   1:1.4.0-12.el7                 @anacondazziplib.x86_64                          0.13.62-5.el7                  @baseAvailable Packages    ##可安裝的包列表,後面顯示dvd,表示配置成功389-ds-base.x86_64                      1.3.5.10-11.el7                dvd389-ds-base-libs.x86_64                 1.3.5.10-11.el7                dvdElectricFence.x86_64                    2.2.2-39.el7                   dvd

按 q 退出 “less” 命令

[root@centos701 yum.repos.d]# yum install GConf2.x86_64      ##用 yum安裝一個rpm包來檢測是否可用Failed to set locale, defaulting to CLoaded plugins: fastestmirrorLoading mirror speeds from cached hostfileResolving Dependencies--> Running transaction check
---> Package GConf2.x86_64 0:3.2.6-8.el7 will be installed
--> Processing Dependency: /usr/bin/killall for package: GConf2-3.2.6-8.el7.x86_64
--> Running transaction check
---> Package psmisc.x86_64 0:22.20-11.el7 will be installed
--> Finished Dependency ResolutionDependencies Resolved================================================================================================ Package              Arch                 Version                      Repository         Size================================================================================================Installing:
 GConf2               x86_64               3.2.6-8.el7                  dvd               1.0 MInstalling for dependencies:
 psmisc               x86_64               22.20-11.el7                 dvd               141 kTransaction Summary================================================================================================Install  1 Package (+1 Dependent package)Total download size: 1.1 MInstalled size: 6.8 MIs this ok [y/d/N]:

由上面來源可以看到,yum本地倉庫搭建成功!!!


5周第1次課 安裝軟件包的三種方法 rpm包介紹 yum工具用法 yum搭建本地倉庫