RHCSA Linux系统软件管理和进程管理
1. RPM管理工具
(1)简介
① 包名格式
软件名 - 主版本 - 次版本 - 修订号 - 软件发布次数 - 发行商 - CPU架构平台 - 支持系统位数.rpm
eg: zsh - 5.0.2 - 14.el7.x86_64.rpm
② 相关网站
http://rpmfind.net/, http://rpm.pbone.net/
(2)安装软件
① 本地安装
[root@localhost ~]#rpm - ivh 安装包名
② 网络安装
[root@localhost ~]#wget 下载链接
[root@localhost ~]#rpm - ivh 下载后的包名
③参数说明:
-i 安装
-v 显示详细安装信息
-h 显示哈希标记
-e 卸载
--nodeps 不验证依赖
(3)查询软件
① 查询所有已安装软件名
[root@localhost ~]#rpm - qa
② 显示已安装软件包的相关文件列表和信息
[root@localhost ~]#rpm - ql 软件包名
③ 查询文件所属的软件包
[root@localhost ~]#rpm - qf 文件路径
④ 显示已安装rpm软件包的信息
[root@localhost ~]#rpm - qi 软件包名
(4)卸载软件包
[root@localhost ~]#rpm - evh 软件包名
2. YUM/DNF管理工具
(1)简介
① 功能
可在线下载、安装、卸载、升级rpm软件包,自动查找并解决rpm包之间的依赖关系
② 工作原理
系统通过读取/etc/yum.repos.d/目录下的.repo结尾文件,获取软件仓库信息及地址
(2)使用yum安装软件包
① 方法1:本地源
[root@localhost ~]#mount /dev/sr0 /mnt #挂载
[root@localhost ~]#vim /etc/yum.repos.d/xixi.repo
[ku01]
name = base # 定义仓库的显示名称
baseurl = /mnt/BaseOS # 指定软件包所在路径
gpgcheck = 0 # 表示不进行软件包签名的校验
enable = 1 # 表示启用该仓库
[ku02]
name = app
baseurl = /mnt/AppStream
gpgcheck = 0
enable = 1
[root@localhost ~]#yum install lrzsz
② 方法2:网络源
[root@localhost ~]#vim /etc/yum.repos.d/xixi.repo( 必须以此结尾.repo)
[ku01]
name = base
baseurl=https://mirrors.163.com/rocky/19.4/BaseOS/x86_64/os/ #仓库地址
enable = 1
gpgpgcheck = 0 #是否校验软件签名
[ku02]
name = app
baseurl=https://mirrors.163.com/rocky/19.4/AppStream/x86_64/os/
enable = 1
pgpgcheck = 0
[root@localhost ~]#yum install httpd -y
❗❗❗注
0:仓库Id
1:仓库名字
2:仓库在哪
3:校验仓库里的软件是否来源合法
4:启用仓库
(3)软件管理操作
① 查看信息
[root@localhost ~]#yum repolist:查看系统中yum源配置信息
[root@localhost ~]#yum list available:列出仓库所有可安装软件包
[root@localhost ~]#yum list installed:列出已安装及所有或指定的rpm包
[root@localhost ~]#yum info 包名:查看指定软件包详细信息
[root@localhost ~]#yum group list:查看仓库所有组信息
[root@localhost ~]#yum groupinfo 包组名:查看指定包组更详细信息
② 安装软件
[root@localhost ~]#yum install [-y] 包名:安装指定软件包
[root@localhost ~]# yum update [-y] 包名:升级指定软件包或系统中所有已安装软件包
[root@localhost ~]#yum group install 包组名:安装指定包组里所有包
③ 卸载软件
[root@localhost ~]#yum remove [-y] 包名:卸载指定软件包
④ 查询软件
[root@localhost ~]#yum provides 文件名:查找指定文件属于哪个包
[root@localhost ~]#yum whatprovides /etc/fstab:查看文件由哪个包提供
[root@localhost ~]#yum search 模糊包名:查看模糊包名的软件包
⑤ 清楚缓存
[root@localhost ~]#yum clean packages all:清除下载到本机指定或所有软件包的yum源缓存
3. 源代码编译
(1)优点
① 能获取软件最新版,及时修复bug
② 可按需重新配置软件,添加新功能
(2)编译前准备
确认系统安装了支持C/C++语言的编译器,如安装gcc:[root@localhost ~]# yum install gcc
(3)安装步骤
① 下载软件包:从官网等渠道获取软件源代码包
② 解压到指定目录:
tar -xf 软件包名.tar.gz
cd 解压后的目录
③ 配置
./configure 检测环境并配置编译参数
④ 编译
make 依据Makefile进行编译
exit
⑤ 安装
make install 命令将软件安装到系统中
(4)测试安装
wget www.baidu.com
4. 进程管理
(1)基本概念
① 程序:存储在硬盘上的二进制文件,如/bin/ls
② 进程:已启动的可执行程序的运行实例,是程序的一次执行过程
③ 线程:进程中可独立执行的最小单位,一个进程可包含多个线程,线程共享进程资源
(2)进程特性
① 并发性:多个进程可在一段时间内交替执行
② 独立性:进程间相互独立,有各自的资源和运行空间
③ 异步性:进程执行速度不可预知,按各自速度推进
(3)线程特点
① 开销小,创建和切换速度快
② 可执行不同任务,提高程序执行效率
(4)进程分类
① 按运行主体
➤系统进程:由系统内核启动,承担内存资源分配等管理工作,不受用户干预
➤用户进程:由用户启动,如应用程序,在用户控制下运行
② 按运行方式
➤交互进程:由shell启动,运行中需与用户交互,如命令行程序
➤批处理进程:按顺序依次执行一系列任务,无需用户交互
➤守护进程:在后台周期性执行任务或等待特定事件,如Web服务器
③ 按隶属关系
➤父进程:创建其他进程的进程
➤子进程:被父进程创建的进程
④ 按运行环境
➤前台进程:在控制台占用命令行,运行期间独占控制台
➤后台进程:在后台运行,不占用控制台,可使用&符号将命令放后台执行
5. 查看进程
(1)PS命令
① 常用参数组合及作用
➤ps-l:以长格显示当前用户的进程,展示进程状态、优先级等信息
➤ps -le:长格式显示系统中所有进程,包含系统进程和用户进程
➤ps aux:显示所有用户的进程,包含CPU使用率、内存使用率等详细信息
② 输出字段含义
PID:进程ID
%CPU:CPU使用率
%MEM:内存使用率
STAT:进程状态(如R运行,S睡眠,D不可中断睡眠等)
START:进程启动时间
TIME:进程累计运行时间
COMMAND:启动进程的命令
(2)pstree命令
① 功能:以树状结构显示进程间的父子进程关系,便于查看进程家族树
② 常用选项
-p:显示每个进程的PID
(3)top命令
① 功能:动态实时查看系统中进程的状态,包括CPU、内存等资源使用情况
② 常用快捷键及功能
- d:设置刷新间隔时间
- n:按进程名称排序
- P:按CPU使用率排序
- M:按内存使用率排序
③ 输出信息解读
➤统计信息区:包括系统运行时间、用户数、负载平均值等系统总体信息
➤进程信息区:显示各进程PID、用户、CPU使用率、内存使用率等详细信息
6. 信号控制进程
(1)常用信号及作用
➤SIGHUP(1):重新加载配置文件,常用于让守护进程重新读取其配置
➤SIGINT(2):键盘中断信号,相当于Ctrl+C,用于终止正在运行的前台进程
➤SIGKILL(9):强行终止信号,无法被进程捕获或忽略,用于强行结束无响应进程
➤SIGTERM(15):正常终止信号,进程可捕获并进行清理工作后退出
➤SIGSTOP(19):暂停进程执行,可使用SIGCONT信号恢复
(2)发送信号命令
kill - 信号编号 进程PID
eg: kill -9 1134,强制终止PID为1134的进程
7. 作业控制
(1)作业相关概念
一个shell会话中可同时运行和管理多个作业,作业是正在运行的进程或进程组
(2)作业控制命令
前后台切换
➤&:将命令放入后台运行,如sleep 100 &
➤Ctrl+z:将前台作业暂停并放到后台
➤jobs:查看当前shell会话中的所有作业及其状态
➤fg %作业编号:将指定编号的后台作业调至前台运行
➤bg %作业编号:将指定编号的后台暂停作业恢复到后台继续运行
❗❗❗ 在后台运行的命令,如果有输出信息,可使用输出重定向(如>文件名)将输出保存到文件,避免信息在前台显示
相关文章:
RHCSA Linux系统软件管理和进程管理
1. RPM管理工具 (1)简介 ① 包名格式 软件名 - 主版本 - 次版本 - 修订号 - 软件发布次数 - 发行商 - CPU架构平台 - 支持系统位数.rpm eg: zsh - 5.0.2 - 14.el7.x86_64.rpm ② 相关网站 http://rpmfind.net/, http://rpm.pbone.net/ ࿰…...
地平线rdk-x5部署yolo11(1) 模型转出
一. 模型导出: 可以参考RDK X5部署YOLOv8-Seg 和v8差不多 、拷贝YOLO项目 git clone https://github.com/ultralytics/ultralytics.git 2、虚拟环境和依赖安装 # 安装虚拟环境 conda create -n yolov8 python3.8 -y # 进入虚拟环境 conda activate yolov8 # 安…...
开源AI对比--dify、n8n
原文网址:开源AI对比--dify、n8n-CSDN博客 简介 本文介绍开源AI工作流工具的选型。 对比 项difyn8n占优者学习难度简单中等dify核心理念用LLM构建应用。“连接一切”。以工作流自动化连接各系统。平手工作模式 Chatflow:对话。支持用户意图识别、上下…...

