您的位置:首页 > 产品设计 > 产品经理

2018-1-8 5周1次课 rpm、yum

2018-01-08 12:46 106 查看
7.1 安装软件包的三种方法

安装软件包的三种方法:
·rpm工具
·yum工具
·源码包
难度:源码包 > rpm工具 > yum工具

7.2 rpm包介绍

·rpm工具使用
设置光驱并挂载





在虚拟机光盘位置,设置光盘连接后,进入系统中挂载光驱

[root@localhost ~]# df -h
文件系统        容量  已用  可用 已用% 挂载点
/dev/sda3        18G  1.2G   17G    7% /
devtmpfs        479M     0  479M    0% /dev
tmpfs           489M     0  489M    0% /dev/shm
tmpfs           489M  6.7M  482M    2% /run
tmpfs           489M     0  489M    0% /sys/fs/cgroup
/dev/sdb         10G   33M   10G    1% /mnt
/dev/sda1       197M   97M  100M   50% /boot
tmpfs            98M     0   98M    0% /run/user/0   ##mnt目录并未挂载,可以将光盘挂载于此
[root@localhost ~]# mount /dev/cdrom /mnt
mount: /dev/sr0 写保护,将以只读方式挂载
[root@localhost ~]# cd /mnt/
[root@localhost mnt]# ls                            ##Packages中存有许多rpm包
CentOS_BuildTag  EFI  EULA  GPL  images  isolinux  LiveOS  Packages  repodata  RPM-GPG-KEY-CentOS-7  RPM-GPG-KEY-CentOS-Testing-7  TRANS.TBL
[root@localhost mnt]# ls Packages/
文件过多,例举部分
tdb-tools-1.3.12-2.el7.x86_64.rpm


·rpm包格式:包名、版本号、发布版本号、平台
tdb-tools-1.3.12-2.el7.x86_64.rpm
包名:tdb-tools
版本号:1.3.12
发布版本号:2.el7 ##7是CentOS7,如果是6就是CentOS6
平台:x86_64 ##CentOS7之后只有64位
7.3 rpm工具用法

