软件包
大多数现代的类 Unix 操作系统都提供了一种中心化的机制用来搜索和安装软件。软件通常都是存放在存储库中,并通过包的形式进行分发。处理包的工作被称为包管理。包提供了操作系统的基本组件,以及共享的库、应用程序、服务和文档。软件包和软件包管理器, 就好比 “App” 和 “应用商店” 这样的关系.
包管理系统除了安装软件外,它还提供了工具来更新已经安装的包。包存储库有助于确保你的系统中使用的代码是经过审查的,并且软件的安装版本已经得到了开发人员和包维护人员的认可。
在配置服务器或开发环境时,我们最好了解下包在官方存储库之外的情况。某个发行版的稳定版本中的包有可能已经过时了,尤其是那些新的或者快速迭代的软件。然而,包管理无论对于系统管理员还是开发人员来说都是至关重要的技能,而已打包的软件对于主流 Linux 发行版来说也是一笔巨大的财富。
大多数包系统都是围绕包文件的集合构建的。包文件通常是一个存档文件,它包含已编译的二进制文件和软件的其他资源,以及安装脚本。包文件同时也包含有价值的元数据,包括它们的依赖项,以及安装和运行它们所需的其他包的列表。
虽然这些包管理系统的功能和优点大致相同,但打包格式和工具却因平台而异:
yum
yum( Yellow dog Updater, Modified)是一个在 Fedora 和 RedHat 以及 SUSE 中的 Shell 前端软件包管理器。基于 RPM 包管理,能够从指定的服务器自动下载 RPM 包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。
yum 提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。
- 需要root权限
- 本地会有个yum的配置文件,告诉yum去哪些网站找资源。
- 首先要找一个yum库(源),然后确保本地有一个客户端(yum这个命令就是客户端),由yum程序去连接服务器。
- 连接的方式是由配置文件决定的。通过编辑/etc/yum.repos.d/CentOS-Base.repo文件,可以修改设置。
- yum 软件可以用 rpm 命令安装,安装之前可以通过如下命令查看 yum 是否已安装:
rpm -qa | grep yum
...
yum语法
yum [options] [command] [package ...]
- options:可选,选项包括-h(帮助),-y(当安装过程提示选择全部为 “yes”),-q(不显示安装的过程)等等。
- command:要进行的操作。
- package:安装的包名。
yum常用命令
列出所有可安裝的软件清单命令:
yum list | grep 软件包名
yum安装:文章来源:https://www.toymoban.com/news/detail-498294.html
yum install -y 软件包名
yum卸载:文章来源地址https://www.toymoban.com/news/detail-498294.html
yum remove -y 软件包名
- 查看yum软件版本:
yum --version
- 查找软件包命令
yum search 包名
yum源配置文件介绍
- 一般情况下,只要你的主机网络正常,可以直接使用网络 yum 源,不需要对配置文件做任何修改,这里对 yum 源配置文件做一下简单介绍。
- 网络 yum 源配置文件位于
/etc/yum.repos.d/
目录下,文件扩展名为"*.repo
"(只要扩展名为 “*.repo” 的文件都是 yum 源的配置文件)。
[root@VM-12-7-centos ~]$ ls /etc/yum.repos.d
CentOS-Base.repo CentOS-Epel.repo
-
我的云服务器里面啥也没有,但能安装软件…,配置过的应该是这样子的
[root@localhost yum.repos.d]# vim /etc/yum.repos.d/ CentOS-Base.repo
[base]
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/? release= $releasever&arch=$basearch&repo=os
baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
- yum 源容器,这里只列出了 base 容器,其他容器和 base 容器类似。
- [base]:容器名称,一定要放在[]中。
- name:容器说明,可以自己随便写。
- mirrorlist:镜像站点,这个可以注释掉。
- baseurl:我们的 yum 源服务器的地址。默认是 CentOS 官方的 yum 源服务器,是可以使用的。如果你觉得慢,则可以改成你喜欢的 yum 源地址。
- enabled:此容器是否生效,如果不写或写成 enabled 则表示此容器生效,写成 enable=0 则表示此容器不生效。
- gpgcheck:如果为 1 则表示 RPM 的数字证书生效;如果为 0 则表示 RPM 的数字证书不生效。
- gpgkey:数字证书的公钥文件保存位置。不用修改。
更新yum源
- 进入yum源目录:
cd /etc/yum.repos.d
ll //查看yum源目录里的文件
- 将“CentOS-Base.repo”重命名备份为“CentOS-Base.repo.old”
mv CentOS-Base.repo CentOS-Base.repo.old
ls //...可以看到已经重命名
- 从阿里云下载yum源
wget http://mirrors.aliyun.com/repo/Centos-7.repo
腾讯云源:
公网访问地址:
http://mirrors.cloud.tencent.com/
或
http://mirrors.tencent.com
内网访问地址:
http://mirrors.tencentyun.com/
- 将新的源改名为“CentOS-Base.repo”
mv Centos-7.repo CentOS-Base.repo
- 让yum重新缓存新的数据
yum update -y
- 经过一段时间的等待后,看到“完毕 !”,光标停留在命令输入处,代表更新成功…
查看已经安装软件的方法
- rpm包安装的,可以用rpm -qa看到,如果要查找某软件包是否安装,用 rpm -qa | grep “软件或者包的名字”。
rpm -qa | grep 软件包名
- yum方法安装的,可以用yum list installed查找,如果是查找指定包,命令后加 | grep “软件名或者包名”;
yum list installed | grep 软件包名
- 以源码包自己编译安装的,例如.tar.gz或者tar.bz2形式的,只能看可执行文件是否存在。
参考
- Linux yum 命令
- Linux 包管理基础:apt、yum、dnf 和 pkg
到了这里,关于Linux :软件包管理器yum的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!