当前位置: 首页 > article >正文

OS10.【Linux】yum命令

目录

1.安装软件的几种方法

直接编译源代码,得到可执行程序

使用软件包管理器

2.yum

yum list命令

参数解释

yum install命令

yum remove命令

下载链接存放的位置

扩展yum源

实验:安装sl小火车命令

sl命令的选项

方法1:man sl

方法2:读源代码

3.更新yum源

查看lrzsz的下载链接

4.其他命令

yum makecache命令

yum clean all命令

yum search命令

yum update命令

yum upgrade命令


1.安装软件的几种方法

直接编译源代码,得到可执行程序

此方法较复杂,而且有版本要求(平台会限制),也会有依赖关系,配置起来较复杂

使用软件包管理器

例如CentOS下的yum(全称yellowdog updater modified)软件包管理器,软件包管理器从服务器上获取对应的软件包(需要联网),下载到本地后进行安装,执行起来只需要几个指令,非常方便

软件包管理器可以理解为手机或电脑上的"应用商店",而yum就是Linux下的应用商店

注:检查是否联网可以ping,简单使用方法是:ping + 网址

2.yum

yum list命令

列出显示所有已安装和可用的软件包(可能会有很多,可以使用OS6.【Linux】基本指令入门(5)文章提到的grep命令进行筛选)

直接执行yum list会显示两种包,这里仅展示一部分:

Installed Packages:

Available Packages:

注: yum list installed只显示已安装的软件包,而yum list available只显示可用的软件包

可用的软件包: 在已配置的软件源(repository)中存在,但尚未安装在当前系统上的软件包(软件源会在后面解释)

参数解释

软件包名称的格式: 主版本号.次版本号.源程序发行号-软件包的发行号.主机平台.cpu架构.

以这个软件包为例:

time.x86_64    1.7-45.el7    @base

x86_64:64位系统安装包,"i686": 32位系统安装包(选择包时要和系统匹配 ),el7:centos7/redhat7,base 表示的是"软件源"的名称,可以理解为:不同应用商店是不同的软件源

yum源:可以理解为存储linux应用软件的服务器

yum install命令

用于安装软件,格式为:

yum install 软件包名

安装软件时由于需要向系统目录中写入内容, 一般需要 sudo 或者切到 root 账户下才能完成.

这里采用root安装软件,例如安装Linux和Windows之间的文件互传工具lrzsz:
 

yum install lrzsz

系统询问,下面等待用户的输入:

注意字母的大小写,y是yes(确认安装),d是display(显示详细信息),N是No(取消安装)

输入y进行安装:

 注:如果不想让系统询问的话,可以对Install加加-y选项 

验证是否能使用lrzsz命令:

Windows下向test.txt写入以下内容并保存,

之后用鼠标拖动到XShell终端:

发现test.txt成功传输且打印了其中的内容:

yum remove命令

和yum install命令一样,删除软件时由于需要向系统目录中删除内容, 一般需要 sudo 或者切到 root 账户下才能完成

这里使用root身份完成:

 注:如果不想让系统询问的话,可以对remove加-y选项

下载链接存放的位置

下载软件包需要找到软件包的下载链接,其存储在以.repo为后缀的文件中

/etc有一个yum.repos.d目录,*.repo就存储在里面

 yum.repos.d目录的文件:

查看上面提到的lrzsz从哪个链接下载:

@base指的是base软件源 ,列出 yum.repos.d目录的文件

显然在CentOS-Base.repo中,使用nano打开:

上方的网站无法访问,会在本文的第3点更新yum源中访问新网站

扩展yum源

如果yum list的可用软件包中(这是官方yum源)没有某个软件,使用扩展yum源

使用以下命令安装扩展yum源:

sudo yum install epel-release

 装好后会发现/etc/yum.repos.d目录下多了几个文件:

实验:安装sl小火车命令

sl小火车命令在官方yum源是没有的,需要从扩展yum源中取得,

sudo yum install sl

只输入sl命令会展示一个动态的蒸汽火车: 

sl命令的选项
方法1:man sl

如果支持man sl,那么就比较方便查看

方法2:读源代码

github仓库地址:https://github.com/mtoyoda/sl

从main函数开始读:

int main(int argc, char *argv[])
{int x, i;for (i = 1; i < argc; ++i) {if (*argv[i] == '-') {option(argv[i] + 1);}}//......
}

for循环支持多个选项叠加,例如sl -alFc 

 如果argv[i]为'-',说明带了选项,此时到option函数执行:

void option(char *str)
{extern int ACCIDENT, LOGO, FLY, C51;while (*str != '\0') {switch (*str++) {case 'a': ACCIDENT = 1; break;case 'F': FLY      = 1; break;case 'l': LOGO     = 1; break;case 'c': C51      = 1; break;default:                break;}}
}

