Centos yum與rpm命令安裝軟件,及yum配置過程

軟件包的分類

  • 源碼包
  • 二進制包

1、源碼包

安裝的時候需要人工設定相關安裝參數,
優點:

  1. 開源的,可以自行修改代碼
  2. 安裝的時候可以自定義功能,按需選擇功能
  3. 編譯安裝,更加適合系統,
  4. 卸載方便,直接刪除安裝目錄

缺點:

  1. 步驟多,難度大
  2. 編譯時間長
  3. 錯誤新手比較難解決

2、二進制包

優點:

  1. 編譯過的安裝包,執行比較簡單,簡單命令就可以實現安裝 升級 卸載
  2. 安裝速度塊

缺點:

  1. 看不到源碼
  2. 功能無法選擇
  3. 依賴關係需要解決

二進制包安裝(yum與rpm)

二者區別

  • rpm管理本地包的安裝、卸載、查詢
  • yum擁有rpm的功能,還具備了從網絡上下載rpm包和依賴的功能。

一.yum安裝

如何配置網絡源

  1. 尋找網絡源
    列舉幾個:
    阿里雲鏡像站點:https://developer.aliyun.com/mirror/centos?spm=a2c6h.13651102.0.0.3e221b11346ud6
    網易雲鏡像站點:http://mirrors.163.com/.help/centos.html
  2. 備份配置
  • 備份:mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
  • . 下載新的 CentOS-Base.repo 到 /etc/yum.repos.d/
  • 運行 yum makecache 生成緩存

如何配置本地源

步驟:

1. 掛載光盤
  • 臨時掛載 :mount /dev/sr0 /media (再次開機後失效)
  • 永久性掛載 : vi /etc/fstab
    輸入到最後一行 -->/dev/sr0 /media iso9660 defaults 0 0
[root@fei ~]# cat /etc/fstab

#
#/etc/fstab
#Created by anaconda on Tue Mar 17 21:54:16 2020
#
#Accessible filesystems, by reference, are maintained under '/dev/disk'
#See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=b298fe23-319e-4fbb-b373-5b9dfbe70864 /                       ext4    defaults        1 1
UUID=ec6ebd58-971b-415f-9287-f44abddd0a20 /boot                   ext4    defaults        1 2
UUID=12f8ad69-974f-4cba-8c9a-9d679fc9cc07 swap                    swap    defaults        0 0
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0
/dev/sr0                /media                  iso9660 defaults        0 0                    /完成掛載。

/etc/fstab下內容

第一列:磁盤設備文件或UUID(blkid獲取)
第二列:設備掛載點
第三例:磁盤文件系統格式
第四列:文件系統參數
第五列:能否被dump備份

  • 0不做備份
  • 1每天備份
  • 2不定期備份

第六列:是否檢查扇區

  • 0不檢查
  • 1最早檢查
  • 1級別檢查完之後檢查
2. 備份網絡源
  • cd /etc/yum.repos.d - 到/etc/yum.repos.d目錄下。
  • mkdir bak-創建一個目錄bak。
  • mv Ce* bak-將該目錄下名字爲Ce開頭的文件放入bak中。

[root@fei ~]# cd /etc/yum.repos.d/
[root@fei yum.repos.d]# ls
bak  dvd.repo
[root@fei yum.repos.d]# cd bak
[root@fei bak]# ls
CentOS-Base.repo       CentOS-fasttrack.repo  CentOS-Vault.repo
CentOS-Debuginfo.repo  CentOS-Media.repo

3. 創建光盤的yum源文件
  • vi dvd.repo -->將以下內容寫入dvd.repo中

    [Centos]
    name=Centos6.8
    baseurl=file:///media 注:三個/,前兩個是標準格式,第三個代表根目錄
    gpgcheck=0
    enabled=1

[root@fei yum.repos.d]# cat dvd.repo
[Centos 6.8]
[Centos]
name=centos6.8
baseurl=file:///media
gpgcheck=0
enable=1

