查看Linux系统信息的常用命令

文章目录

    • 1. 机器配置查看
    • 2. 常用分析工具
    • 3. 常用指令解读
      • 3.1 lscpu
    • 4. 定位僵尸进程
    • 5. 参考

1. 机器配置查看

# 总核数=物理CPU个数x每颗物理CPU的核数
# 总逻辑CPU数=物理CPU个数x每颗物理CPU的核数x超线程数
cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l  # 查看物理CPU个数
cat /proc/cpuinfo| grep "processor"| wc -l                # 查看逻辑CPU的个数
cat /proc/cpuinfo| grep "cpu cores"| uniq                 # 查看每个物理CPU中core的个数(即核数)cat /proc/cpuinfo |grep name |cut -d: -f2 |uniq -c        # 查看CPU信息(型号)
cat /proc/cpuinfo |grep MHz |uniq                         # 查看CPU主频
[sweet@T-T ~]$ cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l
2
[sweet@T-T ~]$ cat /proc/cpuinfo| grep "processor"| wc -l
32
# 这个服务器一共32个逻辑CPU,也就是我们常说的线程数,也就说每个核可以提供2个线程。
[sweet@T-T ~]$  cat /proc/cpuinfo| grep "cpu cores"| uniq
cpu cores	: 8
[sweet@T-T ~]$ cat /proc/cpuinfo |grep name |cut -d: -f2 |uniq -c
32  Intel(R) Xeon(R) Gold 6234 CPU @ 3.30GHz

2. 常用分析工具

主要分析工具

  • vmstat、sar、mpstat、pidstat:检测是否存在 CPU 瓶颈(线程);
  • vmstat、free:检测是否存在内存瓶颈(进程);
  • iostat:检测是否存在磁盘 I/O 瓶颈;
  • netstat:检测是否存在网络 I/O 瓶颈;

排查流程

  • CPU:top jstack vmstat
  • 磁盘:df iostat iotop
  • 内存:free OOM
  • 网络:netstat

工具枚举

  1. CPU信息lscpu 命令可以查看CPU的详细信息,例如核心数、频率等。
  2. 内存信息free 命令可以查看内存使用情况,包括总内存、已用内存、可用内存等。
  3. 磁盘空间df 命令用于显示磁盘分区的空间使用情况。
  4. 进程信息ps 命令可以列出当前运行的进程,top 命令可以实时显示进程的系统资源使用情况。
  5. 网络连接netstatss 命令可以列出当前的网络连接情况。
  6. 日志文件/var/log/ 目录下存储了系统的各种日志文件,您可以查看这些日志文件以了解系统运行情况和潜在问题。
  7. 系统负载uptime 命令可以显示系统的负载情况,即CPU平均负载。
  8. 网络性能ping 命令可以测试与其他主机的网络连接,traceroute 命令可以跟踪数据包的路径。
  9. 硬件信息lshwlspci 命令可以获取硬件设备的信息,例如CPU、内存、显卡等。
  10. 系统信息uname 命令用于查看系统的基本信息,例如内核版本、操作系统类型等。
  11. 系统服务systemctl 命令用于管理系统服务,可以查看服务的状态、启动、停止等。
  12. 系统安全ufw 命令用于管理防火墙规则,fail2ban 可以保护系统免受暴力破解攻击。

3. 常用指令解读

3.1 lscpu