·安装rpm包:rpm -ivh rpm包文件 (i安装,v可视化,h人性化)
例如安装zsh-5.0.2-28.el7.x86_64.rpm
[root@localhost mnt]# cd Packages/                   ##cd到Packages下更方便
[root@localhost 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包文件 (U升级,v可视化,h人性化)
[root@localhost Packages]# rpm -Uvh zsh-5.0.2-28.el7.x86_64.rpm


·卸载包:rpm -e 包名
[root@localhost Packages]# rpm -e zsh



(卸载包,可能会出现各种依赖关系,要依次卸载)

·查询安装的包:rpm -qa
[root@localhost Packages]# rpm -qa
open-vm-tools-10.1.5-3.el7.x86_64
grub2-common-2.02-0.64.el7.centos.noarch
文件过多,不详细列出


·查询指定包是否安装:rpm -q 包名
[root@localhost Packages]# rpm -q zsh
未安装软件包 zsh
[root@localhost Packages]# rpm -ivh zsh-5.0.2-28.el7.x86_64.rpm
准备中...                          ################################# [100%]
正在升级/安装...
1:zsh-5.0.2-28.el7                 ################################# [100%]
[root@localhost Packages]# rpm -q zsh
zsh-5.0.2-28.el7.x86_64


·查询指定包信息:rpm -qi (i信息info)
[root@localhost Packages]# rpm -qi vim-enhanced
Name        : vim-enhanced
Epoch       : 2
Version     : 7.4.160
Release     : 2.el7
Architecture: x86_64
Install Date: 2017年12月31日 星期日 20时43分20秒
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/ Summary     : A version of the VIM editor which includes recent enhancements
Description :
VIM (VIsual editor iMproved) is an updated and improved version of the
vi editor.  Vi was the first real screen-based editor for UNIX, and is
still very popular.  VIM improves on vi by adding new features:
multiple windows, multi-level undo, block highlighting and more.  The
vim-enhanced package contains a version of VIM with extra, recently
introduced features like Python and Perl interpreters.
Install the vim-enhanced package if you'd like to use a version of the
VIM editor which includes recently added enhancements like
interpreters for the Python and Perl scripting languages.  You'll also
need to install the vim-common package.


·列出包安装文件:rpm -ql
[root@localhost Packages]# 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 文件绝对路径 (q询问query,f文件file)
[root@localhost Packages]# rpm -qf /usr/bin/vim
vim-enhanced-7.4.160-2.el7.x86_64
[root@localhost Packages]# rpm -qf `which cd`    ##如果不知道命令的绝对路径,那么可以利用which命令和反引号 `
bash-4.2.46-28.el7.x86_64


7.4 yum工具用法

安装rpm包时,很可能需要解决依赖关系,不是很方便,那么使用yum安装就很方便了
[root@localhost Packages]# 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可以自动解决依赖关系,可以帮助自动安装好
[root@localhost Packages]# yum install texlive



·列出可用的rpm包:yum list
[root@localhost Packages]# yum list


·yum配置文件:/etc/yum.repos.d/
[root@localhost Packages]# ls /etc/yum.repos.d/
CentOS-Base.repo  CentOS-CR.repo  CentOS-Debuginfo.repo  CentOS-fasttrack.repo  CentOS-Media.repo  CentOS-Sources.repo  CentOS-Vault.repo


·搜索相关包:yum search 关键字
[root@localhost Packages]# yum search vim
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.163.com
================================================================== N/S
matched: vim
===================================================================
protobuf-vim.x86_64 : Vim syntax highlighting for Google Protocol Buffers descriptions
vim-X11.x86_64 : The VIM version of the vi editor for the X Window System
vim-common.x86_64 : The common files needed by any version of the VIM editor
vim-enhanced.x86_64 : A version of the VIM editor which includes recent enhancements
vim-filesystem.x86_64 : VIM filesystem layout
vim-minimal.x86_64 : A minimal version of the VIM editor
名称和简介匹配 only,使用“search all”试试。

·精准搜索包:yum list |grep '关键字'
[root@localhost Packages]# yum list |grep 'vim'
vim-common.x86_64                           2:7.4.160-2.el7             @base
vim-enhanced.x86_64                         2:7.4.160-2.el7             @base
vim-filesystem.x86_64                         2:7.4.160-2.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-2.el7              base


·自动安装:yum install [-y]

[root@localhost Packages]# yum install vim
[root@localhost Packages]# yum install vim -y


·查看可用的组:yum grouplist
[root@localhost Packages]# yum grouplist
已加载插件:fastestmirror
没有安装组信息文件
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.163.com
可用的环境分组:
最小安装
基础设施服务器
计算节点
文件及打印服务器
基本网页服务器
虚拟化主机
带 GUI 的服务器
GNOME 桌面
KDE Plasma Workspaces
开发及生成工作站
可用组:
传统 UNIX 兼容性
兼容性程序库
图形管理工具
安全性工具
开发工具
控制台互联网工具
智能卡支持
科学记数法支持
系统管理
系统管理工具完成
(安装系统时,我们选择的时最小安装)

·安装组:yum groupinstall 组名
[root@localhost ~]#LANG=en              ##系统语言为中文,安装时改成英文,中文为 zh_CN.UTF-8
[root@localhost ~]# 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.163.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
[root@localhost ~]# yum groupinstall 'Virtualization Host'     ##如果安装的组名称不是一个单词,要加上引号



可以看出,有65包需要安装,还有184个被依赖的,6个要升级的

·卸载包:yum remove [ -y ]
[root@localhost ~]# yum remove ppp



yum remove可以同时列出依赖的包,并同时卸载

·升级包:yum update [ -y ] 包名 ##如果不加包名,会把系统所有rpm包升级,甚至是系统、内核



·搜索一个命令用哪一个包:yum provides “/*/命令" ##命令没有安装的话,可以用

7.5 yum搭建本地仓库

如果不能联网,搭建本地yum仓库将非常方便





·挂载镜像到 /mnt 目录
[root@localhost ~]# mount /dev/cdrom /mnt


·制作本地仓库:
[root@localhost ~]# cp -r /etc/yum.repos.d/ /etc/yum.repos.d.bak    ##备份yum仓库
[root@localhost ~]# cd /etc/yum.repos.d
[root@localhost yum.repos.d]# ls
CentOS-Base.repo  CentOS-CR.repo  CentOS-Debuginfo.repo  CentOS-fasttrack.repo  CentOS-Media.repo  CentOS-Sources.repo  CentOS-Vault.repo
[root@localhost yum.repos.d]# rm -rf *.repo            ##删除所有yum源(之前已做备份)
[root@localhost yum.repos.d]# ls
[root@localhost yum.repos.d]# vim dvd.repo##编辑新的yum源
[dvd]
name=install dvd
baseurl=file:///mnt
enable=1
gpgcheck=0


完成后保存退出

[root@localhost yum.repos.d]# yum clean all          ##清除缓存
已加载插件:fastestmirror
File contains no section headers.
file: file:///etc/yum.repos.d/dvd.repo, line: 1
'me=install dvd\n'


[root@localhost yum.repos.d]# yum list |less               ##查看可以安装的包





[root@localhost yum.repos.d]# yum install GConf2      ##任选其中一个进行安装,现在的源是dvd



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  rpm yum 源码包