1. 程式人生 > >五周第一次課(3月5日)

五周第一次課(3月5日)

linux 學習 筆記

7.1 安裝軟件包的三種方法

7.2 rpm包介紹

7.3 rpm工具用法

7.4 yum工具用法

7.5 yum搭建本地倉庫



7.1 安裝軟件包的三種方法


安裝文件是二進制文件,不能通過cat去查看文件內容。


三種方法:

技術分享圖片


rpm工具 rpm包相當於windows .exe的文件 rpm包用rpm工具直接安裝上即可。大多數rpm包的安裝路徑和文件名被設定好


yum工具(最簡單) 另外一種安裝rpm包的工具。在linux下,安裝包都被稱為rpm包。yum支持自動安裝相互依賴的包。


*源碼包(最難) 源代碼。需要通過編譯器把源碼包編譯成可執行文件。



7.2 rpm包介紹


介紹

技術分享圖片


設置虛擬機光驅連接,進行掛載

技術分享圖片

#df -h



#ls /mnt/

#mount /dev/cdrom /mnt 把光驅掛載到/mnt上

復制 光盤只讀,不能寫東西進去。


#cd /mnt

#ls

CentOS_BuildTag EULA images LiveOS repodata RPM-GPG-KEY-CentOS-Testing-7

EFI GPL isolinux Packages RPM-GPG-KEY-CentOS-7 TRANS.TBL



#cd packages

#ls 大量rpm包

.

.

.

.

.

.

.

yum-plugin-fastestmirror-1.1.31-42.el7.noarch.rpm

yum-plugin-tmprepo-1.1.31-42.el7.noarch.rpm

yum-plugin-verify-1.1.31-42.el7.noarch.rpm

yum-plugin-versionlock-1.1.31-42.el7.noarch.rpm

yum-utils-1.1.31-42.el7.noarch.rpm

zenity-3.22.0-1.el7.x86_64.rpm

zip-3.0-11.el7.x86_64.rpm

zlib-1.2.7-17.el7.x86_64.rpm

zlib-devel-1.2.7-17.el7.x86_64.rpm

zsh-5.0.2-28.el7.x86_64.rpm

zziplib-0.13.62-5.el7.x86_64.rpm



rpm包文件名特點

- 數字 .

字符串、包名 - 版本號(主版本號.次版本號.小版本號,又叫修正版本號) - 發布版本號(el7=centos7,) - 平臺位置(x86,x64。centos7不再區分x86與x64,默認64) - (後綴名)




7.3 rpm工具用法


安裝rpm

#rpm -ivh zsh-5.0.2-28.el7.x86_64.rpm i=install v=view = human(進度) 大致意思就是更人性化顯示安裝

[root@centos7 Packages]# rpm -ivh zsh-5.0.2-28.el7.x86_64.rpm

準備中... ################################# [100%]

正在升級/安裝...

1:zsh-5.0.2-28.el7 ################################# [100%]


升級rpm包

#rpm -Uvh


卸載rpm包 直接加包名,無需帶詳細信息。正常是不顯示任何進度。

#rpm -e zsh


查看已安裝的rpm包,查詢後的包可以卸載,不過rpm不支持依賴卸載。

#rpm -qa


查看某個包是否被安裝

#rpm -q 包名


查看指定包信息 i=information

# rpm -qi vim-enhanced

Name : vim-enhanced

Epoch : 2

Version : 7.4.160

Release : 2.el7

Architecture: x86_64

Install Date: 2018年02月27日 星期二 11時23分08秒

Group : Applications/Editors

Size : 2292098

License : Vim

Signature : RSA/SHA256, 2017年08月11日 星期五 04時15分38秒, Key ID 24c6a8a7f4a80eb5

Source RPM : vim-7.4.160-2.el7.src.rpm

Build Date : 2017年08月02日 星期三 08時46分12秒

Build Host : c1bm.rdu2.centos.org

Relocations : (not relocatable)

Packager : CentOS BuildSystem <http://bugs.centos.org>

Vendor : CentOS

URL : http://www.vim.org/


列出某包名所安裝的文件

#rpm -ql 包名

#rpm -ql vim-enhanced

/etc/profile.d/vim.csh

/etc/profile.d/vim.sh

/usr/bin/rvim

/usr/bin/vim

/usr/bin/vimdiff

/usr/bin/vimtutor


查看一個文件是由哪個包安裝

#rpm -qf 絕對路徑

#rpm -qf /usr/bin/vim


整段高亮小技巧 2個`(`是tab上的鍵)輸出的結果可以搭配#rpm -qf 使用,

例如#rpm -qf `which cd` ,該命令是先輸出which cd的效果(查看cd的絕對路徑), 然後再rpm -qf 處理``輸出的結果。整條命令結果就是:#rpm -qf cd的絕對路徑。紅色高亮註意:2行以上的輸出結果無效。

# rpm -qf `which cd`

bash-4.2.46-28.el7.x86_64



7.4 yum工具用法


介紹

技術分享圖片

依賴安裝示範

技術分享圖片找到texlive-2012-38.20130427_r30134.el7.x86_64.rpm這個包,並嘗試安裝。

# rpm -ivh texlive-2012-38.20130427_r30134.el7.x86_64.rpm

