软件包安装和卸载
1. 安装软件包的三种方法
rpm包
yum工具
源码包
2. rpm包介绍
rpm 工具类似于 Windows 的 exe 文件,可以直接进行安装,而且安装路径和文件名一般都是固定好的。在 CentOS 和 Red Hat 下的安装包一般称为 rpm 包。yum 是用 Python 开发的工具,yum 相对于 rpm 于一个优势,就是能自动去安装依赖的包。源码包则需要自己将源码编译成二进制可执行的文件,所以源码包是最麻烦的。
-
虚拟机的光驱能够正常连接,并且放入一个iso镜像文件
-
挂载光驱
[root@sc ~]# mount /dev/cdrom /mnt/
mount: /dev/sr0 写保护,将以只读方式挂载
- cd 进 /mnt/ 目录就可以看到光驱里的文件
- 这里的 Packages/ 目录里有很多 rpm 包,我们来看看这些 rpm 包的格式
[root@sc mnt]# cd Packages/
[root@sc Packages]# ls
3. rpm工具用法
- rpm -ivh 是安装 rpm 包指令
[root@sc Packages]# rpm -ivh zsh-5.0.2-31.el7.x86_64.rpm
准备中... ################################# [100%]
正在升级/安装...
1:zsh-5.0.2-31.el7 ################################# [100%]
[root@sc Packages]#
- rpm -Uvh 是升级 rpm 包指令
[root@sc Packages]# rpm -Uvh zsh-5.0.2-31.el7.x86_64.rpm
准备中... ################################# [100%]
软件包 zsh-5.0.2-31.el7.x86_64 已经安装
[root@sc Packages]#
- rpm -e 是卸载 rpm 包指令
[root@sc Packages]# rpm -e zsh
[root@sc Packages]#
- rpm -qa 是查询 rpm 安装过的包
[root@sc Packages]# rpm -qa
firewalld-filesystem-0.5.3-5.el7.noarch
grub2-common-2.02-0.76.el7.centos.noarch
kbd-1.15.5-15.el7.x86_64
kbd-legacy-1.15.5-15.el7.noarch
tuned-2.10.0-6.el7.noarch
tzdata-2018e-3.el7.noarch
。。。。。
- rpm -q “包名”,查询指定包是否安装
[root@sc Packages]# rpm -q gpgme
gpgme-1.3.2-5.el7.x86_64
[root@sc Packages]#
- rpm -qi “包名”,查询指定包信息
[root@sc Packages]# rpm -qi vim-enhanced
Name : vim-enhanced
Epoch : 2
Version : 7.4.160
Release : 5.el7
Architecture: x86_64
Install Date: 2019年03月23日 星期六 22时56分02秒
Group : Applications/Editors
Size : 2296666
License : Vim
Signature : RSA/SHA256, 2018年11月12日 星期一 22时48分44秒, Key ID 24c6a8a7f4a80eb5
Source RPM : vim-7.4.160-5.el7.src.rpm
Build Date : 2018年10月31日 星期三 03时57分29秒
Build Host : x86-01.bsys.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@sc 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
[root@sc Packages]#
- rpm -qf “包名”,根据文件绝对路径查看一个文件是由那个包安装的
[root@sc Packages]# rpm -qf /usr/bin/vim
vim-enhanced-7.4.160-5.el7.x86_64
[root@sc Packages]#
4. yum工具用法
yum (全称为 Yellow dogUpdater, Modified) 是一个在 Fedora 和 RedHat 以及 CentOS 中的 Shell 前端软件包管理器。基于 RPM 包管理,能够从指定的服务器自动下载 RPM 包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。yum 提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。
- 使用 yum 安装 rpm 包的时候能自动去安装依赖的包,而且只需要写包名即可
[root@sc Packages]# yum install texlive
由上图可见,依赖的包有两百多个,如果使用 rpm 包安装的话得一个个去安装,估计没人也有耐心和时间手动安装两百多个包吧,所以 yum 工具最大的优势就是在这里,能够自动去安装依赖的包。
- 使用 yum list 命令可以列出可用的 rpm 包
[root@sc Packages]# yum list #列出可以安装的包都有那些
- 查看 yum 仓库的配置文件,里面有很多核心文件
[root@sc 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
[root@sc Packages]# ls /etc/yum.repos.d/CentOS-Base