YUM 的使用

embedded/2024/11/14 17:36:38/

YUM 是一个用于 Fedora 和 Red Hat 以及 CentOS 操作系统的前端软件包管理器,它可以自动处理依赖关系并一次性安装所有必需的软件包。

镜像站点选择

1. 备份原有的镜像源配置文件

系统默认的 yum 镜像源配置文件存储在 /etc/yum.repos.d/ 目录下,可以在进行修改之前先备份默认配置,以防需要恢复。

cd /etc/yum.repos.d/
mkdir backup
mv *.repo backup/

2. 下载新的镜像源配置文件

/etc/yum.repos.d/ 目录下,可以使用以下方式替换成常用的国内镜像源:

以阿里云为例

下载阿里云的 yum 源配置文件:

sudo wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

这里的链接可以根据系统版本选择。例如 Centos-8.repoCentos-9.repo 等。

其他国内镜像源

可以选择不同的国内镜像源,将对应的 repo 文件下载到 /etc/yum.repos.d/ 目录下。例如:

  • 清华大学https://mirrors.tuna.tsinghua.edu.cn/help/centos/
  • 华为云https://mirrors.huaweicloud.com/centos/
  • 网易http://mirrors.163.com/.help/centos.html

3. 更新缓存

镜像源配置完成后,运行以下命令刷新 yum 缓存:

yum clean all
yum makecache

4. 配置 yum 插件(可选)

可以启用一些 yum 插件(如 fastestmirror),以便自动选择最快的镜像:

  • 编辑 /etc/yum/pluginconf.d/fastestmirror.conf 文件:

    [main]
    enabled=1
    verbose=0
    always_print_best_host = true
    socket_timeout=3
    

基本语法

yum [选项] [参数]

选项说明

  • 🍀-y: 对所有提问都回答"Yes"

参数说明

参数功能
install安装 RPM 软件包
update更新 RPM 软件包
check-update检查是否有可用的更新 RPM 软件包
remove删除指定的 RPM 软件包
list显示软件包信息
clean清理 yum 过期的缓存
deplist显示 yum 软件包的所有依赖关系

这些命令和选项使得用户可以在 Linux 系统中方便地管理软件包,包括安装、更新、删除等功能。

yum list 命令

  • 该命令用于列出所有已安装和可用的软件包。它会从配置的镜像源获取软件包列表并展示出来。

yum 命令获取 Firefox 浏览器软件包名称并通过 yum 方式安装 Firefox。具体步骤如下:

  1. 获取 Firefox 浏览器软件包名称:
    在终端中输入 yum list | grep firefox 来查看可用的 Firefox 版本。
    rpm -e --nodeps firefox 用于卸载软件包。

  2. 安装 Firefox:
    输入 yum -y install firefox.x86_64 来安装最新版本的 Firefox。

  3. rpm -qa | grep jdk

    • rpm -qa用于查询系统中所有已安装的软件包。
    • grep jdk对查询结果进行过滤,只显示包含“jdk”关键字的软件包名称。这个命令组合的作用是列出系统中安装的所有与 JDK 相关的软件包。
  4. 🍀rpm -qa |grep jdk |xargs rpm -e --nodeps:多个jdk包

    • 同样先通过rpm -qa | grep jdk找到所有 JDK 相关软件包。
    • xargs将前面命令的输出作为参数传递给后面的命令。
    • rpm -e用于卸载软件包。
    • --nodeps表示在卸载时不检查软件包的依赖关系,强制卸载。

yum -y install vim
yum -y install nc
nc -lk 6666 命令,可能在监听本地的 6666端口,并发送了文本“hello”。
nc localhost 6666 并发送文本 hello,收到回应 hi,可能是在测试与本地主机的 8888 端口的连接通信情况。

java安装

执行 cd jdk1.8.0_212/ 进入 jdk1.8.0_212 目录。

  • 执行 bin/java -version 命令,显示 Java 版本信息为“1.8.0_212”

解压 JDK 压缩包
使用命令 tar -zxvf jdk 压缩包名称 解压 JDK 压缩包。

🍀配置环境变量步骤

  1. 进入 /etc/profile.d 目录,命令为 cd /etc/profile.d
  2. 创建 jdk.sh 文件,命令为 jdk.sh
  3. jdk.sh 文件中配置 JAVA_HOME 环境变量:
    • #JAVA_HOME 可能是注释行。
    • JAVA_HOME=/opt/jdk-1.8.0 设置 JDK 安装路径为 /opt/jdk-1.8.0
    • PATH=$PATH:$JAVA_HOME/bin 将 JDK 的 bin 目录添加到系统路径中。
    • export PATH JAVA_HOME 导出环境变量,使其在系统中生效。
  4. 执行 source /etc/profile.d/jdk.sh 使环境变量立即生效,若不生效则可能需要重新执行该步骤。

mysql的安装

1. 卸载系统自带的 MySQL(以 Mariadb 为例)
- 检查是否存在 Mariadb:rpm -qa | grep mariadb
- 卸载 Mariadb:rpm -e --nodeps mariadb-libs

下载 MySQL 8 安装包

https://downloads.mysql.com/archives/community/

