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

【Linux】-学习笔记03

第十一章-管理Linux软件包和进程

1.源码下载安装软件

1.1概念

源码文件:程序编写者使用C或C++等语言编写的原始代码文本文件
源码文件使用.tar.gz或.tar.bz2打包成压缩文件

1.2特点

源码包可移植性好,与待安装软件的工作环境依赖性不大
由于有编译过程,其代码运行效率较高,是针对当前使用者环境的“量体裁衣”
安装功能可以定制,可以选择需要的功能进行安装
卸载方便,只需删除对应安装目录即可,没有Windows“注册表”的概念
安装过程较为麻烦

1.3安装过程

下载解压缩源码压缩包
分析安装软件环境
编译软件
安装软件

2.安装QQ

2.1方法一(rpm)

首先要具备网络环境

通过wget来获取rpm包

接着下载

rpm -ivh  QQ_3.2.13_241104_x86_64_01.rpm

 发现需要libXScrnSaver依赖

我们接着下载依赖

wget https://mirrors.aliyun.com/rockylinux/9.4/devel/x86_64/os/Packages/l/libXScrnSaver-1.2.3-10.el9.x86_64.rpm

 将依赖下载好

此时下载qq

成功下载

2.2方法二(软件仓库)

配置软件仓库

首先挂载光驱到/dev/cdrom目录下

mkdir /rhel9                     //提供一个特定的挂载点mount /dev/cdrom /rhel9/        //将光盘设备(/dev/cdrom)挂载到刚刚创建的 “/rhel9” 目录下。这样                                   就可以访问光盘中的内容,例如安装软件、读取文档等。echo mount /dev/cdrom /rhel9/ >> /etc/rc.d/rc.loacl    //将 “mount /dev/cdrom/rhel9/” 这个命令追加到 “/etc/rc.d/rc.local” 文件中。“/etc/rc.d/rc.local” 是一个在系统启动时会被执行的脚本文件。通过将挂载命令添加到这个文件中,可以确保在系统每次启动时自动挂载光盘到 “/rhel9” 目录。chmod +x /etc/rc.d/rc/local      //为 “/etc/rc.d/rc.local” 文件添加可执行权限。这样系统在启动时才能正确执行这个文件中的命令。如果没有可执行权限,文件中的命令将不会被执行。

在该目录下(/etc/yum.repos.d/)进行软件仓库的配置

配置内容如下所示:

保存退出即可

配置好软件仓库后,利用dnf下载即可

3.RPM管理工具

3.1概念

RPM(Redhat Package Manager)由Red Hat公司提出的一种软件包管理标准
是Linux各发行版中应用最广泛的软件包格式之一(还有debian的发行版deb安装包)。
产生原因:软件制作者在其工作环境下将软件编译完毕后再进行发布,以此减少安装编译时间,要
求:软件安装环境与编译时的环境要相同。

3.2RPM安装软件要求

软件安装环境必须与打包软件环境一致
必须满足软件依赖性
软件卸载时必须小心,最底层软件不能先卸载

3.3rpm软件包命名格式

含义:软件名-版本号-发行号.操作系统版本.硬件平台的类型.rpm
如:zsh-5.0.2-14.el7.x86_64.rpm

3.4 rpm软件安装

1.格式

rpm -参数 软件包名

2.参数

参数说明
-i, --install安装软件包
--nodeps不验证软件包依赖
--force安装时提示已安装则重新覆盖安装
-v, --verbose提供更多的详细信息输出
-U软件包升级
-e软件包卸载

3.5 rpm查询功能

1.格式

rpm –q 包名
# -q常与下面参数组合使用

2.参数

参数说明
-a查询所有已安装的软件包
-l显示已安装软件包的相关文件列表和信息
-f查询文件所属软件包
-i显示已经安装的rpm软件包信息

3.示例

rpm -qa

rpm -ql

rpm -qf

rpm -qi 