錯誤:依賴檢測失敗:

texlive-scheme-basic 被 texlive-2:2012-38.20130427_r30134.el7.x86_64 需要

texlive-collection-latexrecommended 被 texlive-2:2012-38.20130427_r30134.el7.x86_64 需要

tex-kpathsea 被 texlive-2:2012-38.20130427_r30134.el7.x86_64 需要

tex-tetex 被 texlive-2:2012-38.20130427_r30134.el7.x86_64 需要


安裝失敗,因為沒安裝被依賴的包。


嘗試用yum工具安裝

#yum install 包名(無需文件名)

#yum install texlive

技術分享圖片一共200多個文件包,如果一個一個安裝,很浪費時間。所以利用yum 安裝能解決依賴包安裝問題。


#yum list 列出可用rpm包

技術分享圖片

包名,包的相關信息 版本號,平臺版本號 倉庫名


查看base倉庫相關文件

# ls /etc/yum.repos.d/

CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Media.repo CentOS-Vault.repo

CentOS-CR.repo CentOS-fasttrack.repo CentOS-Sources.repo

# cat /etc/yum.repos.d/CentOS-Base.repo


搜索相關包

#yum search 包名

#yum search vim


#yum search network

技術分享圖片

此處搜索略模糊,不太精準。其中還有只有network相關的包名,而並不是network的包。


精準搜索

#yum list |grep 'vim' 此處搜索vim的包,而且帶有高亮效果,grep是過濾作用。

技術分享圖片

安裝一個包的命令

#yum list [-y] y的作用是默認用yes回答安裝期間的詢問。


#yum group install[-y]用法

# yum grouplist

Failed to set locale, defaulting to C

Loaded plugins: fastestmirror

There is no installed groups file.

Maybe run: yum groups mark convert (see man yum)

Loading mirror speeds from cached hostfile

* base: mirrors.aliyun.com

* extras: mirrors.aliyun.com

* updates: mirrors.aliyun.com

Available Environment Groups:

Minimal Install

Compute Node

Infrastructure Server

File and Print Server

Basic Web Server

Virtualization Host

Server with GUI

GNOME Desktop

KDE Plasma Workspaces

Development and Creative Workstation

Available Groups:

Compatibility Libraries

Console Internet Tools

Development Tools

Graphical Administration Tools

Legacy UNIX Compatibility

Scientific Support

Security Tools

Smart Card Support

System Administration Tools

System Management

Done


假如要安裝Virtualization Host,利用命令#yum groupinstall。

#yum groupinstall 'Virtualization Host' (如果是一個單詞無需加''如果是兩個單詞,需要加'')

技術分享圖片

依賴刪除

#yum remove [-y] 慎用


依賴升級 慎用,如果不加包名,此命令會將系統全部包都升級,包括系統。

#yum update [-y]


搜索vim命令有有哪些包去安裝它,支持通配。(前提是vim是不存在的。

#yum provides "/*/vim"



7.5 yum搭建本地倉庫


yum安裝的rpm包,是通過一個倉庫去進行遠程連接下載,隨後進行安裝的。然而,倉庫可以搭建成本地倉庫。


準備工作

技術分享圖片

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


#rm -f /etc/yum.repos.d/* 把/etc/yum.repos.d/裏面所有文件刪除


#vim /etc/yum.repos.d/dvd.repo vim dvd.repo文件,把下面參數寫入。

0代表不,1代表是。

[dvd]

name=install dvd

baseurl=file:///mnt

enable=1

gpgcheck=0



#yum clean all 清理緩存


#yumlist 或者 #yumlist |less 查看

這裏可以看到剛剛創建的名為dvd的倉庫。

倉庫名前綴帶@代表已經安裝過

技術分享圖片

技術分享圖片

技術分享圖片

Available Packages 表示可安裝的包(可以理解為未安裝)

# yum install GConf2.x86_64

安裝過程中,同樣也遇到需要安裝依賴包。此處y就好。

Dependencies Resolved


=============================================================================================================================

Package Arch Version Repository Size

=============================================================================================================================

Installing:

GConf2 x86_64 3.2.6-8.el7 dvd 1.0 M

Installing for dependencies:

psmisc x86_64 22.20-15.el7 dvd 141 k


Transaction Summary

=============================================================================================================================

Install 1 Package (+1 Dependent package)


Total download size: 1.1 M

Installed size: 6.8 M

Is this ok [y/d/N]: y

Downloading packages:

-----------------------------------------------------------------------------------------------------------------------------

Total 19 MB/s | 1.1 MB 00:00:00

Running transaction check

Running transaction test

Transaction test succeeded

Running transaction

Installing : psmisc-22.20-15.el7.x86_64 1/2

Installing : GConf2-3.2.6-8.el7.x86_64 2/2

Verifying : psmisc-22.20-15.el7.x86_64 1/2

Verifying : GConf2-3.2.6-8.el7.x86_64 2/2


Installed:

GConf2.x86_64 0:3.2.6-8.el7


Dependency Installed:

psmisc.x86_64 0:22.20-15.el7


Complete!


制作本地DVD倉庫的作用,可以解決很多依賴包安裝。


五周第一次課(3月5日)