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

生产环境中常用Linux命令

太简单的我就不讲解啦,浪费时间,直接将生产中常用的

文章目录

  • 1.总纲
  • 2.整机 top
  • 3.CPU vmstat
  • 3. 内存 free
  • 4. 硬盘: df
  • 5. 磁盘IO iostat
  • 6. 网络IO ifstat
  • 7: 内存过高的情景排查

1.总纲

  1. 整机:top
  2. cpu:vmstat
  3. 内存:free
  4. 硬盘:df
  5. 磁盘io: iostat
  6. 网络io:ifstat

2.整机 top

首先们要查询整机的状况 top -H
在这里插入图片描述
如果三个值得综合/3*100%>60% 就说明负担有点高啦,按下q按键退出

其中uptime命令为负载均衡的精简版窗口
在这里插入图片描述

3.CPU vmstat

命令 vmstat -n 2,3 2秒的时间,采样3个数据
在这里插入图片描述
在这里插入图片描述

扩展:
查看所有的CPU核信息:mpstat -P ALL 2 每两秒采样一次
每个进程使用CPU的用量分解信息 pidstat -u 1 -p 进程编号

3. 内存 free

free -m 以MB的形式显示,更加精确
在这里插入图片描述

(如果没有安装,请执行 yum install sysstat)
扩展:查看额外内存 pidstat -p 进程号 -r 采样的间隔数
MEN 展示 的这个进程占用内容的百分比
在这里插入图片描述

top
top -Hp pid
printf %x 11129
jstack -l 11095 |grep 11129 >> jstack.log


按进程的CPU使用率排序

运行top命令后,键入大写P。

有两种途径:

a) 打开大写键盘的情况下,直接按P键

b) 未打开大写键盘的情况下,Shift+P键

按进程的内存使用率排序

运行top命令后,键入大写M。

有两种途径:

a) 打开大写键盘的情况下,直接按M键

b) 未打开大写键盘的情况下,Shift+M键


4. 硬盘: df

df -h 查看磁盘剩余空间数
du * -h | sort -hr | head -100 , 由大到小,查询前100个送占用磁盘的文件路径
du /home -h | sort -hr | head -100 , 自定义路径
在这里插入图片描述
顺便分享下MySQL磁盘的定位分析

//不用做修改,查看当前mysql连接下,每个库的总大小
select TABLE_SCHEMA, concat(truncate(sum(data_length)/1024/1024/1024,2), 'GB') as data_size, concat(truncate(sum(index_length)/1024/1024,2),'MB') as index_size 
from information_schema.tables 
group by TABLE_SCHEMA 
order by data_length desc;//修改 tp 数据库的名称,查看当前数据库下,每个表的总大小
select TABLE_NAME, concat(truncate(data_length/1024/1024/1024,2),'GB') as data_size, concat(truncate(index_length/1024/1024/1024,2), 'GB') as index_size 
from information_schema.tables where TABLE_SCHEMA = 'tp' 
group by TABLE_NAME 
order by data_length desc;

5. 磁盘IO iostat

参数含义

-c: 显示CPU使用情况
-d: 显示磁盘使用情况
-N: 显示磁盘阵列(LVM) 信息
-n: 显示NFS 使用情况
-k: 以 KB 为单位显示
-m: 以 M 为单位显示
-t: 报告每秒向终端读取和写入的字符数和CPU的信息
-V: 显示版本信息
-x: 显示详细信息
-p:[磁盘] 显示磁盘和分区的情况

具体的使用

iostat -xdk 2 3

每隔2秒,显示一次设备统计信息.总共输出3次, 显示的单位以kb为单位

结果参数说明

在这里插入图片描述

具体参数参数含义
rkB/s每秒读取数据量kb
wkB/s每秒写入数据量Kb
svctmI/O请求的平均时间,单位毫秒
awaitI/O请求的平均等待时间,单位毫秒,值越小,性能越好
util一秒钟有百分几的时间用于处理I/O操作,当达到100%时,标识磁盘宽带跑满,需要优化程序或者增加磁盘,是重要的指标

排查总结

  1. 如果 %util 接近 100%,说明产生的I/O请求太多,I/O系统已经满负荷该磁盘可能存在瓶颈。
  2. 如果 svctm 比较接近 await,说明 I/O 几乎没有等待时间;
  3. 如果 await 远大于 svctm,说明I/O 队列太长,io响应太慢,则需要进行必要优化。
  4. 如果avgqu-sz比较大,也表示有当量io在等待