![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/4114698db3fe4c1c9de691963025bf6a.pn

选择产品版本为 8.0.28,操作系统为 Red Hat Enterprise Linux / Oracle Linux,下载 RPM Bundle(如 mysql-8.0.30-1.el7.x86_64.rpm-bundle.tar)。

上传并解压安装包
- 将下载的 MySQL 压缩包上传到 /opt 目录。
- 解压压缩包:tar -xvf mysq7-8.0.30-1.e77.x86_64.rpm-bundle.tar
- 以下是对图片内容的核心整理:

🍀 确定安装顺序
解压 mysql-8.0.30-1.el7.x86_64.rpm-bundle.tar 后,明确安装顺序为多个特定的 rpm 包,包括 mysql-community-client-8.0.30-1.el7.x86_64.rpm 等一系列 rpm 包。

** 安装 rpm 包**
使用命令 rpm -ivh 依次安装以下 rpm 包:
- mysql-community-common-8.0.30-1.el7.x86_64.rpm
- mysql-community-libs-8.0.30-1.el7.x86_64.rpm
- mysql-community-client-plugins-8.0.30-1.el7.x86_64.rpm
- mysql-community-client-8.0.30-1.el7.x86_64.rpm
- mysql-community-icu-data-files-8.0.30-1.el7.x86_64.rpm
- mysql-community-server-8.0.30-1.el7.x86_64.rpm

二、MySQL 初始化及后续操作

1. 初始化 MySQL
执行 mysqld --initialize --console 对 MySQL 进行初始化。

以下是对图片内容的核心整理:

MySQL 初始化及后续操作

1. 初始化 MySQL
执行命令 mysqld --initialize --console 对 MySQL 进行初始化。

2. 修改安装目录用户和所属组
使用命令 chown -R mysql:mysql /var/lib/mysql/ 修改 MySQL 安装目录 /var/lib/mysql/ 的所有用户和所属组为 mysql

3. 查看临时密码
通过命令 cat /var/log/mysqld.log | grep localhost 查看 MySQL 的临时密码。

4. 登录并修改密码

  • 尝试使用命令 mysql -uroot -p"dfN7&jibeaay" 登录 MySQL,但出现错误 ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
  • 执行命令 systemctl restart mysqld 尝试重启 MySQL 服务以解决连接问题,且执行了两次。
  • 登录:使用命令 mysql -uroot -p,输入临时密码登录 MySQL。
  • 修改密码:执行命令 alter user 'root'@'localhost' identified by 'root'; 修改密码为 root

http://www.ppmy.cn/embedded/137557.html

相关文章

算法——螺旋矩阵II(leetcode59)

给你一个正整数 n ,生成一个包含 1 到 n^2所有元素,且元素按顺时针顺序螺旋排列的 n x n 正方形矩阵 matrix 。 对于螺旋矩阵来讲难点主要在于行或列放置元素时的边界条件,我们遵循一个循环不变量原则在放置行或列元素时遵循左闭右开来放置元…

Tcp/Ip协议,tcp相关文章,网络编程,通信协议文章汇总

学习时候,有些书籍过一段时间就忘记了。常读常新,特此留下地址方便再次阅读! 都是网络协议相关的,tcp/ip, arp, dhcp, icmp, http 1. tcp/ip 协议卷 《TCP/IP详解 卷1:协议》在线阅读版(全网唯一&#xf…

redis和数据库的数据一致性

在我们使用redis作为缓存的时候,数据库和缓存数据保持一致性就显得尤为重要,因为如果不做处理的话很有可能读取到的数据会出现差错,那这里怎么进行解决呢? 首先我们先来看一下操作数据到底是直接删除数据还是说通过修改的方式来修…

单元测试、集成测试、系统测试、验收测试、压力测试、性能测试、安全性测试、兼容性测试、回归测试(超详细的分类介绍及教学)

目录 1.单元测试 实现单元测试的方法: 注意事项: 2.集成测试 需注意事项: 实现集成测试的方法: 如何实现高效且可靠的集成测试: 3.系统测试 实现系统测试的方法: 须知注意事项: 4.验收测试 实现验…

网络通信NetClient实现

网络通信NetClient实现 前言 上一集我们就完成了数据中心类的内容,那么我们开始需要进行网络的通信,我们这一集就要封装一个类来帮我们实现网络上的通信。 需求分析 我们这个NetClient类需要完成的事情其实也就那几件,我们之前规定了我们…

【QT常用技术讲解】优化网络链接不上导致qt、qml界面卡顿的问题

前言 qt、qml项目经常会涉及访问MySQL数据库、网络服务器,并且界面打开时的初始化过程就会涉及到链接Mysql、网络服务器获取数据,如果网络不通,卡个几十秒,会让用户觉得非常的不爽,本文从技术调研的角度讲解解决此类问…

【深度学习】使用硬件加速模型训练速度

一、 单机器单GPU 特点 配置简单:无需多 GPU 或分布式环境的复杂配置,适合资源有限的场景。适合小规模模型:对于计算量不大的模型(如中小型 CNN、RNN),单 GPU 可以处理大多数常见任务。 优势 简单易用&…

设计模式(四)装饰器模式与命令模式

一、装饰器模式 1、意图 动态增加功能,相比于继承更加灵活 2、类图 Component(VisualComponent):定义一个对象接口,可以给这些对象动态地添加职责。ConcreteComponent(TextView):定义一个对象,可以给这个对象添加一…