安装软件包的三种方法及 RPM 准备工作
前言
在 Windows 系统下安装软件很简单,只要双击后缀为.exe 的文件,然后根据提示连续单击 "下一步" 按钮即可。然而在 Linux 系统下安装软件就没那么容易了,因为我们不是在图形界面下,所以,必须学会如何在 Linux 下安装软件。
一, 安装软件包的三种方法
RPM 工具 rpm(Redhat Package
Manager)RPM 软件包管理器,是以一种数据库记录的方式来将我们所需要的套件安装到 Linux 主机的一套管理程序。rpm 包是预先在 Linux 机器上编译好并打包好的文件,安装起来非常快捷。但是有一个缺点:安装环境必须与编译时的一致或相当;包与包之间存在着相互依赖的情况,安装或卸载包时需要先把依赖的包安装 / 卸载,如果依赖的包时系统所必须的,那就不能卸载这个包。
yum 工具
yum 命令是在 Fedora 和 RedHat 以及 SUSE 中基于 rpm 的软件包管理器,它可以使系统管理人员交互和自动化地更细与管理 RPM 软件包,能够从指定的服务器自动下载 RPM 包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。
源码包
Linux 软件的源代码分发是指提供了该软件所有程序源代码的发布形式,需要用户自己编译成可执行的二进制码并进行安装。其优点是配置灵活,可以随意去掉或保留某些功能 / 模块,适应多种硬件 / 操作系统平台及编译环境;缺点是难度较大。
二,RPM 包准备工作
如果你的虚拟机光驱中还有系统安装镜像,就可以通过执行如下命令把光驱挂载到 /mnt 目录下。
先检查一下 VMware 右下角的小光驱图标是否点亮,如果没有,点击一下,再点击 "连接" 就可以点亮它。当挂载光驱后,会在 **/mnt/Packages** 目录下看到很多后缀为 .rpm 的文件。这些文件就是 RPM 包。如下
[root@localhost ~]# df -h
文件系统 容量 已用 可用 已用% 挂载点
/dev/mapper/cl-root 18G 1.2G 17G 7% /
devtmpfs 482M 0 482M 0% /dev
tmpfs 493M 0 493M 0% /dev/shm
tmpfs 493M 6.8M 486M 2% /run
tmpfs 493M 0 493M 0% /sys/fs/cgroup
/dev/sda1 197M 117M 81M 60% /boot
tmpfs 99M 0 99M 0% /run/user/0
/dev/sr0 4.1G 4.1G 0 100% /mnt
[root@localhost ~]# mount /dev/cdrom /mnt
mount: /dev/sr0 写保护,将以只读方式挂载
[root@localhost ~]# ls /mnt/
CentOS_BuildTag GPL LiveOS RPM-GPG-KEY-CentOS-7
EFI images Packages RPM-GPG-KEY-CentOS-Testing-7
EULA isolinux repodata TRANS.TBL
[root@localhost ~]# ls /mnt/Packages/ |head
389-ds-base-1.3.5.10-11.el7.x86_64.rpm
389-ds-base-libs-1.3.5.10-11.el7.x86_64.rpm
abattis-cantarell-fonts-0.0.16-3.el7.noarch.rpm
abrt-2.1.11-45.el7.centos.x86_64.rpm
abrt-addon-ccpp-2.1.11-45.el7.centos.x86_64.rpm
abrt-addon-kerneloops-2.1.11-45.el7.centos.x86_64.rpm
abrt-addon-pstoreoops-2.1.11-45.el7.centos.x86_64.rpm
abrt-addon-python-2.1.11-45.el7.centos.x86_64.rpm
abrt-addon-vmcore-2.1.11-45.el7.centos.x86_64.rpm
abrt-addon-xorg-2.1.11-45.el7.centos.x86_64.rpm
说明: RPM 包存放在 /mnt/Packages
每个 RPM 包的名称都由 - 和. 分成了若干部分。 比如在 abrt-2.1.11-45.el7.centos.x86_64.rpm 包中,
abrt 为包名,2.1.11 为版本信息,45.el7.centos 为发布版本号,x86_64 为运行平台。常见的运行平台有 i386,i586,i686 和 x86_64。需要注意的是,CPU 目前分 32 位和 64 位,i386,i586,i686 都为 32 位平台,x86_64 则为 64 位平台。另外,有些 RPM 包并没有写具体的平台而是 noarch(如 ant-1.9.2-9.e17.noarch.rpm),这说明这个 RPM 包没有硬件平台限制。