4.进程管理

4.1概念

程序: 二进制文件,文件存储在磁盘中,例如/usr/bin/目录下
进程:进程是已启动的可执行程序的运行实例
进程和程序并不是一一对应的关系,相同的程序运行在不同的数据集上就是不同的进程
线程:是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单
位。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行
执行不同的任务。
一个进程可以拥有多个线程,而一个线程同时只能被一个进程所拥有
线程不能单独执行,但是每一个线程都有程序的入口、执行序列以及程序出口,它必须组成进程才
能被执行。

4.2进程分类

5.查看进程

5.1ps命令

1.作用

ps显示某个时间点的程序运行情况

 2.格式

ps -参数

3.参数

4.示例

ps -a

ps -u

ps a

ps x

表示要输出进程的 CPU 使用率(%cpu)、内存使用率(%mem)和对应的命令(command)这三个信息 

ps ax表示显示所有进程(包括其他用户的进程)的信息。--sort +%mem是按照内存使用率(%mem)进行升序排序。-o %cpu,pid则是指定输出格式为 CPU 使用率(%cpu)和进程 ID(pid)。

5.2top命令 

1.格式

top [-d 数字] | [-bnp]

2.参数

-d:后面可以接秒数,就是整个进程界面更新的秒数,默认是5秒
-b:以批次的方式执行top,还有更多的参数可用。通常会搭配数据流重定向来将批处理的结果输出为文件。
-n:与-b搭配,进行几次top的输出结果
-i:不显示闲置或者僵死的进程信息
-c:显示进程的整个命令路径,而不是只显示命令名称
-s:使top命令在安全模式下运行,此时top的交互式指令被取消,避免潜在危险
-p:指定某些个PID来进行查看检测

3.示例

top -d

 统计信息区:

第一行
top - 17:24:08 up 17 min,  4 users,  load average: 0.00, 0.00, 0.00
解释:
17:24:08表示当前系统时间;
up 17 min表示系统已经启动17分钟;
4 users表示当前登录系统的用户数;
load average:0.00, 0.00, 0.00表示系统1分钟、5分钟、15分钟前到现在的平均负载(如果是1表示满负载)第二行
Tasks: 304 total,   1 running, 303 sleeping,   0 stopped,   0 zombie
解释:
304 total进程的总数
1 running正在运行的进程数
303 sleeping处于休眠状态的进程数
0 stopped停止的进程数
0 zombie僵死的进程数第三行
%Cpu(s):  0.0 us,  0.1 sy,  0.0 ni, 99.6 id,  0.0 wa,  0.2 hi,  0.1 si,  0.0 st
解释:
0.0 us表示用户进程占用CPU的百分比
0.1 sy系统进程占用CPU的百分比;
0.0 ni用户进程空间内改变过优先级的进程占用CPU的百分比
99.6 id空闲CPU占用的百分比
0.0 wa代表I/Owait表示等待输入、输出的进程占用CPU的百分比;
0.2 hi表示cpu服务于硬件中断所耗费的时间总额
0.1 si表示cpu服务于软件中断所耗费的时间总额;
0.0 st表示虚拟机被hypervisor偷去的cpu时间
另外,如果是多内核设备,可按下数字键“1”来切换成不同cpu的负载率。第四五行
MiB Mem :   3627.2 total,   1844.6 free,   1306.6 used,    729.4 buff/cache
MiB Swap:   4012.0 total,   4012.0 free,      0.0 used.   2320.6 avail Mem
total系统的内存大小
free目前空余内存大小
used已经使用的内存大小

进程信息区:

PID:进程的id
USER:进程所有者的用户名
PR:进程优先级
NI:nice值。负值表示高优先级,正值表示低优先级
VIRT:进程使用的虚拟内存总量,单位为KB
RES:进程使用的、未被换出的物理内存大小,单位KB
SHR:共享内存大小,单位KB
S:进程状态,D表示不可中断的睡眠状态,R表示运行状态,S表示睡眠状态,T表示跟踪/停止,Z表示僵
死进程
%CPU:上次更新到现在的CPU时间占用百分比
%MEM:进程占用的物理内存百分比
TIME+:进程总计使用的CPU时间,单位为1/100秒
COMMAND:正在运行进程的命令名或者命令路径

top -c

top -p 

 6.kill命令

6.1作用

强制结束进程

6.2格式

killall #进程的名字kill #进程的id

 killall

 

kill 

相关文章:

【Linux】-学习笔记03

第十一章-管理Linux软件包和进程 1.源码下载安装软件 1.1概念 源码文件:程序编写者使用C或C等语言编写的原始代码文本文件 源码文件使用.tar.gz或.tar.bz2打包成压缩文件 1.2特点 源码包可移植性好,与待安装软件的工作环境依赖性不大 由于有编译过程…...

Leetcode热题100-32 最长有效括号

Leetcode热题100-32 最长有效括号 1. 题目描述2. 解题思路动态规划栈解法 3. 代码实现动态规划栈解法 1. 题目描述 32 最长有效括号 2. 解题思路 动态规划 定义状态: 设 dp[i] 表示以位置 i 结尾的最长有效括号子串的长度。 状态转移方程: 遍历字符…...

【大数据学习 | HBASE】hbase的读数据流程与hbase读取数据

1. hbase的读数据流程 在解析读取流程之前我们还需要知道两个功能性的组件和HFIle的格式信息 HFILE 存储在hdfs中的hbase文件,这个文件中会存在hbase中的数据以kv类型显示,同时还会存在hbase的元数据信息,包括整个hfile文件的索引大小&…...

A027-基于Spring Boot的农事管理系统

🙊作者简介:在校研究生,拥有计算机专业的研究生开发团队,分享技术代码帮助学生学习,独立完成自己的网站项目。 代码可以查看文章末尾⬇️联系方式获取,记得注明来意哦~🌹 赠送计算机毕业设计600…...

Redisson的可重入锁

初始状态: 表示系统或资源在没有线程持有锁的情况下的状态,任何线程都可以尝试获取锁。 线程 1 获得锁: 线程 1 首次获取了锁并进入受保护的代码区域。 线程 1 再次请求锁: 在持有锁的情况下,线程 1 再次请求锁&a…...

SQL Server Service Broker完整示例

目录 准备 创建Message,Contract,Queue和Service 创建调用存储过程 启用SQL Agent并创建Job执行存储过程 调用demo 常见故障排除 准备 判断你的数据库YourDatabaseName是否启用了Service Broker SELECT is_broker_enabled FROM sys.databases WH…...

CentOS7 升级OpenSSH9.0全过程和坑

近日,漏洞肆虐,需要升级新版本,才能解决漏洞。故有此文: 0 查看当前版本 [root@host-testsvc openssh-9.0p1]# ssh -V OpenSSH_7.4p1, OpenSSL 1.0.2k-fips 26 Jan 20171、在data下新建一个独立目录openssh目录,用来存放软件 [root@host-testsvc data]# mkdir openssh…...

RSTP的配置

RSTP相对于STP在端口角色、端口状态、配置BPDU格式、配置BPDU的处理方式、快速收敛机制、拓扑变更机制和4种保护特性方面的详细改进说明: 端口角色: STP中定义了三种端口角色:根端口(Root Port)、指定端口&#xff0…...

力扣257:二叉树的所有路径

给你一个二叉树的根节点 root ,按 任意顺序 ,返回所有从根节点到叶子节点的路径。 叶子节点 是指没有子节点的节点。 示例 1: 输入:root [1,2,3,null,5] 输出:["1->2->5","1->3"]示例…...

Tcl 和 Python 在二次开发研究