查看到一共4个选项-a、-F、-l和-c

-a:

-F:

从屏幕右下角飞到左上角

-l:

-c:

-alFc:

3.更新yum源

Linux操作系统默认配置的yum源是国外的,有可能yum源访问会比较慢,可能需要更新yum源:
替换yum源文件

这里提供CentOS7的一键更新yum源的命令:

curl -sLf https://gitee.com/lpsdz-ybhdsg-jk/yum-source-update/raw/master/install.sh -o ./install.sh && bash ./install.sh

查看lrzsz的下载链接

cd /etc/yum.repos.d
yum list | grep "lrzsz"

进入https://mirrors.tencent.com/centos-vault/7.9.2009/os/网站下手动查找,发现在这个目录下:

https://mirrors.tencent.com/centos-vault/7.9.2009/os/Source/SPackages/

 

4.其他命令

yum makecache命令

yum工具在每次安装指定软件包的时候,都会检测源服务器上的软件包信息,为了提高速度,使用yum makecache命令来生成元数据缓存,将服务器的软件包信息缓存到本地

yum clean all命令

清除缓存中老旧的头文件和软件包

yum search命令

在所有软件包中搜索包含有指定关键字的软件包

例如

yum search lrzsz

yum update命令

升级所有包同时,也升级软件和系统内核

yum upgrade命令

只升级所有包,不升级软件和系统内核(即软件和内核保持原样)

相关文章:

OS10.【Linux】yum命令

目录 1.安装软件的几种方法 直接编译源代码,得到可执行程序 使用软件包管理器 2.yum yum list命令 参数解释 yum install命令 yum remove命令 下载链接存放的位置 扩展yum源 实验:安装sl小火车命令 sl命令的选项 方法1:man sl 方法2:读源代码 3.更新yum源 查看…...

头歌数据库课程实验(角色管理)

第1关&#xff1a;创建角色 任务描述 本关任务&#xff1a;创建角色 role1localhost。 相关知识 为了完成本关任务&#xff0c;你需要掌握MySQL的角色管理。 角色信息存放在数据库 mysql 的 user 表中。 user 表中字段&#xff1a; Host&#xff1a;可以登陆数据库的主机地…...

【android bluetooth 协议分析 03】【蓝牙扫描详解 1】【扫描关键函数 btif_dm_search_devices_evt 分析】

1. 背景 本篇我们来对 btif_dm_search_devices_evt 函数进行分析. 这是系统性分析 Bluetooth 协议栈中的设备扫描流程时必须厘清的一环。 1. 为什么要单独分析 btif_dm_search_devices_evt 函数&#xff1a; btif_dm_search_devices_evt 是 BTIF 层中处理设备扫描&#xff0…...

SpringBoot使用ThreadLocal保存登录用户信息

Java 多线程,系列文章: 《Java多线程》 《Java创建多线程的3种方法:继承Thread类、实现Runnable接口、实现Callable接口》 《Java多线程的同步:synchronized关键字、Lock接口、volatile关键字》 《Java线程池》 《Java线程池实现秒杀功能》 《SpringBoot使用ThreadLocal保存…...

多模态大语言模型arxiv论文略读(102)

Chat2Layout: Interactive 3D Furniture Layout with a Multimodal LLM ➡️ 论文标题&#xff1a;Chat2Layout: Interactive 3D Furniture Layout with a Multimodal LLM ➡️ 论文作者&#xff1a;Can Wang, Hongliang Zhong, Menglei Chai, Mingming He, Dongdong Chen, Ji…...

Ubuntu系统如何部署Crawlab爬虫管理平台(通过docker部署)

Ubuntu系统如何部署Crawlab爬虫管理平台(通过docker部署) 一、安装docker(ubuntu系统版本20.4) 1、更新apt sudo apt-get update2、安装必要的依赖包 sudo apt-get install ca-certificates curl gnupg lsb-release3、添加 Docker 官方 GPG 密钥(清化大学源) # 添加Docke…...

python常用库-pandas、Hugging Face的datasets库(大模型之JSONL(JSON Lines))

文章目录 python常用库pandas、Hugging Face的datasets库&#xff08;大模型之JSONL&#xff08;JSON Lines&#xff09;&#xff09;背景什么是JSONL&#xff08;JSON Lines&#xff09;通过pandas读取和保存JSONL文件pandas读取和保存JSONL文件 Hugging Face的datasets库Hugg…...

高端装备制造企业如何选择适配的项目管理系统提升项目执行效率?附选型案例