移动端前端开发中常用的css
在开发移动端项目的时候,很多样式都是相同的,比如说图标大小,头像大小,页面底部保存(添加按钮),项目主体颜色等等,对于这些在项目中常用到的,通常都会写在公共样式中(pub…...

Linux安装Weblogic 教程
前言 WebLogic 是一个由 Oracle 提供的企业级应用服务器,广泛用于部署和管理 Java EE(Enterprise Edition)应用程序。它支持多种服务,包括 Web 服务、企业信息系统、消息驱动的应用等。它是一个强大的应用服务器,旨在…...
JVM——即时编译
分层编译模式:动态平衡启动速度与执行效率 分层编译是现代JVM(如HotSpot、GraalVM)实现高性能的核心策略之一,其核心思想是根据代码的执行热度动态选择不同的编译层次,实现启动速度与运行效率的最佳平衡。以HotSpot虚…...

flutter 的热更新方案shorebird
Flutter 热修复(Shorebird)_flutter shorebird-CSDN博客 Preview Locally | ShorebirdLearn how to preview an existing release of your application.https://docs.shorebird.dev/code-push/preview/ 控制台: Shorebird Console 文档&…...

创建型模式:抽象工厂(Abstract Factory)模式
一、概念与核心思想 抽象工厂(Abstract Factory)模式是创建型设计模式的重要成员,它提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。该模式将对象的创建逻辑封装在抽象工厂及其具体实现类中,客户端通过抽象工厂接口获取所需的对象族,实现对象创…...
Java面试深度解密:Spring Boot、Redis、日志优化、JUnit5及Kafka事务核心技术解析
模拟面试实战 面试官:请解释Spring Boot的自动配置原理?哪些关键注解参与了这一过程? xbhog:Spring Boot通过AutoConfiguration标记核心配置类,通过ConditonalOnClass和ConditionalOnMissingBean判断依赖是否存在并自…...
Python爬虫(22)Python爬虫进阶:Scrapy框架动态页面爬取与高效数据管道设计
目录 一、背景:Scrapy在现代爬虫中的核心价值二、Scrapy项目快速搭建1. 环境准备与项目初始化2. 项目结构解析 三、动态页面处理:集成Splash与中间件1. 配置Splash渲染服务(Docker部署)2. 修改settings.py启用中间件3. 在Spider中…...
Tomcat 日志体系深度解析:从访问日志配置到错误日志分析的全链路指南
一、Tomcat 核心日志文件架构与核心功能 1. 三大基础日志文件对比(权威定义) 日志文件数据来源核心功能典型场景catalina.out标准输出 / 错误重定向包含 Tomcat 引擎日志与应用控制台输出(System.out/System.err)排查 Tomcat 启…...

PDF文档解析新突破:图表识别、公式还原、手写字体处理,让AI真正读懂复杂文档!
要想LLM大模型性能更佳,我们需要喂给模型看得懂的高质量数据。那有没有一种方法,能让我们把各种文档“读懂”,再喂给大模型使用呢? 如果你用传统OCR工具直接从PDF中提取文本,结果往往是乱序、缺失、格式错乱。因为实际…...

Redis 主从复制集群搭建教程
目录 为什么要搭建 Redis 主从复制集群?搭建 Redis 主从复制集群前提条件步骤一:创建 Docker 网络步骤二:启动 Redis 主节点步骤三:启动 Redis 从节点步骤四:验证复制状态步骤五:使用 Python 连接 Redis 集…...

共模电感在开关电源交流侧的应用原理与原因
在开关电源的设计中,共模电感是一个关键的电子元件,它常被连接在开关电源的交流一侧。然而,很多人虽然对共模电感并不陌生,但对于它为何要接在交流一侧,可能并没有深入理解。接下来,我们将详细探讨共模电感…...

MySQL——七、索引
优势:极高查询效率;极高排序效率 劣势:占用磁盘空间;降低更新表的速度(可忽略,磁盘相对便宜;增删改比例较小) 索引结构 MYSQL的索引是在存储引擎层实现的,不同的存储引…...
Mongo mongodump mongorestore 导入出导出操作
使用 mongodump 导出数据 示例 1: 导出整个数据库 mongodump --host localhost --port 27017 --db myDatabase --out /data/backup/–host: MongoDB服务器地址。–port: MongoDB服务器端口,默认是27017。–db: 要导出的数据库名称。–out: 输出目录,备…...
JAVA将一个同步方法改为异步执行
目的: 这么做的目的就是为了使一个高频率执行的方法能不阻塞整个程序,将该方法丢入到线程池中让线程去做异步执行,既提高了程序整体运行速度,也使得在高并发环境下程序能够更加健壮(同步执行可能会使得请求堆积以致系…...
安装jdk步骤
将Linux安装jdk的步骤放入shell脚本中 #!/bin/bash # 阿里云服务器专用 - 全自动安装 OpenJDK 1.8(无交互) # 仅支持 yum 系系统(CentOS/RHEL/Alibaba Cloud Linux)# 检查 root 权限 if [ "$(id -u)" -ne 0 ]; thenech…...

HTML应用指南:利用POST请求获取全国德邦快递服务网点位置信息
德邦快递作为中国领先的综合性物流服务提供商,自1996年成立以来,始终致力于为客户提供高效、安全的大件快递及其他物流解决方案。德邦快递凭借其强大的直营模式、“最后一公里”的优质服务以及对科技的持续投入,在竞争激烈的物流市场中占据了重要位置。特别是在大件快递领域…...

高级可视化图表分析实践——以《大侠立志传》武器系统为例
高级可视化图表分析实践——以《大侠立志传》武器系统为例 引言武器类型分布矩形树图结论 不同品质/类别武器的攻击力分布情况蜂群图分析结论 武器来源桑基图分析结论 武器附加属性词云图分析结论 不同品级武器装备熟练度要求/特质要求离散热力图结论品质与熟练度的正相关性品质…...

RoPE长度外推:外插内插
RoPE:假定 α \alpha α是定值 其中一半位置是用cos表示的 cos ( k α − 2 i d ) \cos(k\alpha^{-\frac{2i}{d}}) cos(kα−d2i)(另一半是sin)(d是词嵌入维度) 当太长如何解决: 1 直接不管—外插 缺点:超过一定长度性能急剧下降。(较大时,对应的很多位置编码…...

【C++进阶】第2课—多态
文章目录 1. 认识多态2. 多态的定义和实现2.1 构成多态的必要条件2.2 虚函数2.3 虚函数的重写或覆盖2.4 协变(了解)2.5 析构函数的重写2.6 override和final关键字2.7 重载、重写、隐藏对比 3. 纯虚函数和抽象类4. 多态原理4.1 虚函数表指针4.2 多态的实现4.3 静态绑定和动态绑定…...

RSS 2025|斯坦福提出「统一视频行动模型UVA」:实现机器人高精度动作推理
导读 在机器人领域,让机器人像人类一样理解视觉信息并做出精准行动,一直是科研人员努力的方向。今天,我们要探讨的统一视频行动模型(Unified Video Action Model,UVA),就像给机器人装上了一个“…...
AWS IoT Core与MSK集成实战:打造高可靠实时IoT数据管道
在物联网快速发展的今天,如何高效、安全地处理海量设备数据成为企业面临的一大挑战。本文将带您深入探索AWS IoT Core与Amazon MSK(Managed Streaming for Apache Kafka)的集成方案,手把手教您搭建一个可靠、可扩展的实时IoT数据处理管道。无论您是IoT开发者、大数据工程师还是…...

第十六届蓝桥杯B组第二题
当时在考场的时候这一道题目 无论我是使用JAVA的大数(BIGTHGER)还是赛后 使用PY 都是没有运行出来 今天也是突发奇想在B站上面搜一搜 看了才知道这也是需要一定的数学思维 通过转换 设X来把运算式精简化 避免运行超时 下面则是代码 public class lanba…...

Android Studio 中使用 SQLite 数据库开发完整指南(Kotlin版本)
文章目录 1. 项目准备1.1 创建新项目1.2 添加必要依赖 2. 数据库设计3. 实现数据库3.1 创建实体类 (Entity)3.2 创建数据访问对象 (DAO)3.3 创建数据库类 4. 创建 Repository5. 创建 ViewModel6. 实现 UI 层6.1 创建笔记列表 Activityactivity_notes_list.xmlNotesListActivity…...

Spring 框架实战:如何实现高效的依赖注入,优化项目结构?
Spring 框架实战:如何实现高效的依赖注入,优化项目结构? 在当今的 Java 开发领域,Spring 框架占据着举足轻重的地位。而依赖注入作为 Spring 的核心概念之一,对于构建高效、灵活且易于维护的项目结构有着关键作用。本…...

C++ learning day 01
目录 1. iostream : 2.第一个C++程序 3. 执行过程以及以上例子详解(以上例子为参考) 1. iostream : 全称: input/output stream library 作用: 用于处理输入输出操作 2.第一个C++程序 #include <iostream>int main() {std::cout << "Hello World! &qu…...

李沐《动手学深度学习》 | 多层感知机
文章目录 感知机模型《深度学习入门》的解释训练感知机损失函数的选择感知机的收敛定理:什么时候能够停下来,是不是真的可以停下来感知机的不足 多层感知模型案例引入隐藏层从线性到非线性单隐藏层-单分类案例多隐藏层 激活函数softmax函数溢出的问题 多…...
Windows 下 MongoDB 安装指南
🛒 第一步:获取 MongoDB 安装包 访问官网大本营:打开浏览器,直奔 MongoDB 官网下载页面(就像逛淘宝一样简单) 挑选心仪的版本: 在 "Select Version" 选择最新稳定版(新手…...