IT培訓(xùn)網(wǎng)
IT在線學(xué)習(xí)
在CentOS7中的軟件包安裝工具是rpm命令。由于軟件包之間存在一定的依賴關(guān)系,有時(shí)使用rpm命令安裝軟件會(huì)報(bào)錯(cuò),信息提示一個(gè)或多個(gè)包被當(dāng)前包所需要,如下操作所示:
[root@linux ~]# cd /media/Packages/
[root@linux Packages]# ls | grep -i mysql-connector
mysql-connector-java-5.1.25-3.el7.noarch.rpm
mysql-connector-odbc-5.2.5-8.el7.x86_64.rpm
[root@linux Packages]# rpm -ivh mysql-connector-java-5.1.25-3.el7.noarch.rpm
錯(cuò)誤:依賴檢測(cè)失。
java >= 1:1.6.0 被 mysql-connector-java-1:5.1.25-3.el7.noarch 需要
jpackage-utils 被 mysql-connector-java-1:5.1.25-3.el7.noarch 需要
jta >= 1.0 被 mysql-connector-java-1:5.1.25-3.el7.noarch 需要
slf4j 被 mysql-connector-java-1:5.1.25-3.el7.noarch 需要
[root@linux Packages]#
需要事先安裝某些包,才能安裝當(dāng)前包稱為軟件包間的依賴關(guān)系。使用yum命令可以解決具有依賴關(guān)系的軟件包安裝問(wèn)題,這也是在CentOS7中安裝軟件主要使用yum而不是rpm命令的主要原因。
yum命令的功能:在安裝某個(gè)包前,自動(dòng)查找到相關(guān)的依賴包并安裝,再安裝指定軟件包。
yum命令的工作原理:事先把所有可能會(huì)用到的rpm包,集中存放到一個(gè)目錄下,然后在yum配置文件(簡(jiǎn)稱yum源)中指定rpm包的目錄路徑,則使用yum命令安裝軟件時(shí),會(huì)自動(dòng)到該指定目錄下查找到要安裝的軟件包以及該包所依賴的軟件包并自動(dòng)安裝。
由于Linux安裝光盤上具備全部的軟件包,且都在同一目錄下(如/media),則只需要編寫yum源配置文件,指定該目錄為安裝源目錄即可,具體配置過(guò)程如下。
①執(zhí)行cd /etc/yum.repos.d/,進(jìn)入yum安裝源配置文件所在目錄,如下操作所示:
[root@linux yum.repos.d]# ls
CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Media.repo CentOS-Vault.repo
CentOS-CR.repo CentOS-fasttrack.repo CentOS-Sources.repo CentOS-x86_64-kernel.repo
[root@linux yum.repos.d]#
打開其中一個(gè)文件,文件內(nèi)容顯示yum安裝軟件的來(lái)源是CentOS的網(wǎng)絡(luò)地址(即官方網(wǎng)站地址)或CentOS網(wǎng)絡(luò)地址的鏡像網(wǎng)絡(luò)地址(開源軟件鼓勵(lì)使用者在本地建立軟件的復(fù)制內(nèi)容,提供復(fù)制內(nèi)容的網(wǎng)址為原軟件網(wǎng)址的鏡像地址),這表明使用yum安裝軟件時(shí),yum命令自動(dòng)到官網(wǎng)上下載指定的軟件及其相關(guān)依賴包。如執(zhí)行vi CentOS-Base.repo后,結(jié)果如下所示:
[base]
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra
baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-qpq/RPM-GPG-KEY-CentOS-7
上面配置文件中用baseurl關(guān)鍵字指定了安裝軟件包時(shí)搜索的網(wǎng)址,即要安裝的軟件包以及其所依賴的軟件包將會(huì)從該網(wǎng)址來(lái)下載;mirrolist關(guān)鍵字指定了安裝軟件時(shí)搜索的鏡像網(wǎng)址。下面我們用yum方式來(lái)安裝mysql-connector-java軟件包,rpm命令不能一次性安裝該軟件包,首先通過(guò)軟件包的關(guān)鍵字查找軟件包的名稱(如果記不住具體的軟件包名),然后安裝軟件包,最后驗(yàn)證軟件包是否已經(jīng)安裝。相關(guān)操作如下所示:
[root@linux ~]# yum search all connector-java
已加載插件:fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.huaweicloud.com
============================================================= 匹配:connector-java =============================================================
mysql-connector-java.noarch : Official JDBC driver for MySQL
[root@linux ~]# yum install mysql-connector-java
已加載插件:fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.huaweicloud.com
正在解決依賴關(guān)系
--> 正在檢查事務(wù)
---> 軟件包 mysql-connector-java.noarch.1.5.1.25-3.el7 將被 安裝
--> 正在處理依賴關(guān)系 jta >= 1.0,它被軟件包 1:mysql-connector-java-5.1.25-3.el7.noarch 需要
--> 正在處理依賴關(guān)系 java >= 1:1.6.0,它被軟件包 1:mysql-connector-java-5.1.25-3.el7.noarch 需要
--> 正在處理依賴關(guān)系 slf4j,它被軟件包 1:mysql-connector-java-5.1.25-3.el7.noarch 需要
--> 正在處理依賴關(guān)系 jpackage-utils,它被軟件包 1:mysql-connector-java-5.1.25-3.el7.noarch 需要
--> 正在檢查事務(wù)
---> 軟件包 geronimo-jta.noarch.0.1.1.1-17.el7 將被 安裝
---> 軟件包 java-1.8.0-openjdk.x86_64.1.1.8.0.262.b10-1.el7 將被 安裝
--> 正在處理依賴關(guān)系 java-1.8.0-openjdk-headless(x86-64) = 1:1.8.0.262.b10-1.el7,它被軟件包 1:java-1.8.0-openjdk-1.8.0.262.b10-1.el7.x86_64 需要
--> 正在處理依賴關(guān)系 xorg-x11-fonts-Type1,它被軟件包 1:java-1.8.0-openjdk-1.8.0.262.b10-1.el7.x86_64 需要
--> 正在處理依賴關(guān)系 libjvm.so(SUNWprivate_1.1)(64bit),它被軟件包 1:java-1.8.0-openjdk-1.8.0.262.b10-1.el7.x86_64 需要
......
---> 軟件包 xml-commons-apis.noarch.0.1.4.01-16.el7 將被 安裝
---> 軟件包 xml-commons-resolver.noarch.0.1.2-15.el7 將被 安裝
--> 解決依賴關(guān)系完成
依賴關(guān)系解決
=========================================================================================================
Package 架構(gòu) 版本 源 大小
=========================================================================================================
正在安裝:
mysql-connector-java noarch 1:5.1.25-3.el7 base 1.3 M
為依賴而安裝:
apache-commons-lang noarch 2.6-15.el7 base 276 k
apache-commons-logging noarch 1.1.2-7.el7 base 78 k
......
xorg-x11-fonts-Type1 noarch 7.5-9.el7 base 521 k
事務(wù)概要
=========================================================================================================
安裝 1 軟件包 (+80 依賴軟件包)
總下載量:53 M
安裝大。161 M
Is this ok [y/d/N]: y
Downloading packages:
(1/81): apache-commons-lang-2.6-15.el7.noarch.rpm | 276 kB 00:00:00
(2/81): avalon-logkit-2.1-14.el7.noarch.rpm | 87 kB 00:00:00
......
(80/81): fontconfig-2.13.0-4.3.el7.x86_64.rpm | 254 kB 00:00:46
avalon-framework-4.3-10.el7.no FAILED ==============================-] 11 kB/s | 53 MB 00:00:00 ETA
http://mirror.centos.org/centos/7/os/x86_64/Packages/avalon-framework-4.3-10.el7.noarch.rpm: [Errno 12] Timeout on http://mirror.centos.org/centos/7/os/x86_64/Packages/avalon-framework-4.3-10.el7.noarch.rpm: (28, 'Operation too slow. Less than 1000 bytes/sec transferred the last 30 seconds')
正在嘗試其它鏡像。
(81/81): avalon-framework-4.3-10.el7.noarch.rpm | 88 kB 00:00:00
------------------------------------------------------------------------------------------------------------------------------------------------
總計(jì) 808 kB/s | 53 MB 00:01:07
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
警告:RPM 數(shù)據(jù)庫(kù)已被非 yum 程序修改。
正在安裝 : libjpeg-turbo-1.2.90-8.el7.x86_64 1/81
正在安裝 : mesa-libglapi-18.3.4-10.el7.x86_64 2/81
正在安裝 : libxshmfence-1.2-1.el7.x86_64
......
79/81
正在安裝 : geronimo-jta-1.1.1-17.el7.noarch 80/81
正在安裝 : 1:mysql-connector-java-5.1.25-3.el7.noarch 81/81
驗(yàn)證中 : libXext-1.3.3-3.el7.x86_64 1/81
驗(yàn)證中 : libXi-1.7.9-1.el7.x86_64 2/81
驗(yàn)證中 : xml-commons-resolver-1.2-15.el7.noarch
......
80/81
驗(yàn)證中 : pixman-0.34.0-1.el7.x86_64 81/81
已安裝:
mysql-connector-java.noarch 1:5.1.25-3.el7
作為依賴被安裝:
apache-commons-lang.noarch 0:2.6-15.el7 apache-commons-logging.noarch 0:1.1.2-7.el7
atk.x86_64 0:2.28.1-2.el7 avahi-libs.x86_64 0:0.6.31-20.el7
.......
xorg-x11-font-utils.x86_64 1:7.5-21.el7 xorg-x11-fonts-Type1.noarch 0:7.5-9.el7
完畢!
[root@linux ~]# rpm -q mysql-connector-java
mysql-connector-java-5.1.25-3.el7.noarch
以上操作使用yum命令安裝了mysql-connector-java軟件包,安裝過(guò)程所產(chǎn)生的內(nèi)容做了部分節(jié)選。yum命令首先會(huì)安裝該軟件包所依賴的80個(gè)軟件包,然后才能安裝mysql-connector-java軟件包,最后使用rpm -q 軟件包名進(jìn)行了驗(yàn)證,說(shuō)明該軟件包已經(jīng)安裝成功。
更多內(nèi)容
>>本文地址:http://www.yiyunku.cn/zhuanye/2021/70189.html
聲明:本站稿件版權(quán)均屬中公教育優(yōu)就業(yè)所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
1 您的年齡
2 您的學(xué)歷
3 您更想做哪個(gè)方向的工作?