4. 清空緩存
  • yum clean all
    在這裏插入圖片描述
5. 創建緩存
  • yum makecache
[root@fei ~]# yum makecache
已加載插件:fastestmirror
Bad id for repo: Centos 6.8, byte =   6
Determining fastest mirrors
Centos                                                   | 4.0 kB     00:00 ...
Centos/group_gz                                          | 226 kB     00:00 ...
Centos/filelists_db                                      | 6.3 MB     00:00 ...
Centos/primary_db                                        | 4.7 MB     00:00 ...
Centos/other_db                                          | 2.8 MB     00:00 ...
元數據緩存已建立

6. 驗證
  • yum list -->列舉出可以安裝的軟件。

與yum相關命令

  • 顯示配置倉庫
    yum repolist [all|enabled]
  • 顯示安裝包
    yum list
    yum list | grep XXXX
    yum grouplist
    yun list installed | grep
    yum list available 顯示可以安裝的包
    yum list updates 顯示已更新包
    yum list recent 顯示最近增加的包
  • 安裝
    yum install 包名
    yum instlal 包名 -y
[root@fei yum.repos.d]# yum install tree
已加載插件:fastestmirror
Bad id for repo: Centos 6.8, byte =   6
設置安裝進程
Loading mirror speeds from cached hostfile
解決依賴關係
--> 執行事務檢查
---> Package tree.x86_64 0:1.5.3-3.el6 will be 安裝
--> 完成依賴關係計算

依賴關係解決

================================================================================
 軟件包         架構             版本                    倉庫              大小
================================================================================
正在安裝:
 tree           x86_64           1.5.3-3.el6             Centos            36 k

事務概要
================================================================================
Install       1 Package(s)

總下載量:36 k
Installed size: 65 k
確定嗎?[y/N]:
//加上- y 就不用確認了
  • 升級
    yum update 包名
[root@fei yum.repos.d]# yum update tree
已加載插件:fastestmirror
Bad id for repo: Centos 6.8, byte =   6
設置更新進程
Loading mirror speeds from cached hostfile
不升級任何軟件包

  • 卸載
    yum remove 包名

  • 搜索
    yum search 包名

  • 顯示信息 (與是否安裝無關)
    yum info 包名

[root@fei yum.repos.d]# yum info tree
已加載插件:fastestmirror
Bad id for repo: Centos 6.8, byte =   6
Loading mirror speeds from cached hostfile
已安裝的軟件包
Name        : tree
Arch        : x86_64
Version     : 1.5.3
Release     : 3.el6
Size        : 65 k
Repo        : installed
From repo   : Centos
Summary     : File system tree viewer
URL         : http://mama.indstate.edu/users/ice/tree/
License     : GPLv2+
Description : The tree utility recursively displays the contents of directories
            : in a tree-like format.  Tree is basically a UNIX port of the DOS
            : tree utility.
  • 列出軟件包提供哪些文件
    yum provides 包名
[root@fei yum.repos.d]# yum provides tree
已加載插件:fastestmirror
Bad id for repo: Centos 6.8, byte =   6
Loading mirror speeds from cached hostfile
tree-1.5.3-3.el6.x86_64 : File system tree viewer
Repo        : Centos
匹配來自於:



tree-1.5.3-3.el6.x86_64 : File system tree viewer
Repo        : installed
匹配來自於:
Other       : 提供依賴滿足:tree

二.rpm安裝

安裝命令執行位置

這種安裝方法需要到/media/Packages/位置執行命令
/media/Packages/可查看能夠安裝的所有軟件。

[root@fei /]# cd /media/Packages/
[root@fei Packages]# ls
389-ds-base-1.2.11.15-74.el6.x86_64.rpm
389-ds-base-libs-1.2.11.15-74.el6.x86_64.rpm
.
.
.

例如:
389-ds-base-1.2.11.15-74.el6.x86_64.rpm
解釋:

