7.1 安裝軟件包的三種方法python
7.2 rpm包介紹linux
7.3 rpm工具用法編程
7.4 yum工具用法vim
7.5 yum搭建本地倉庫centos
7.1 安裝軟件包的三種方法:緩存
1.rpm工具:安全
跟Windows下的ext安裝包差很少,可直接安裝,不須要太多的設置。安裝路徑與文件名基本是固定好的bash
2.yum工具:服務器
yum是另一種工具去安裝rpm包,centos下這種包統一叫rpm包網絡
yum是python開發的一種工具,實際操做的對象也是rpm包。yum的優點是支持自動的去安裝依賴的包
3.源碼包
能夠看到這個源碼的當時做者,用編程語言開發的各個文件均可以看到,須要經過編譯器把源碼包編譯成可執行的文件。
這三種方法,源碼包是最難的,yum是最簡單的
---------------------------------------------------------------------------------------------------------------------------------------
7.2 rpm包介紹:
1.~設置光驅並掛載
2.~rpm包格式,包名、版本號、發佈版本號、平臺
1.虛擬機中右下角,右擊光耦按圖標,點鏈接。把光盤鏈接到linux裏來,而後進行掛載
掛載光驅,方法:
mount /dev/cdrom /mnt/
[root@aminglinux-01 ~]# mount /dev/cdrom /mnt/
mount: /dev/sr0 寫保護,將以只讀方式掛載 由於光盤是隻讀的,因此會提示
咱們進入mnt看一下,這裏面就是光驅裏面的內容
[root@aminglinux-01 ~]# cd /mnt/
[root@aminglinux-01 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
2.其中packages這個目錄裏,就是rpm包,例如:
xz-devel-5.2.2-1.el7.x86_64.rpm
數字前面的是包名
數字爲版本號,依次爲,主版本、次版本、修正版本
1.el7爲發佈版本號
x86_64爲平臺
---------------------------------------------------------------------------------------------------------------------------------------
7.3 rpm工具用法:
3.~rpm -ivh rpm包文件 //安裝
4.~rpm -Uvh rpm包文件 //升級
5.~rpm -e 包名 //卸載
6.~rpm -qa //查詢安裝的包
7.~rpm -q 包名 //查詢指定包是否安裝
8.~rpm -qi 包名 //查詢指定包信息
9.~rpm -ql 包名 //列出包安裝的文件
10.~rpm -qf 文件的絕對路徑 //查看一個文件是有哪一個包安裝的
配合`which cd`可直接查看
實例:
3.~rpm -ivh rpm包文件 //安裝
[root@aminglinux-01 Packages]# rpm -ivh zsh-5.0.2-28.el7.x86_64.rpm
準備中... ################################# [100%]
正在升級/安裝...
1:zsh-5.0.2-28.el7 ################################# [100%]
4.~rpm -Uvh rpm包文件 //升級
[root@aminglinux-01 Packages]# rpm -Uvh zsh-5.0.2-28.el7.x86_64.rpm
準備中... ################################# [100%]
軟件包 zsh-5.0.2-28.el7.x86_64 已經安裝
5.~rpm -e 包名 //卸載
[root@aminglinux-01 Packages]# rpm -e zsh 不顯示什麼即爲卸載成功
6.~rpm -qa //查詢安裝的包
[root@aminglinux-01 Packages]# rpm -qa
open-vm-tools-10.1.5-3.el7.x86_64
grub2-common-2.02-0.64.el7.centos.noarch
kexec-tools-2.0.14-17.el7.x86_64
setup-2.8.71-7.el7.noarch
NetworkManager-tui-1.8.0-9.el7.x86_64
basesystem-10.0-7.el7.centos.noarch
NetworkManager-wifi-1.8.0-9.el7.x86_64
--
-
7.~rpm -q 包名 //查詢指定包是否安裝
[root@aminglinux-01 Packages]# rpm -q kernel
kernel-3.10.0-693.el7.x86_64
8.~rpm -qi 包名 //查詢指定包信息 (用的很少)
[root@aminglinux-01 ~]# rpm -qi kernel
Name : kernel
Version : 3.10.0
Release : 693.el7
Architecture: x86_64
--
-
9.~rpm -ql 包名 //列出包安裝的文件
[root@aminglinux-01 ~]# 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
10.~rpm -qf 文件的絕對路徑 //查看一個文件是有哪一個包安裝的
[root@aminglinux-01 ~]# rpm -qf /usr/bin/vim
vim-enhanced-7.4.160-4.el7.x86_64
使用反引號`which` 一個命令的路徑,配合rpm -qf可直接查詢,例如
[root@aminglinux-01 ~]# rpm -qf `which cd`
bash-4.2.46-28.el7.x86_64
---------------------------------------------------------------------------------------------------------------------------------------
7.4 yum工具用法:
yum能夠自動幫助解決依賴關係的
~1.yum list 列出可用rpm包
ls /etc/yum.repos.d/ (爲yum的配置文件)
~2.yum search vim 搜索vim包,但不精準
yum list |grep 'vim' 較爲精準,詳細見實例
~3.yum install -y 不詢問直接安裝文件
~4.yum grouplist 列出可用的組
yum groupinstall [-y] 安裝可用的組,詳細見實例
~5.yum remove [-y] ppp 卸載ppp這個包,連同依賴的一塊兒卸載,較危險
~6.yum update [-y] ppp 升級ppp這個包,若是不加包名,會將系統裏全部的rpm包所有升 級,包括系統。需注意
~7.yum provides 「/*/vim" 搜索vim這個命令有哪些包,好比不知道這個包的名字,只知道命令。/*/表明路徑不固定,統配。前提是沒有安裝vim這個命令
實例:
~1.yum list 列出可用rpm包:
zziplib-utils.x86_64 0.13.62-5.el7 base
包的名字及信息 版本號以及平臺版本號 倉庫名字
關於倉庫,能夠看一下yum的配置文件
[root@aminglinux-01 ~]# ls /etc/yum.repos.d/
-
--
[base] 找到base,這就是yum的倉庫文件,紅色爲網絡地址
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-gpg/RPM-GPG-KEY-CentOS-7
--
-
~2.yum search network 搜索vim包,但不精準
只要有network出現的包都會列出來,不精準
[root@aminglinux-01 ~]# yum search network
已加載插件:fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.tuna.tsinghua.edu.cn
* extras: mirrors.tuna.tsinghua.edu.cn
* updates: mirrors.tuna.tsinghua.edu.cn
======================================================= N/S matched: network ========================================================
NetworkManager.x86_64 : Network connection manager and user applications
NetworkManager-adsl.x86_64 : ADSL device plugin for NetworkManager
NetworkManager-bluetooth.x86_64 : Bluetooth device plugin for NetworkManager
NetworkManager-config-server.noarch : NetworkManager config file for "server-like" defaults
--
-
yum list |grep 'vim' 較爲精準
grep是過濾字符串的工具
管道符|能夠將前面輸出的結果丟給後面的這個命令,也就是yum list的輸出做爲grep的輸入
[root@aminglinux-01 ~]# yum list |grep 'vim'
vim-common.x86_64 2:7.4.160-4.el7 @base
vim-enhanced.x86_64 2:7.4.160-4.el7 @base
vim-filesystem.x86_64 2:7.4.160-4.el7 @base
vim-minimal.x86_64 2:7.4.160-2.el7 @anaconda
protobuf-vim.x86_64 2.5.0-8.el7 base
vim-X11.x86_64 2:7.4.160-4.el7 base
vim-minimal.x86_64 2:7.4.160-4.el7 base
~4.yum grouplist 列出可用的組
[root@aminglinux-01 ~]# yum grouplist
已加載插件:fastestmirror
沒有安裝組信息文件
Maybe run: yum groups mark convert (see man yum)
Loading mirror speeds from cached hostfile
* base: mirrors.tuna.tsinghua.edu.cn
* extras: mirrors.tuna.tsinghua.edu.cn
* updates: mirrors.tuna.tsinghua.edu.cn
可用的環境分組:
最小安裝
基礎設施服務器
計算節點
文件及打印服務器
基本網頁服務器
虛擬化主機
帶 GUI 的服務器
GNOME 桌面
KDE Plasma Workspaces
開發及生成工做站
可用組:
傳統 UNIX 兼容性
兼容性程序庫
圖形管理工具
安全性工具
開發工具
控制檯互聯網工具
智能卡支持
科學記數法支持
系統管理
系統管理工具
完成
選擇須要的包來安裝,可用LANG=en換成英文,來進行安裝
yum groupinstall ‘Virtualization Host’ 若是須要安裝的包有空格,要加單引號。沒有空格就不加單引號
也能夠加-y 不詢問安裝
[root@aminglinux-01 ~]# yum groupinstall 'GNOME Desktop'
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.tuna.tsinghua.edu.cn
* extras: mirrors.tuna.tsinghua.edu.cn
* updates: mirrors.tuna.tsinghua.edu.cn
--
-
---------------------------------------------------------------------------------------------------------------------------------------
7.5 yum搭建本地倉庫:
有時候yum不能用,是由於沒有聯網
若是沒有聯網,能夠搭建一個本地的倉庫,來用yum。竟然能夠這麼神奇
前提是要有一個光盤,掛載。能夠訪問到裏面的rpm包
~1.掛載鏡像到/mnt目錄
~2.cp -r /etc/yum.repos.d /etc/yum.repos.d.bak
~3.rm -f /etc/yum.repos.d/*
~4.vim /etc/yum.repos.d/dvd.repo 內容以下:
[dvd]
name=install dvd 該步驟是創建這個倉庫的名字,搭建好之後可查看
baseurl=file:///mnt
enable=1
gpcheck=0 由於是臨時的因此不用檢測,就寫0
~5.yum cean all 清除之前的緩存
~6.yum list 查看可用包,可看到dvd這個倉庫