1. 程式人生 > >[Linux][入門系列]CentOS 的基礎使用-yum使用手冊(上)

[Linux][入門系列]CentOS 的基礎使用-yum使用手冊(上)

前言

對於一個作業系統來說,軟體數量的多少決定了一個作業系統的生態完整。而管理軟體的工具則側面幫助作業系統完善自己的體系。

在Windows裡,我們可以通過Exe安裝包方式安裝軟體或者執行綠色軟體,而現在對於電腦不太熟練的使用者來說,使用✘✘電腦管家不失為一個好的選擇,電腦管家雖然方便,但是隨之帶來的相關問題也不容忽視,這些Windows的問題我們按下不談。
在Mac中,我們有App Store作為我們安裝軟體的主要工具。Apple對於自己軟體生態的把控比較到位,但是同時我們也可以使用拖動app檔案的方式安裝軟體。

而在Linux中,包管理器扮演了一個很重要的角色,本章及後面講以CentOS中yum工具為例,講述如何安裝軟體以及進行相關操作。

需要注意的是,如果你使用的Ubuntu系統,包管理軟體為apt-get(較老版本)或者apt(較新版本),其使用方式和yum不同之處很大,但是有異曲同工之處,學習完yum的使用之後使用apt其實幾乎沒有學習成本。

包管理器

我們重新審視下,什麼是包管理器?

包管理器全程實際是軟體包管理器,它在雲端或者本地有一個目錄,列出了所有管轄下的軟體。當你需要安裝、解除安裝或者查詢的時候,它會列出相應軟體並直接預設進行安裝。
通常不同的環境有不同的包管理器,如Mac有brew包管理器,Node有NPM包管理器,Ruby有gem包管理器等等。
而cent作為最為穩定的系統之一,其預設的yum管理器非常之有名且易用。可以說百分之七十的軟體都可以用yum安裝並完美執行。

剩下的百分之三十去哪了?

是的,剩下那一部分的軟體其實也可用yum安裝。但是有時會出現一些特殊情況。

比如yum安裝的軟體版本通常會比較老(為了穩定),有時候老的無法忍受,即使你換了yum源也沒有辦法升級,此時我們就不得不使用編譯安裝等其他方法
還有,如果安裝的不同軟體有相互依賴關係,通常yum會自己處理好,但是如果你之前手動安裝過某軟體,新軟體又需要對其依賴等等,這些yum的自動化程式就無法幫你做了。相關的問題我們遇到以後再說~

yum 安裝軟體

yum的安裝流程我們簡單的敘述如下:

  1. 根據使用者輸入,通過正則匹配得到可能的使用者想安裝的軟體。
  2. 列出軟體,等待使用者確認是否安裝。
  3. 安裝軟體,輸出到預設目錄中。
  4. 配置相關環境變數。

其實這些流程是不需要使用者干涉的,使用者只需要在安裝時確認一下是否安裝就可以了。
而安裝軟體時,很簡單,例如我們想安裝vim,只需要:

[root@localhost ~]# yum install vim

這樣的話,系統會自動給出軟體並要求你確認

.....
正在安裝:
 vim-enhanced                 x86_64                 2:7.4.160-1.el7_3.1                 updates                 1.0 M

事務概要
=======================================================================================================================
安裝  1 軟體包

總下載量:1.0 M
安裝大小:2.2 M
Is this ok [y/d/N]:

此時選擇確認即可。
當然你可以輸入更多的包同時安裝

[root@localhost ~]# yum install vim gem

對於軟體,每一個系統都要要求你確認下, 如果你覺得煩,可以使用-y引數。

[root@localhost ~]# yum install vim gem -y

如果可以確定軟體有更新,我們可以使用check和update更新最先軟體

[root@localhost ~]# yum check-update vim
[root@localhost ~]# yum update vim

yum 管理軟體

軟體安裝好之後,我們需要對軟體進行管理,如何管理呢?
使用list引數列出

[root@localhost ~]# yum list installed

當然,如果這時是想要list一個特定的軟體或者一類軟體,可以使用簡單的表示式。

[[email protected] ~]# yum list yum*
已安裝的軟體包
yum.noarch                                                        3.4.3-150.el7.centos                        @anaconda
yum-metadata-parser.x86_64                                        1.1.4-10.el7                                @anaconda
yum-plugin-fastestmirror.noarch                                   1.1.31-40.el7                               @anaconda
可安裝的軟體包
yum-NetworkManager-dispatcher.noarch                              1.1.31-40.el7                               base
yum-cron.noarch                                                   3.4.3-150.el7.centos                        base
yum-langpacks.noarch                                              0.4.2-7.el7                                 base

注意,這裡它會列出已安裝的軟體包和可以安裝的軟體包,很方便吧~
當然,yum還支援使用一些其他引數管理軟體,諸如info,search引數

[root@localhost ~]# yum info vim
[root@localhost ~]# yum search vim

yum 刪除軟體

yum刪除軟體也非常的簡單,使用remove引數就可以,

[root@localhost ~]# yum remove vim

結尾

這次我們大致講了yum的常用使用方法,下次我們講rpm包與yum的聯合使用,yum源的設定以及使用yum需求化的操作,如只下載安裝包等。
大家可以根據本期所講,安裝一些軟體,諸如php java python vim net-tools等等。有其他興趣的可以留言呀~