高端装备制造项目通常涉及多专业协同、长周期交付和高风险管控&#xff0c;因此系统需具备全生命周期管理能力。例如&#xff0c;北京奥博思公司出品的 PowerProject 项目管理系统就是一款非常适合制造企业使用的项目管理软件系统。 国内某大型半导体装备制造企业与奥博思软件达…...

【Dv3Admin】工具权限配置文件解析

接口级权限控制是后台系统安全防护的核心手段。基于用户角色、请求路径与方法进行细粒度授权&#xff0c;可以有效隔离不同用户的数据访问范围&#xff0c;防止越权操作&#xff0c;保障系统整体稳定性。 本文解析 dvadmin/utils/permission.py 模块&#xff0c;重点关注其在匿…...

AI炼丹日志-22 - MCP 自动操作 Figma+Cursor 自动设计原型

MCP 基本介绍 官方地址&#xff1a; https://modelcontextprotocol.io/introduction “MCP 是一种开放协议&#xff0c;旨在标准化应用程序向大型语言模型&#xff08;LLM&#xff09;提供上下文的方式。可以把 MCP 想象成 AI 应用程序的 USB-C 接口。就像 USB-C 提供了一种…...

Python爬虫:AutoScraper 库详细使用大全(一个智能、自动、轻量级的网络爬虫)

更多内容请见: 爬虫和逆向教程-专栏介绍和目录 文章目录 一、AutoScraper概述1.1 AutoScraper介绍1.2 安装1.3 注意事项二、基本使用方法2.1 创建 AutoScraper 实例2.2 训练模型2.3 保存和加载模型2.4 数据提取方法2.5 自定义规则三、高级功能3.1 多规则抓取3.2 分页抓取3.3 代…...

2025.6.1总结

今天又上了一天课&#xff0c;假期三天&#xff0c;上了两天的课&#xff0c;明天还得刷题。利用假期时间上课学习&#xff0c;并没有让我感到有多充实&#xff0c;反而让我感到有些小压抑。 在下午的好消息分享环节&#xff0c;我分享了毕业工作以来的一些迷茫。我不知道自己…...

[嵌入式实验]实验四:串口打印电压及温度

一、实验目的 熟悉开发环境在开发板上读取电压和温度信息使用串口和PC通信在PC上输出当前电压和温度信息 二、实验环境 硬件&#xff1a;STM32开发板、CMSIS-DAP调试工具 软件&#xff1a;STM32CubeMX软件、ARM的IDE&#xff1a;Keil C51 三、实验内容 配置相关硬件设施 &…...

LVS+Keepalived 高可用

目录 一、核心概念 1. LVS&#xff08;Linux Virtual Server&#xff09; 2. Keepalived 二、高可用架构设计 1. 架构拓扑图 2. 工作流程 三、部署步骤&#xff08;以 DR 模式为例&#xff09; 1. 环境准备 2. 主 LVS 节点配置 &#xff08;1&#xff09;安装 Keepali…...

Linux正则三剑客篇

一、历史命令 history 命令 &#xff1a;用于输出历史上使用过的命令行数量及具体命令。通过 history 可以快速查看并回顾之前执行过的命令&#xff0c;方便重复操作或追溯执行过程。 !行号 &#xff1a;通过指定历史命令的行号来重新执行该行号对应的命令。例如&#xff0c;若…...

HTML5 视频播放器:从基础到进阶的实现指南

在现代Web开发中&#xff0c;视频播放功能是许多网站的重要组成部分。无论是在线教育平台、视频分享网站&#xff0c;还是企业官网&#xff0c;HTML5视频播放器都扮演着不可或缺的角色。本文将从基础到进阶&#xff0c;详细介绍如何实现一个功能完善的HTML5视频播放器&#xff…...

鸿蒙HarmonyOS (React Native)的实战教程

一、环境配置 ‌安装鸿蒙专属模板‌ bashCopy Code npx react-native0.72.5 init HarmonyApp --template react-native-template-harmony:ml-citation{ref"4,6" data"citationList"} ‌配置 ArkTS 模块路径‌ 在 entry/src/main/ets 目录下创建原生模块&…...

函数栈帧深度解析:从寄存器操作看函数调用机制

文章目录 一、程序运行的 "舞台"&#xff1a;内存栈区与核心寄存器二、寄存器在函数调用中的核心作用​三、函数调用全流程解析&#xff1a;以 main 调用 func 为例阶段 1&#xff1a;main 函数栈帧初始化**阶段 2&#xff1a;参数压栈&#xff08;右→左顺序&#x…...

【计算机网络】第3章:传输层—可靠数据传输的原理