单独进程的磁盘IO pidstat -d 2 -p 进程号

6. 网络IO ifstat

默认本地是没有网络IO,下载ifstat

  1. wget http://gael.roualland.free.fr/ifstat/ifstat-1.1.tat.gz
  2. tar ifstat-1.1.tat.gz
  3. cd ifstat-1.1
  4. ./configure
  5. make
  6. make install

在这里插入图片描述

7: 内存过高的情景排查

1: 利用top命令,得到占用内存最高的进程PID

top

在这里插入图片描述
2.查看此进程中占用CPU较高的线程排行

ps -mp PID(这里替换) -o THREAD,tid,time|sort -rn|head -n 20

在这里插入图片描述

3.将此线程id转换成16进制,为我们接下来的操作做准备。

printf "%x\n" tid

4:用jstack查看一下

jstack pid |grep tid -A 30

在这里插入图片描述

相关文章:

生产环境中常用Linux命令

太简单的我就不讲解啦,浪费时间,直接将生产中常用的 文章目录 1.总纲2.整机 top3.CPU vmstat3. 内存 free4. 硬盘: df5. 磁盘IO iostat6. 网络IO ifstat7: 内存过高的情景排查 1.总纲 整机:topcpu:vmstat内存:free硬盘:df磁盘io: iostat网络io:ifstat 2.整机 top 首先们要查…...

【使用 TensorFlow 2】03/3 创建自定义损失函数

一、说明 TensorFlow 2发布已经接近5年时间,不仅继承了Keras快速上手和易于使用的特性,同时还扩展了原有Keras所不支持的分布式训练的特性。3大设计原则:简化概念,海纳百川,构建生态.这是本系列的第三部分,…...

Vue3中使用v-model高级用法参数绑定传值

Vue3中使用v-model高级用法参数绑定传值 单个输入框传值多个输入框传值,一个组件接受多个v-model值 单个输入框传值 App.vue <template><p>{{firstName}}</p><hello-world v-model"firstName"></hello-world> </template><…...

你的工作中,chatGPT可以帮你做什么?

如何在工作中使用 ChatGPT 的 10 种实用方法 现在您已经知道如何开始使用 ChatGPT 并了解其基本功能&#xff08;提示 -> 响应&#xff09;&#xff0c;让我们探讨如何使用它来大幅提高工作效率。 1. 总结报告、会议记录等 ChatGPT可以快速分析大文本并识别关键点。例如&a…...

k8s简单部署nginx

文章目录 1. 前言2. 部署nginx2.1. **创建一个nginx的Deployment**2.2. **创建一个nginx的service** 3. 总结 1. 前言 前文提要&#xff1a; kubeadm简单搭建k8s集群第三方面板部署k8s 上篇文章我们简单部署了k8s的集群环境&#xff0c;相比一定迫不及待的想部署一个实际应用了…...

小黑子—MyBatis:第四章

MyBatis入门4.0 十 小黑子进行MyBatis参数处理10.1 单个简单类型参数10.1.1 单个参数Long类型10.1.2 单个参数Date类型 10.2 Map参数10.3 实体类参数&#xff08;POJO参数&#xff09;10.4 多参数10.5 Param注解&#xff08;命名参数&#xff09;10.6 Param注解源码分析 十一 小…...

Docker快速上手:使用Docker部署Drupal并实现公网访问

文章目录 前言1. Docker安装Drupal2. 本地局域网访问3 . Linux 安装cpolar4. 配置Drupal公网访问地址5. 公网远程访问Drupal6. 固定Drupal 公网地址 前言 Dupal是一个强大的CMS&#xff0c;适用于各种不同的网站项目&#xff0c;从小型个人博客到大型企业级门户网站。它的学习…...

React知识点系列(1)-每天10个小知识

目录 1.什么是 React&#xff0c;以及它在前端开发中的优势是什么&#xff1f;2.你是如何组织和管理 React 组件的&#xff1f;3.你能解释一下 React 的生命周期方法吗&#xff1f;你通常在哪个生命周期方法中发起网络请求&#xff1f;4.什么是 React Hooks&#xff1f;你常用哪…...

substring 和 substr 的区别

