🔥个人主页:Quitecoder
🔥专栏:linux笔记仓
工具
01.yum
-
软件包:在Linux下安装软件, 一个通常的办法是下载到程序的源代码, 并进行编译, 得到可执行程序.但是这样太麻烦了, 于是有些人把一些常用的软件提前编译好, 做成软件包(可以理解成windows上的安装程序)放在一个服务器上, 通过包管理器可以很方便的获取到这个编译好的软件包, 直接进行安装.
-
软件包和软件包管理器, 就好比 “App” 和 “应用商店” 这样的关系.
-
yum(Yellow dog Updater, Modified)是Linux下非常常用的一种包管理器(应用商城). 主要应用在Fedora, RedHat, Centos等发行版上
以下是一些 yum
的常用操作命令:
安装软件包
sudo yum install package_name
这个命令将会安装名为 package_name
的软件包,同时也会解决和安装所有必需的依赖关系。
卸载软件包
sudo yum remove package_name
这个命令将会卸载 package_name
软件包和它的依赖(如果没有其他软件包依赖于它们)。
更新软件包
sudo yum update package_name
如果不指定包名,则更新所有已安装的软件包。
查找软件包
yum search keyword
这个命令将会在 YUM 仓库中搜索包含 keyword
的软件包名称和描述。
显示软件包信息
yum info package_name
此命令将显示关于 package_name
的详细信息,包括版本、发布日期等。
列出已安装的软件包
yum list installed
列出系统上已安装的所有软件包。
清理缓存
sudo yum clean all
清除 yum
缓存,包拀已下载的包和旧的头文件。
启用/禁用软件库
sudo yum-config-manager --enable repository_name
sudo yum-config-manager --disable repository_name
启用或禁用 repository_name
指定的软件库。
自动删除不再需要的依赖包
sudo yum autoremove
删除那些已被卸载软件包的依赖,而这些依赖不再被系统上的其他软件包所需要。
列出所有可用的软件库
yum repolist all
显示所有配置的仓库及其状态(启用或禁用)。
列出所有可更新的软件包
yum list updates
显示所有有可用更新的安装了的包。
检查是否有可用的系统更新
sudo yum check-update
此命令将检查所有已安装的软件包是否有可用的更新。
yum
命令通常需要 sudo
权限来执行安装、更新和卸载等操作,以确保有足够的权限更改系统的软件包状态。
请注意,从 CentOS 8 和 Fedora 22 开始,yum
命令已经被 dnf
命令逐渐替代,dnf
提供了更好的性能和新的包依赖处理。但是在 CentOS 7 和之前版本,以及其他一些发行版中,yum
仍然是标准的包管理工具。
本地配置
yum会根据/etclyum.repos.d/该路径下面的配置文件,来构成自己的下载链接,(根据OS版本、根据你要下载的软件),yum帮助我们下载,安装一般的机器,内置的链接地址是centos 的官网,软件链接都指向的是国外的。yum可能会比较慢,所以需要配置
yum
本地配置涉及设置本地软件源(repository)和配置文件。在某些环境中,可能需要从本地文件系统或局域网中的服务器访问包而不是远程软件源。这对于没有互联网连接的系统或需要安装自定义或私有软件包的场景很有用。
以下是配置本地 YUM 仓库的基本步骤:
1. 创建本地仓库目录
首先,你需要选择一个位置来存放你的 RPM 软件包。例如,你可以创建一个目录 /var/your-repo/
作为本地仓库:
mkdir -p /var/your-repo
将需要的 RPM 包复制或下载到这个目录中。
2. 创建仓库元数据
使用 createrepo
命令来创建仓库的元数据。如果系统中没有安装 createrepo
,可以先通过 yum
安装它:
yum install createrepo
然后在仓库目录中创建元数据:
createrepo /var/your-repo/
这将在 /var/your-repo/
目录下创建 repodata
目录,并生成必要的元数据文件。
3. 配置 yum 仓库文件
在 /etc/yum.repos.d/
目录中创建一个新的 .repo
文件来定义本地仓库。比如,your-local.repo
:
nano /etc/yum.repos.d/your-local.repo
在这个文件中,你可以添加以下内容:
[local-repo]
name=Local Repository
baseurl=file:///var/your-repo/
enabled=1
gpgcheck=0
这里:
[local-repo]
是仓库ID,在系统中应该是唯一的。name
是仓库的名称,可以是任何描述。baseurl
指定本地仓库的路径,使用file://
表示文件系统路径。也可以使用http://
和ftp://
指定远程服务。enabled=1
表明仓库是启用状态。gpgcheck=0
表示不进行 GPG 签名检查。如果你的包是签名的,并且你有公钥,可以启用此选项。
4. 清理并更新 yum 缓存
在添加、修改 repo 文件或者仓库内容变化后,你需要清理 yum 缓存并重新创建它:
yum clean all
yum makecache
现在,你的系统将会包括在yum操作中考虑本地仓库。可以通过yum安装、更新和卸载本地仓库中的软件包。
5. 使用 yum 安装本地仓库中的包
你可以使用yum命令从本地仓库安装、更新或卸载包,如同使用远程仓库一样:
sudo yum install package_name
以上步骤概述了如何配置一个本地 yum 仓库。该仓库可用于包管理和软件分发,对于缺少互联网访问的系统或需要在多台机器上安装相同软件包的场景尤为有用。
国外网站的镜像(mirror)指的是在国内服务器上创建的该网站的精确副本。因为网络连接和地理位置的原因,访问国外的服务器可能会遇到速度慢或者连接不稳定的问题。因此,一些组织会在国内创建这些国外网站的镜像,以提供更快的访问速度和更好的用户体验。
镜像网站会周期性地从原始网站同步内容,保证信息的更新和一致性。对于开源软件或者数据集这类公共资源,使用镜像是常见的做法。
使用镜像网站有几个好处:
- 速度快:由于镜像服务器地理位置较近,用户可以获得更高的下载速度。
- 减轻负载:为原始服务器减少流量负载,特别对一些小型或者资源有限的项目而言,这样做可以显著提高性能。
- 提高可靠性:即使原始服务器发生故障或不能访问,用户仍然可以从镜像网站获取内容。
- 避开封锁:有些国外网站可能会被某些国家封锁,镜像网站可以绕过这些封锁,允许用户访问内容。
在软件包管理(如 apt-get
、yum
或 pip
)中,镜像网站同样非常有用。用户可以选择一个距离最近的镜像来代替默认的软件源,从而提高软件包安装和更新的速度。例如,许多Linux发行版都会提供官方源的多个地域镜像供用户选择。
注意事项:
- 安装软件时由于需要向系统目录中写入内容, 一般需要 sudo 或者切到 root 账户下才能完成.
- yum安装软件只能一个装完了再装另一个. 正在yum安装一个软件的过程中, 如果再尝试用yum安装另外一个软件, yum会报错