389-ds-base 軟件包名
1.2.11 依次爲;主版本,四版本,修正版本。
15-74 發佈版本號,表示第多少次編譯
el6 企業版
x86_64 x86 cpu架構 64 64位系統
rpm 後綴名

安裝命令 :

  • rpm -ivh +包名

    i:install
    v:顯示安裝信息
    h:顯示進度
    –nodeps:不檢測依賴
    –replacepkgs:重新安裝

[root@fei Packages]# rpm -ivh zip-3.0-1.el6_7.1.x86_64.rpm
//安裝時要在該目錄下,使用包的全名。
[root@fei Packages]# rpm -ivh zip-3.0-1.el6_7.1.x86_64.rpm
warning: zip-3.0-1.el6_7.1.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
Preparing...                ########################################### [100%]
   1:zip                    ########################################### [100%]

與rpm相關命令

  • 升級
    rpm -Uvh U升級或者安裝
    -U

  • 卸載:
    rpm -e

  • 查詢
    rpm -qa :查看已安裝軟件。
    rpm -ql : 查找已安裝軟件安裝包的位置

[root@fei Packages]# rpm -qa zip
zip-3.0-1.el6_7.1.x86_64
[root@fei Packages]# rpm -ql zip  // 查找已安裝軟件安裝包的位置
/usr/bin/zip
/usr/bin/zipcloak
/usr/bin/zipnote
/usr/bin/zipsplit
/usr/share/doc/zip-3.0
/usr/share/doc/zip-3.0/CHANGES
/usr/share/doc/zip-3.0/LICENSE
/usr/share/doc/zip-3.0/README
/usr/share/doc/zip-3.0/README.CR
/usr/share/doc/zip-3.0/TODO
/usr/share/doc/zip-3.0/WHATSNEW
/usr/share/doc/zip-3.0/WHERE
/usr/share/doc/zip-3.0/algorith.txt
/usr/share/man/man1/zip.1.gz
/usr/share/man/man1/zipcloak.1.gz
/usr/share/man/man1/zipnote.1.gz
/usr/share/man/man1/zipsplit.1.gz

  • 顯示信息:
    rpm -qi
[root@fei Packages]# rpm -qi zip  //顯示該軟件的相關信息。
Name        : zip                          Relocations: (not relocatable)
Version     : 3.0                               Vendor: CentOS
Release     : 1.el6_7.1                     Build Date: 2015年11月10日 星期二 18時02分11秒
Install Date: 2020年03月17日 星期二 23時58分47秒      Build Host: c6b9.bsys.dev.centos.org
Group       : Applications/Archiving        Source RPM: zip-3.0-1.el6_7.1.src.rpm
Size        : 823164                           License: BSD
Signature   : RSA/SHA1, 2015年11月10日 星期二 20時42分06秒, Key ID 0946fca2c105b9de
Packager    : CentOS BuildSystem <http://bugs.centos.org>
URL         : http://www.info-zip.org/Zip.html
Summary     : A file compression and packaging utility compatible with PKZIP
Description :
The zip program is a compression and file packaging utility.  Zip is
analogous to a combination of the UNIX tar and compress commands and
is compatible with PKZIP (a compression and file packaging utility for
MS-DOS systems).

Install the zip package if you need to compress files using the zip
program.
  • 查詢某個文件屬於那個 RPM包

    rpm -qf +文件的絕對路徑。

[root@fei /]# rpm -qf /usr/bin/zip
zip-3.0-1.el6_7.1.x86_64
  • 查詢依賴關係
    rpm -qR
[root@fei /]# rpm -qR zip

libc.so.6()(64bit)
libc.so.6(GLIBC_2.2.5)(64bit)
libc.so.6(GLIBC_2.3)(64bit)
libc.so.6(GLIBC_2.3.4)(64bit)
libc.so.6(GLIBC_2.4)(64bit)
libc.so.6(GLIBC_2.7)(64bit)
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rtld(GNU_HASH)
rpmlib(PayloadIsXz) <= 5.2-1
  • 校驗
    rpm -V

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章