在终端中运行 lscpu 命令输出:
lscpu解析:

  • CPU的架构, 此处为 x86_64,表示使用64位的x86架构。
    Architecture: x86_64
    CPU op-mode(s): 32-bit, 64-bit
    Byte Order: Little Endian

  • CPU op-mode(s)(CPU运行模式):显示CPU支持的运行模式,包括32位和64位。

  • Byte Order(字节顺序):显示字节顺序,此处为 Little Endian,表示低位字节在前。

  • cpu逻辑核数,显示系统中CPU的总数,此处为 80,表示系统有80个CPU核心。
    CPU(s): 80

  • On-line CPU(s) list(在线CPU列表):显示在线CPU的编号范围,此处为 0-79,表示编号从0到79的CPU核心都在线。

  • 超线程(每核线程数):指的每个 Core 的硬件线程数,超线程。此处为 2,表示每个核心支持2个线程。数值为1时,表示不支持超线程。
    Thread(s) per core: 2

  • 单个cpu物理核数(每插槽核心数):显示每个CPU插槽(socket)支持的核心数,此处为 4,表示每个插槽有4个核心。
    Core(s) per socket: 20

  • 座/Socket(s)(插槽数量):指的是主板上CPU的插槽,服务器通常会有多个,此处为 2,表示系统有2个CPU插槽。

  • NUMA 节点: 2

  • Vendor ID(厂商ID):显示CPU制造商ID,此处为 GenuineIntel,表示CPU制造商为Intel。

  • CPU family(CPU系列):显示CPU家族,此处为 6。

  • Model(型号):显示CPU型号,此处为 85。

  • Model name(型号名称):显示CPU型号名称,此处为 Intel® Xeon® Gold 5218R CPU @ 2.10GHz。

  • Stepping步进: 7

  • CPU MHz(CPU频率):显示CPU的时钟频率,此处为 2100.000 MHz。

  • BogoMIPS:一个用于衡量CPU性能的估算值。

  • Virtualization(虚拟化支持):显示CPU是否支持虚拟化,此处为 VT-x,表示支持虚拟化技术。

  • 物理cpu处理器个数

  • 一级高速缓存 指令集
    L1d 缓存: 32K

  • 一级高速缓存 数据集
    L1i 缓存: 32K

  • 二级高速缓存
    L2 缓存: 1024K

  • 三级高速缓存
    L3 缓存: 28160K

  • 物理cpu0里面的逻辑内核
    NUMA 节点0 CPU: 0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,40,42,44,46,48,50,52,54,56,58,60,62,64,66,68,70,72,74,76,78

  • 物理cpu1里面的逻辑内核
    NUMA 节点1 CPU: 1,3,5,7,9,11,13,15,17,19,21,23,25,27,29,31,33,35,37,39,41,43,45,47,49,51,53,55,57,59,61,63,65,67,69,71,73,75,77,79

  • liunx高速缓存地址
    lscpu
    其中:
    index0是一级缓存 数据指令 存放的地方
    index1是一级缓存 数据储存 存放的地方(即一级缓存分指令和数据2部分存储)
    index2是二级缓存 数据存储 存放的地方
    index3是三级缓存 数据存储 存放的地方

通过 lscpu 命令,我们可以了解到系统的CPU配置,包括核心数、线程数、频率、缓存大小等,这些信息对于了解系统性能和优化应用程序的运行非常有用。

4. 定位僵尸进程

使用ps命令结合-e选项和-o选项来查看所有进程的状态:

ps -eo pid,ppid,stat,cmd | grep -w Z

这会列出所有状态为Z的进程,即僵尸进程。
输出:
僵尸进程

 ps -A -ostat,ppid,pid,cmd |grep -e '^[Zz]'

输出:
僵尸进程

指令参数解读: 
ps -A -ostat,ppid,pid,cmd |grep -e '^[Zz]'
-A  参数列出所有进程
-o  自定义输出字段 stat(状态)、ppid(进程父id)、pid(进程id)、cmd(命令) 
因为状态为z或者Z的进程为僵尸进程,所以我们使用grep抓取stat状态为zZ进程

还可以通过top命令查找,当zombie前的数量不为0时,即系统内存在相应数量的僵尸进程。
僵尸进程

5. 参考

【Linux】查看系统各种信息的常用命令 (CPU、内存、进程、网口、磁盘、硬件、等等)
Linux性能检查常用命令

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/89638.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Jmeter接口自动化和Python接口自动化,如何选择?

选择Jmeter或Python进行接口自动化测试取决于您的具体需求和环境。以下是一些可以考虑的因素: 1. 语言熟悉度:如果您对Java更熟悉,那么Jmeter可能是更好的选择。而如果您的团队或个人对Python更熟悉,那么Python可能是更好的选择。…

Python数据分析之Excel

Openpyxl库 1、Openpyxl模块2、Excel写入2.1、新建2.2、添加数据2.3、单元格格式 3、Excel读取4、Excel的CRUD4.1、查4.2、改4.3、删 1、Openpyxl模块 Openpyxl是一个用于处理xlsx格式Excel表格文件的第三方python库,几乎支持Excel表格的所有操作 基本概念&#x…

GaussDB数据库SQL系列-游标管理

目录 一、前言 二、概述(GaussDB) 1、游标概述 2、游标的使用分类 三、GaussDB中的显式游标(示例) 1、显式游标的使用与操作步骤 2、显式游标示例 四、GaussDB中的隐式游标(示例) 1、隐式游标简介…

MySQL基础进阶

文章目录 MySQL基础进阶 约束 \color{red}{约束} 约束约束的概念和分类约束的概念约束的分类 非空约束概念语法 唯一约束概念语法 主键约束概念语法 数据库设计 \color{red}{数据库设计} 数据库设计软件的研发步骤数据库设计概念数据库设计的步骤表关系一对一一对多&#xff08…

Pytest+Allure+Excel接口自动化测试框架实战

1. Allure 简介 简介 Allure 框架是一个灵活的、轻量级的、支持多语言的测试报告工具,它不仅以 Web 的方式展示了简介的测试结果,而且允许参与开发过程的每个人可以从日常执行的测试中,最大限度地提取有用信息。 Allure 是由 Java 语言开发的…

docker系列文章目录

docker系列专栏笔记总算完成了,平时下班比较晚,利用晚上的一些时间整理了这一系列的学习笔记。 docker系列教程包含以下几个方面: docker环境篇 介绍docker环境的搭建,已经管理平台工具(portainer)的简单使用。 docker常用命令篇…