引言 Tcl(Tool Command Language)和 Python 都是广泛应用于各种领域的编程语言,特别是在二次开发和自动化开发方面,两者有着独特的特性。Tcl 是一种动态的脚本语言,早期主要用于集成和控制其他程序,因此它经常出现在嵌入式应用和图形用户界面(GUI)开发中。而 Python 是…...

【NLP优化】Ubuntu 20.04 下 源码安装 CasADi + Ipopt / acados

20241114 记录一下 Ubuntu 20.04 下安装 MPC 中两种常用开源 NLP 优化器 CasADi + Ipopt / acados 可以新建一个文件夹,保存所有源码安装下载的代码 mkdir ~/mpc_dep1. 安装依赖 # **IPOPT** sudo apt-get install gcc g++ gfortran git patch wget pkg-config libmetis-de…...

[241110] 微软发布多智能体系统Magentic-One | 社区讨论:Ubuntu 26.04 LTS 发布前移除 Qt 5

目录 微软发布多智能体系统 Magentic-One社区讨论:Ubuntu 26.04 LTS 发布前移除 Qt 5 微软发布多智能体系统 Magentic-One 微软研究院近日发布了一个名为 Magentic-One 的多智能体系统,旨在解决复杂的现实世界任务。这个系统展现了令人兴奋的潜力&#…...

AI风向标|算力与通信的完美融合,SRM6690解锁端侧AI的智能密码

当前,5G技术已经成为推动数字经济和实体经济深度融合的关键驱动力,进入5G发展的下半场,5G与AI的融合正推动诸多行业的数字化转型和创新发展,终端侧AI和端云混合式AI将广泛应用于各类消费终端和各行各业。 在推动5G和AI与各行业场…...

MySQL查询执行(六):join查询

到底可不可以使用join 假设存在如下表结构: -- 创建表t2 CREATE TABLE t2 (id int(11) NOT NULL,a int(11) DEFAULT NULL,b int(11) DEFAULT NULL,PRIMARY KEY (id),KEY a (a) ) ENGINEInnoDB;-- 向t2写入1000条数据 drop procedure idata; delimiter ;; create pr…...

python习题练习

python习题 编写一个简单的工资管理程序系统可以管理以下四类人:工人(worker)、销售员(salesman)、经理(manager)、销售经理(salemanger)所有的员工都具有员工号,工资等属性,有设置姓名,获取姓名,获取员工号,计算工资等…...

MySQL高级(二):一条更新语句是如何执行的

执行步骤 1. 解析 SQL 语句 MySQL 首先会解析你输入的 UPDATE 语句。解析器会检查语法是否正确,并将 SQL 语句转化为内部的数据结构(通常是语法树)。 示例 SQL 语句: UPDATE employees SET salary 5000 WHERE department Sa…...

在 Ubuntu 18.04 中搭建和测试 DNS 服务器

在 Ubuntu 18.04 中搭建和测试 DNS 服务器可以通过安装和配置 BIND(Berkeley Internet Name Domain)来实现。以下是详细的步骤: 1. 安装 BIND 打开终端并运行以下命令来安装 BIND: sudo apt update sudo apt install bind9 bin…...

算法学习第一弹——C++基础

早上好啊,大佬们。来看看咱们这回学点啥,在前不久刚出完C语言写的PTA中L1的题目,想必大家都不过瘾,感觉那些题都不过如此,所以,为了我们能更好的去处理更难的题目,小白兔决定奋发图强&#xff0…...

javaWeb小白项目--学生宿舍管理系统

目录 一、检查并关闭占用端口的进程 二、修改 Tomcat 的端口配置 三、重新启动 Tomcat 一、javaw.exe的作用 二、结束javaw.exe任务的影响 三、如何判断是否可以结束 结尾: 这个错误提示表明在本地启动 Tomcat v9.0 服务器时遇到了问题,原因是所需…...

如何优化Elasticsearch的查询性能?