1、结论 两个方法都用于截取字符串&#xff0c;其用法不同&#xff1a; 1&#xff09;相同点&#xff1a; ① 都用于截取字符串&#xff1b; ② 第一个参数都是表示提取字符的开始索引位置&#xff1b; 2&#xff09;不同点&#xff1a; ① 第一个参数的取值范围不同&…...

产品经理的工作职责是什么?

产品经理的工作职责主要包括以下几个方面&#xff1a; 1. 产品策划与定义&#xff1a;产品经理负责制定产品的整体策略和规划&#xff0c;包括产品定位、目标用户、市场需求分析等。他们需要与团队合作&#xff0c;定义产品的功能和特性&#xff0c;明确产品的核心竞争力和差异…...

智能井盖传感器:提升城市安全与便利的利器

在智能化城市建设的浪潮中&#xff0c;WITBEE万宾智能井盖传感器&#xff0c;正以其卓越的性能和创新的科技&#xff0c;吸引着越来越多的关注。本文小编将为大家详细介绍这款产品的独特优势和广阔应用前景。 在我们生活的城市中&#xff0c;井盖可能是一个最不起眼的存在。然而…...

给你一个项目,你将如何开展性能测试工作?

一、性能三连问 1、何时进行性能测试&#xff1f; 性能测试的工作是基于系统功能已经完备或者已经趋于完备之上的&#xff0c;在功能还不够完备的情况下没有多大的意义。因为后期功能完善上会对系统的性能有影响&#xff0c;过早进入性能测试会出现测试结果不准确、浪费测试资…...

点燃市场热情,让产品风靡全球——实用推广策略大揭秘!

文章目录 一、实用推广策略的重要性1. 提高产品知名度和认可度2. 拓展产品市场和用户群体3. 增强企业品牌形象和市场竞争力 二、实用推广策略的种类1. 社交媒体推广2. 定向推广3. 口碑营销4. 内容推广 三、实用推广策略的实施步骤1. 研究目标用户和市场需求&#xff0c;明确产品…...

Python操作Hive数据仓库

Python连接Hive 1、Python如何连接Hive&#xff1f;2、Python连接Hive数据仓库 1、Python如何连接Hive&#xff1f; Python连接Hive需要使用Impala查询引擎 由于Hadoop集群节点间使用RPC通信&#xff0c;所以需要配置Thrift依赖环境 Thrift是一个轻量级、跨语言的RPC框架&…...

客户收到报价后突然安静了,怎么办?

外贸人常常会有这样的经历&#xff1a;与意向度很高的客户数封邮件沟通报价之后&#xff0c;突然客户那边就沉静下来了&#xff0c;而不知所措&#xff0c;遇到这样的客户&#xff0c;应该怎么办呢&#xff1f; Vol.1 了解客户信息 首先自身要养成一个好习惯&#xff0c;针对…...

O2OA(翱途)常见知识之 mysql 数据库备份

概述 系统运行一段时间后&#xff0c;可能发生各种情况导致数据丢失&#xff0c;如硬件故障、人为错误、软件错误、病毒攻击等。定期备份可以帮助您保护数据免受这些风险的影响&#xff0c;以便在需要时能够恢复数据。 O2OA应用本身可以通过dump配置每天自定备份数据&#xff…...

如何让你的程序支持lua脚本

