Centos系统上安装包(软件)时常用的命令wget、rpm、yum分别是什么意思和作用?

本文以在Centos上安装mysql-5.7.26的前三步为例,说明命令wget、rpm、yum的意思和作用。

安装mysql-5.7.26的步骤如下:

  1. 下载MySQL 5.7.26的RPM存储库文件:

    复制代码
    wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
  2. 安装RPM存储库文件:

    复制代码
    sudo rpm -Uvh mysql57-community-release-el7-11.noarch.rpm
  3. 安装MySQL 5.7.26:

    复制代码
    sudo yum install mysql-community-server-5.7.26
  4. 启动MySQL服务:

    复制代码
    sudo systemctl start mysqld
    sudo systemctl enable mysqld
  5. 查找初始密码:

    复制代码
    sudo grep 'temporary password' /var/log/mysqld.log
  6. 运行MySQL安全性脚本和设置新密码:略。

01-wget

wget 的全称是 "GNU Wget",它是一种由GNU项目开发的自由软件,用于在命令行界面中下载文件和网页内容的工具。 "Wget" 代表 "Web Get",它被广泛用于Linux和其他类Unix操作系统中。
说白了,wget就是Linux中下载互联上的文件和内容的一种工具。

以在centos上安装mysql-5.7.26为例,在其第1步中,我们通过wget 获取到其rpm存储库文件,相关的命令如下:

bash 复制代码
wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm

02-rpm与yum

rpmyum 都是用于在基于RPM的Linux系统中管理软件包的工具,但它们有不同的目的和使用方式:

  1. rpm(Red Hat Package Manager)

    • rpm 是一种低级工具,用于安装、卸载、查询和管理单个RPM软件包。
    • 它可以用于手动安装和管理软件包,但通常需要手动解决软件包依赖关系,这可能会变得复杂。
    • 使用 rpm 安装软件包时,你需要知道软件包的完整名称和位置,并手动处理任何依赖关系。
  2. yum

    • yum 是一个高级包管理工具,yum 的全称是 "Yellowdog Updater, Modified"。它建立在 rpm 之上,并用于自动解决软件包依赖关系。
    • yum 可以轻松地从存储库中获取和安装软件包,而不必担心手动解决依赖关系。
    • 它提供了一个更方便的方式来管理软件包,同时还能够自动更新系统中的软件包。

说白了就是:rpm与yum都是用来安装包的工具,但是yum更强大,其强大之处在于它能自动解决依赖关系,所以我们一般都用yum。但是吧,yum又以RPM包为基础,所以我们通常要先用rpm命令去安装好RPM包。就是这样一回事。

使用 rpm 命令安装存储库信息是为了让 yum 知道从哪里获取MySQL软件包,以及如何自动解决依赖关系。

在安装MySQL时,在第2步中使用 rpm 安装的是MySQL的RPM存储库信息,以便后续可以使用 yum 来安装MySQL软件包。这个步骤的目的是将MySQL存储库添加到系统中,以便轻松获取MySQL软件包。然后,在第3步中,你使用 yum 来安装MySQL 5.7.26 版本。

相关推荐
Android系统攻城狮1 小时前
Linux PipeWire深度解析之pw_factory_create_object调用流程与实战(七十二)
linux·音频进阶·pipewire音频进阶
lsh曙光2 小时前
playbook剧本(2)--Ansible变量
linux·运维·网络
lengjingzju2 小时前
编译与调试完全指南—第14章 系统配置与调优
linux
大鹏的NLP博客3 小时前
通用 Linux 嵌入式板端 C/C++ ABI 与 Glibc 依赖治理规范
linux·c++·交叉编译
tedcloud1233 小时前
book-to-skill 怎么部署?把技术书和项目文档变成 AI Agent 可复用知识
linux·运维·服务器·人工智能·开源
瀚高PG实验室4 小时前
SQL优化案例:使用分区表优化SQL查询性能
linux·服务器·数据库·sql·microsoft·postgresql
青禾8374 小时前
Linux 系统信息、权限管理与 Python 并发编程(协程与线程)完全指南
linux·python
2301_800954994 小时前
Linux 常用系统信息与进程管理命令速查
linux·运维·服务器
T型码农要学习5 小时前
eMMC_命令整理
linux·驱动开发·emmc
刚入门的大一新生6 小时前
Linux-进程4
linux·运维·服务器