优化Elasticsearch查询性能可以从以下几个方面进行: 合理设计索引和分片: 确保设置合理的分片和副本数,考虑数据量、节点数和集群大小。根据数据量和节点数量调整分片数量,避免使用过多分片,因为每个分片都需要额外的…...

突破不可导策略的训练难题:零阶优化与强化学习的深度嵌合

强化学习(Reinforcement Learning, RL)是工业领域智能控制的重要方法。它的基本原理是将最优控制问题建模为马尔可夫决策过程,然后使用强化学习的Actor-Critic机制(中文译作“知行互动”机制),逐步迭代求解…...

镜像里切换为普通用户

如果你登录远程虚拟机默认就是 root 用户,但你不希望用 root 权限运行 ns-3(这是对的,ns3 工具会拒绝 root),你可以按以下方法创建一个 非 root 用户账号 并切换到它运行 ns-3。 一次性解决方案:创建非 roo…...

2025 后端自学UNIAPP【项目实战:旅游项目】6、我的收藏页面

代码框架视图 1、先添加一个获取收藏景点的列表请求 【在文件my_api.js文件中添加】 // 引入公共的请求封装 import http from ./my_http.js// 登录接口(适配服务端返回 Token) export const login async (code, avatar) > {const res await http…...

Java 加密常用的各种算法及其选择

在数字化时代,数据安全至关重要,Java 作为广泛应用的编程语言,提供了丰富的加密算法来保障数据的保密性、完整性和真实性。了解这些常用加密算法及其适用场景,有助于开发者在不同的业务需求中做出正确的选择。​ 一、对称加密算法…...

第 86 场周赛:矩阵中的幻方、钥匙和房间、将数组拆分成斐波那契序列、猜猜这个单词

Q1、[中等] 矩阵中的幻方 1、题目描述 3 x 3 的幻方是一个填充有 从 1 到 9 的不同数字的 3 x 3 矩阵,其中每行,每列以及两条对角线上的各数之和都相等。 给定一个由整数组成的row x col 的 grid,其中有多少个 3 3 的 “幻方” 子矩阵&am…...

Redis数据倾斜问题解决

Redis 数据倾斜问题解析与解决方案 什么是 Redis 数据倾斜 Redis 数据倾斜指的是在 Redis 集群中,部分节点存储的数据量或访问量远高于其他节点,导致这些节点负载过高,影响整体性能。 数据倾斜的主要表现 部分节点内存使用率远高于其他节…...

OPENCV形态学基础之二腐蚀

一.腐蚀的原理 (图1) 数学表达式:dst(x,y) erode(src(x,y)) min(x,y)src(xx,yy) 腐蚀也是图像形态学的基本功能之一,腐蚀跟膨胀属于反向操作,膨胀是把图像图像变大,而腐蚀就是把图像变小。腐蚀后的图像变小变暗淡。 腐蚀…...

并发编程 - go版

1.并发编程基础概念 进程和线程 A. 进程是程序在操作系统中的一次执行过程,系统进行资源分配和调度的一个独立单位。B. 线程是进程的一个执行实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。C.一个进程可以创建和撤销多个线程;同一个进程中…...

比较数据迁移后MySQL数据库和OceanBase数据仓库中的表

设计一个MySQL数据库和OceanBase数据仓库的表数据比较的详细程序流程,两张表是相同的结构,都有整型主键id字段,需要每次从数据库分批取得2000条数据,用于比较,比较操作的同时可以再取2000条数据,等上一次比较完成之后,开始比较,直到比较完所有的数据。比较操作需要比较…...

在树莓派上添加音频输入设备的几种方法

在树莓派上添加音频输入设备可以通过以下步骤完成,具体方法取决于设备类型(如USB麦克风、3.5mm接口麦克风或HDMI音频输入)。以下是详细指南: 1. 连接音频输入设备 USB麦克风/声卡:直接插入树莓派的USB接口。3.5mm麦克…...