首頁 > 軟體

Linux yum 命令詳解

2020-06-16 16:34:56

yum( Yellow dog Updater, Modified)是一個在FedoraRedHat以及SUSE中的Shell前端軟體包管理器。

基於RPM包管理,能夠從指定的伺服器自動下載RPM包並且安裝,可以自動處理依賴性關係,並且一次安裝所有依賴的軟體包,無須繁瑣地一次次下載、安裝。

yum提供了查詢、安裝、刪除某一個、一組甚至全部軟體包的命令,而且命令簡潔而又好記。

yum 語法

yum [options] [command] [package ...]
  • options:可選,選項包括-h(幫助),-y(當安裝過程提示選擇全部為"yes"),-q(不顯示安裝的過程)等等。
  • command:要進行的操作。
  • package操作的物件。

yum常用命令

  • 1.列出所有可更新的軟體清單命令:yum check-update
  • 2.更新所有軟體命令:yum update
  • 3.僅安裝指定的軟體命令:yum install <package_name>
  • 4.僅更新指定的軟體命令:yum update <package_name>
  • 5.列出所有可安裝的軟體清單命令:yum list
  • 6.刪除軟體包命令:yum remove <package_name>
  • 7.查詢軟體包 命令:yum search <keyword>
  • 8.清除快取命令:
    • yum clean packages: 清除快取目錄下的軟體包
    • yum clean headers: 清除快取目錄下的 headers
    • yum clean oldheaders: 清除快取目錄下舊的 headers
    • yum clean, yum clean all (= yum clean packages; yum clean oldheaders) :清除快取目錄下的軟體包及舊的headers

範例 1

安裝 pam-devel

[root@www ~]# yum install pam-devel
Setting up Install Process
Parsing package install arguments
Resolving Dependencies  <==先檢查軟體的屬性相依問題
--> Running transaction check
---> Package pam-devel.i386 0:0.99.6.2-4.el5 set to be updated
--> Processing Dependency: pam = 0.99.6.2-4.el5 for package: pam-devel
--> Running transaction check
---> Package pam.i386 0:0.99.6.2-4.el5 set to be updated
filelists.xml.gz          100% |=========================| 1.6 MB    00:05
filelists.xml.gz          100% |=========================| 138 kB    00:00
-> Finished Dependency Resolution
……(省略)

範例 2

移除 pam-devel

[root@www ~]# yum remove pam-devel
Setting up Remove Process
Resolving Dependencies  <==同樣的,先解決屬性相依的問題
--> Running transaction check
---> Package pam-devel.i386 0:0.99.6.2-4.el5 set to be erased
--> Finished Dependency Resolution

Dependencies Resolved

=============================================================================
 Package                 Arch       Version          Repository        Size
=============================================================================
Removing:
 pam-devel               i386       0.99.6.2-4.el5   installed         495 k

Transaction Summary
=============================================================================
Install      0 Package(s)
Update       0 Package(s)
Remove       1 Package(s)  <==還好,並沒有屬性相依的問題,單純移除一個軟體

Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Erasing   : pam-devel                    ######################### [1/1]

Removed: pam-devel.i386 0:0.99.6.2-4.el5
Complete!

範例 3

利用 yum 的功能,找出以 pam 為開頭的軟體名稱有哪些?

[root@www ~]# yum list pam*
Installed Packages
pam.i386                  0.99.6.2-3.27.el5      installed
pam_ccreds.i386           3-5                    installed
pam_krb5.i386             2.2.14-1               installed
pam_passwdqc.i386         1.0.2-1.2.2            installed
pam_pkcs11.i386           0.5.3-23               installed
pam_smb.i386              1.1.7-7.2.1            installed
Available Packages <==底下則是『可升級』的或『未安裝』的
pam.i386                  0.99.6.2-4.el5         base
pam-devel.i386            0.99.6.2-4.el5         base
pam_krb5.i386             2.2.14-10              base

使用映象檔案安裝yum 源步驟

1、已使用映象檔案 /dev/cdrom

2、建立映象檔案的掛載目錄,進行掛載

mkdir /media/cdrom

mount /dev/cdrom /media/cdrom

3、將 掛載加入開機自啟動/etc/fstab

/dev/cdrom /media/cdrom iso9660 defaults 0 0

4、在/etc/yum.repos.d/目錄下建立如serve.repo,寫入內容

[serve]
name=serve
baseurl=file:///media/cdrom          ---file://  指以檔案作為baseurl,/media/cdrom為/dev/cdrom映象檔案的掛載目錄
gpgcheck=0
enabled=1

5、yum repolist 檢查掛載情況

[trade@config-133 yum.repos.d]$ yum repolist
已載入外掛:langpacks, product-id, subscription-manager
serve | 4.1 kB 00:00
源標識 源名稱 狀態
serve serve 4,305
repolist: 4,305

6、測試安裝tree,即可

yum install tree -y 

國內 yum 源

網易(163)yum源是國內最好的yum源之一 ,無論是速度還是軟體版本,都非常的不錯。

將yum源設定為163 yum,可以提升軟體包安裝和更新的速度,同時避免一些常見軟體版本無法找到。

安裝步驟

首先備份/etc/yum.repos.d/CentOS-Base.repo

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

下載對應版本 repo 檔案, 放入 /etc/yum.repos.d/ (操作前請做好相應備份)

  • CentOS5 :http://mirrors.163.com/.help/CentOS5-Base-163.repo
  • CentOS6 :http://mirrors.163.com/.help/CentOS6-Base-163.repo
  • CentOS7 :http://mirrors.163.com/.help/CentOS7-Base-163.repo
wget http://mirrors.163.com/.help/CentOS6-Base-163.repo
mv CentOS6-Base-163.repo CentOS-Base.repo

執行以下命令生成快取

yum clean all
yum makecache

除了網易之外,國內還有其他不錯的 yum 源,比如中科大和搜狐。

中科大的 yum 源,安裝方法檢視:https://lug.ustc.edu.cn/wiki/mirrors/help/centos

sohu 的 yum 源安裝方法檢視: http://mirrors.sohu.com/help/centos.html


IT145.com E-mail:sddin#qq.com