最近做了一个控制机械臂的程序,使用C语言开发的,调试的时候总是需要修改代码来调整运动轨迹, 总是要编译,实在烦人 不过有个方法就是使用lua来调试运动逻辑 代码如下 static int lua_up(lua_State*l) {size_t stepluaL_checkinteger(l,1);//向上动作up(step);return 0; }st…...

什么是系统架构师?什么是系统架构?

1. 什么是系统架构师&#xff1f; 系统架构设计师(System Architecture Designer&#xff09;是项目开发活动中的关键角色之一。系统架构是系统的一种整体的高层次的结构表示&#xff0c;是系统的骨架和根基&#xff0c;其决定了系统的健壮性和生命周期的长短。 系统架构设计…...

大数据NoSQL数据库HBase集群部署

目录 1. 简介 2. 安装 1. HBase依赖Zookeeper、JDK、Hadoop&#xff08;HDFS&#xff09;&#xff0c;请确保已经完成前面 2. 【node1执行】下载HBase安装包 3. 【node1执行】&#xff0c;修改配置文件&#xff0c;修改conf/hbase-env.sh文件 4. 【node1执行】&#xf…...

百乐钢笔维修(官方售后,全流程)

文章目录 1 背景2 方法3 结果 1 背景 在给钢笔上墨的途中&#xff0c;不小心总成掉地上了&#xff0c;把笔尖摔弯了&#xff08;虽然还可以写字&#xff0c;但是非常的挂纸&#xff09;&#xff0c;笔身没有什么问题&#xff0c;就想着维修一下笔尖或者替换一下总成。 一般维…...

Redis 介绍安装

数据库 关系型数据库 关系型数据库是一个结构化的数据库&#xff0c;创建在关系模型&#xff08;二维表格模型&#xff09;基础上&#xff0c;一般面向于记录。 SQL 语句&#xff08;标准数据查询语言&#xff09;就是一种基于关系型数据库的语言&#xff0c;用于执行对关系型…...

MyCat管理及监控

MyCat原理 在 MyCat 中&#xff0c;当执行一条 SQL 语句时&#xff0c; MyCat 需要进行 SQL 解析、分片分析、路由分析、读写分离分析等操作&#xff0c;最终经过一系列的分析决定将当前的SQL 语句到底路由到那几个 ( 或哪一个 ) 节点数据库&#xff0c;数据库将数据执行完毕后…...

滑动窗口算法题

更新结果 1、判断条件成立后更新结果 2、入窗口后即可更新结果 判断&#xff1a; 出窗口后状态更新&#xff0c;循环回去再判断。 1、长度最小的子数组 力扣&#xff08;LeetCode&#xff09;官网 - 全球极客挚爱的技术成长平台...

部署zabbix代理服务器、部署zabbix高可用集群

目录 部署zabbix代理服务器 1、环境设置 2、设置 zabbix 的下载源&#xff0c;安装 zabbix-proxy 3、配置Mariadb yum源&#xff0c;并下载marisdb数据库 4.、启动数据库&#xff0c;并初始化数据库 5、登录数据库&#xff0c;创建数据库并指定字符集&#xff0c;并进行…...

[stm32]外中断控制灯光

在STM32CubeMX中配置外部中断功能和参数 1、将上拉输入的引脚设置为&#xff1a;GPIO_EXTI功能 2、GPIO模式设为下降沿触发外部中断&#xff0c;使能上拉电阻&#xff0c;用户标签 3、要将NVIC的相关中断勾选 只有将中断源进行勾选&#xff0c;相关的中断请求才能得到内核的…...

huggingface下大模型最好的方案

一、背景&#xff1a; 搞模型应用&#xff0c;看看别家的模型&#xff0c;huggingface模型大市场&#xff0c;国际明星企业都在上发布开源大模型&#xff0c;一般5G&#xff0c;甚至10G更大&#xff0c;怎么下载呢&#xff1f; 二、方案 1、git clone 会把整个工程给下载下来…...

Maven 密码加密

一、简介 Maven支持服务器密码加密。该解决方案解决的主要用例是&#xff1a; 多个用户共享同一台生成计算机&#xff08;服务器、CI 框&#xff09;有些用户有权将 Maven 工件部署到存储库&#xff0c;有些则没有。 这适用于任何需要授权的服务器操作&#xff0c;而不仅仅是…...

Socks5代理和代理IP:网络工程师的多面利器

在数字时代&#xff0c;网络工程师的角色日益重要&#xff0c;他们需要应对跨界电商、爬虫、出海业务、网络安全和游戏等领域的技术挑战。而Socks5代理和代理IP技术作为他们的利器&#xff0c;发挥着至关重要的作用。本文将探讨这两种技术在不同领域的应用&#xff0c;展现其在…...

模拟信号隔离器在水处理控制系统中的应用方案

安科瑞 崔丽洁 摘要&#xff1a;水处理控制系统中&#xff0c;其控制、监测模块的非电量模拟量传感器采用信号隔离器的接线方式合理地解决了相关模拟量传感器供电电源安全和相对独立的问题&#xff0c;保证了监测模块的电源、模拟量采集模块和输出模块的相对隔离&#xff0c;降…...

XML是不是主要用做配置文件?

2023年10月11日&#xff0c;周三下午 这几天发现tomcat的配置文件主要是用XML文件来写的&#xff0c; 于是就有了这个问题。 是的,XML非常适合用来做配置文件。 XML作为配置文件的主要优点: 可读性强。XML使用标签结构组织数据,内容清晰易懂。跨语言和跨平台。XML作为纯文本…...