结构型设计模式——桥接模式

摘要 桥接模式(Bridge pattern): 使用桥接模式通过将实现和抽象放在两个不同的类层次中而使它们可以独立改变。 一、桥接模式的意图 将抽象与实现分离开来,使它们可以独立变化。 二、桥接模式的类图 Abstraction: 定义抽象类的接口Implementor: 定义实现类接口 …

MySQL 的 C 语言接口

1. mysql_init MYSQL *mysql_init(MYSQL *mysql); mysql_init函数的作用:创建一个 MYSQL 对象(该对象用于连接数据库)。 mysql_init函数的参数: ① mysql:MYSQL 结构体指针,一般设置为 NULL 。 mysql_init函…

实用的 “edge://flags“

~~ edge实验室 ~~ “edge://flags” 是 Microsoft Edge 浏览器中的一个隐藏设置页面,允许用户启用、禁用和调整各种实验性功能和高级选项。这些功能可能会对浏览器的性能和稳定性产生影响,因此使用时需要谨慎。以下是一些实用的 “edge://flags” 设置…

嵌入式芯片-NE555

目录 1、比较器(运放) 2、相反门(非门) 3、或非门 4、双稳态触发器 5、NE555功能框图 1、比较器(运放) 2、相反门(非门) 3、或非门 4、双稳态触发器 5、NE555功能框图

俞敏洪:董宇辉在北京有房子了!

据媒体报道,9月26日,俞敏洪在直播中透露,董宇辉已经在北京拥有了自己的房子,并且强调这是大家共同努力的结果。 这一消息引起了广泛关注和热议。在此之前,董宇辉曾在公开场合表示,俞敏洪老师为了给他凑钱买…

数据库索引失效

索引失效是指数据库查询在执行过程中无法有效利用索引,导致查询性能下降或索引无法被使用的情况,以下是常见的导致索引失效的原因: 模糊查询以通配符开头,自己都不知道具体要查什么,怎么使用索引呢,所以会导…

输送机使用的常见误区

输送机也称流水线,是指在自动化生产过程中起到运输货物,联通各个生产设备的主要机械设备。但在使用的过程中,很多用户对于输送机的使用存在一定的误区,导致设备故障频出,下面就针对用户已在使用输送机过程中的常见误区…

Android Studio 创建项目不自动生成BuildConfig文件

今天在AS上新建项目发现找不到BuildConfig文件,怎么clear都不行。通过多方面查找发现原来gradle版本不同造成的,Gradle 8.0默认不生成 BuildConfig 文件。 如上图,8.0版本是没有source文件夹 上图是低于8.0版本有source文件夹 针对这个问题&…

基于若依框架进行二次开发优化指南

背景 若依(RuoYi)开源框架是一个功能强大的Java开发框架,专注于快速构建企业级后台管理系统。它提供了一套丰富的功能和模块,可以帮助开发人员快速搭建稳定、高效的管理系统。本篇博客将大家了解若依框架的基本概念和使用方法&am…

云原生Kubernetes:对外服务之 Ingress

目录 一、理论 1.Ingress 2.部署 nginx-ingress-controller(第一种方式) 3.部署 nginx-ingress-controller(第二种方式) 二、实验 1.部署 nginx-ingress-controller(第一种方式) 2.部署 nginx-ingress-controller(第二种方式) 三、问题 1.启动 nginx-ingress-controll…

vite-react修改antd得prefix

项目介绍 使用vite-react-ts和less,修改prefix作用主要就是乾坤项目antd版本不同导致样式冲突 安装 pnpm add antd pnpm add less -D配置vite.config.ts中css.preprocessorOptions.less.modifyVars import { defineConfig, loadEnv } from vite export default …

Selenium Web自动化测试 —— 高级控件交互方法!

一、使用场景 使用场景对应事件复制粘贴键盘事件拖动元素到某个位置鼠标事件鼠标悬停鼠标事件滚动到某个元素滚动事件使用触控笔点击触控笔事件(了解即可) https://www.selenium.dev/documentation/webdriver/actions_api 二、ActionChains解析 实例…

iOS自动化测试方案(一):MacOS虚拟机保姆级安装Xcode教程

文章目录 一、环境准备二、基础软件三、扩展:usb拓展插件 一、环境准备 1、下载VMware虚拟机的壳子,安装并注册软件(可以百度注册码),最新版本:v17 2、下MacOS系统iOS镜像文件,用于vmware虚拟机安装,当前镜…

油猴(篡改猴)学习记录

第一个Hello World 注意点:默认只匹配了http网站,如果需要https网站,需要自己添加match https://*/*代码如下 这样子访问任意网站就可以输出Hello World // UserScript // name 第一个脚本 // namespace http://tampermonkey.net/ // version 0.1 // descri…