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

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 %作业编号:将指定编号的后台暂停作业恢复到后台继续运行

❗❗❗ 在后台运行的命令,如果有输出信息,可使用输出重定向(如>文件名)将输出保存到文件,避免信息在前台显示

http://www.xdnf.cn/news/5103.html

相关文章:

  • flowable-适配其他类型数据库,不修改源码解决方案
  • 位运算(二进制中1的个数)
  • uniapp自定义导航栏搭配插槽
  • Linux的进程与线程
  • 笔记,麦克风的灵敏度
  • Jedis高版本的JedisPoolConfig没有maxActive和maxWait
  • Linux使用Docker部署安装应用
  • Papyrus字体介绍
  • 为什么消息队列系统不像数据库系统那样可以配置读写分离?
  • Docker基础入门:容器化技术详解
  • PH热榜 | 2025-05-09
  • class path resource [] cannot be resolved to absolute file path
  • powershell_bypass.cna 插件(适配 Cobalt Strike 4.0 的免费版本下载地址)
  • FreeRTOS菜鸟入门(十四)·事件
  • Prometheus生产实战全流程详解(存储/负载/调度篇)
  • 认识拦截器
  • 如何获取NumPy数组中前N个最大值的索引
  • Qt6.x检查网络是否在线(与Qt 5.x不同)
  • 有关SOA和SpringCloud的区别
  • 软件设计师教程——第一章 计算机系统知识(下)
  • 数据库插入数据时自动生成
  • Python开发后端InfluxDB数据库测试接口
  • Python 数据分析与可视化:开启数据洞察之旅(5/10)
  • T-SQL在SQL Server中判断表、字段、索引、视图、触发器、Synonym等是否存在
  • 详解 c++17 重载类 overload的每一条语句,附实例.
  • Dify之八添加各种在线大模型
  • P1020 [NOIP 1999 提高组] 导弹拦截
  • Java——多态
  • 热力图是什么?三分钟学会热力图数据分析怎么做!
  • Dify MCP实战 - 邮件发送