目录 一、PPT 二、总结 &#xff08;一&#xff09;可靠数据传输原理 关键机制 1. 序号机制 (Sequence Numbers) 2. 确认机制 (Acknowledgements - ACKs) 3. 重传机制 (Retransmission) 4. 校验和 (Checksum) 5. 流量控制 (Flow Control) 协议实现的核心&#xff1a;滑…...

rv1126b sdk移植

DDR rkbin bin/rv11/rv1126bp_ddr_v1.00.bin v1.00 板子2 reboot异常 [ 90.334976] reboot:Restarting system DDR 950804cb85 wesley.yao 25/04/02-15:54:40,fwver: v1.00In Derate1 tREFI1x SR93 PD13 R ddrconf 4 rgef0 rgcsb0 1 ERR: Read gate CS0 err error ERR …...

第6节 Node.js 回调函数

Node.js 异步编程的直接体现就是回调。 异步编程依托于回调来实现&#xff0c;但不能说使用了回调后程序就异步化了。 回调函数在完成任务后就会被调用&#xff0c;Node 使用了大量的回调函数&#xff0c;Node 所有 API 都支持回调函数。 例如&#xff0c;我们可以一边读取文…...

OpenCV CUDA模块直方图计算------在 GPU上执行直方图均衡化(Histogram Equalization)函数equalizeHist

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 cv::cuda::equalizeHist 用于增强图像的对比度&#xff0c;通过将图像的灰度直方图重新分布&#xff0c;使得图像整体对比度更加明显。 这在医学…...

构建系统maven

1 前言 说真的&#xff0c;我是真的不想看构建了&#xff0c;因为真的太多了。又多又乱。Maven、Gradle、Make、CMake、Meson、Ninja&#xff0c;Android BP。。。感觉学不完&#xff0c;根本学不完。。。 但是没办法最近又要用一下Maven&#xff0c;所以咬着牙再简单整理一下…...

day13 leetcode-hot100-23(链表2)

206. 反转链表 - 力扣&#xff08;LeetCode&#xff09; 1.迭代 思路 这个题目很简单&#xff0c;最主要的就是了解链表的数据结构。 链表由多个节点构成&#xff0c;每个节点包括值与指针&#xff0c;其中指针指向下一个节点&#xff08;单链表&#xff09;。 方法就是将指…...

Java面试八股(Java基础,Spring,SpringBoot篇)

java基础 JDK,JRE,JVMJava语言的特点Java常见的运行时异常Java为什么要封装​自增自减的隐式转换移位运算符1. 左移运算符&#xff08;<<&#xff09;2. 带符号右移运算符&#xff08;>>&#xff09;3. 无符号右移运算符&#xff08;>>>&#xff09; 可变…...

Python编程基础(二)| 列表简介

引言&#xff1a;很久没有写 Python 了&#xff0c;有一点生疏。这是学习《Python 编程&#xff1a;从入门到实践&#xff08;第3版&#xff09;》的课后练习记录&#xff0c;主要目的是快速回顾基础知识。 练习1&#xff1a; 姓名 将一些朋友的姓名存储在一个列表中&#xf…...

支持向量机(SVM):解锁数据分类与回归的强大工具

在机器学习的世界中&#xff0c;支持向量机&#xff08;Support Vector Machine&#xff0c;简称 SVM&#xff09;一直以其强大的分类和回归能力而备受关注。本文将深入探讨 SVM 的核心功能&#xff0c;以及它如何在各种实际问题中发挥作用。 一、SVM 是什么&#xff1f; 支持…...

代谢组数据分析(二十五):代谢组与蛋白质组数据分析的异同

禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍蛋白质组定义与基因的关系蛋白质组学(Proteomics)检测技术蛋白质的鉴定与定量分析蛋白质“鉴定”怎么做蛋白质“定量”怎么做蛋白质鉴定与定量对比应用领域代谢组定义代谢组学(M…...

002 flutter基础 初始文件讲解(1)

在学习flutter的时候&#xff0c;要有“万物皆widget”的思想&#xff0c;这样有利于你的学习&#xff0c;话不多说&#xff0c;开始今天的学习 1.创建文件 进入trae后&#xff0c;按住ctrlshiftP&#xff0c;输入Flutter&#xff1a;New Project&#xff0c;回车&#xff0c…...

AI 让无人机跟踪更精准——从视觉感知到智能预测

AI 让无人机跟踪更精准——从视觉感知到智能预测 无人机跟踪技术正在经历一场前所未有的变革。曾经,我们只能依靠 GPS 或简单的视觉识别来跟踪无人机,但如今,人工智能(AI)结合深度学习和高级视觉算法,正让无人机的跟踪变得更加智能化、精准化。 尤其是在自动驾驶、安防监…...