当前位置:

首页 > 软件教程 > 如何查看Linux系统的内存使用情况

如何查看Linux系统的内存使用情况

Linux是一种基于UNIX操作系统的开源操作系统内核。由于其开源性,它可以在各种硬件平台上运行,并且具有良好的可定制性和扩展性。Linux内核由LinusTorvalds于1991年首次发布,并随后得到全球开发者社区的广泛参与和贡献。公司要求java工程师要会Linux为什么公司要求java工程师会Linux操作系统的相关知识呢?部署和运行环境服务端开发和调试自动化部署与持续集成性能优化和故障排除与其他服务的集成企业要求JavaEE开发工程师掌握Linux知识主要是为了优化服务器环境、提升开发效率、确保

本文目录

    Linux是一种基于UNIX操作系统的开源操作系统内核。

    由于其开源性,它可以在各种硬件平台上运行,并且具有良好的可定制性和扩展性。

    Linux内核由Linus Torvalds于1991年首次发布,并随后得到全球开发者社区的广泛参与和贡献。

    公司要求java工程师要会Linux

    为什么公司要求java工程师会Linux操作系统的相关知识呢?

    • 部署和运行环境
    • 服务端开发和调试
    • 自动化部署与持续集成
    • 性能优化和故障排除
    • 与其他服务的集成

    企业要求JavaEE开发工程师掌握Linux知识主要是为了优化服务器环境、提升开发效率、确保应用程序性能稳定,并实现与其他服务的集成。

    掌握Linux操作系统的技能可以使JavaEE开发工程师更具竞争力,并在现实工作中更加得心应手。

    Linux服务器实际上就是一台机器,因此在shell脚本中常见的任务之一是检查机器的总内存大小或使用内存统计。

    本文将通过使用多个有用的命令和工具,采用不同的方法来达到这一目的。

    1. free命令

    free命令可以显示Linux系统中空闲的、已用的物理内存及swap内存,及被内核使用的buffer。

    在Linux系统监控的工具中,free命令是最经常使用的命令之一。

    命令格式:

    free [参数]

    Linux查看内存使用情况的命令有哪些

    常用参数

    • -h: 以合适的单位显示内存使用情况,最大为三位数,自动计算对应的单位值。单位有
    B = bytes
    K = kilos
    M = megas
    G = gigas
    T = teras

    演示

    free -h

    结果

    Linux查看内存使用情况的命令有哪些

    • -s<间隔秒数>  持续观察内存使用状况演示:每个五秒显示一次
     free -h -s 5

    结果

    Linux查看内存使用情况的命令有哪些

    可以使用 Ctrl + C 键盘快捷键轻松终止该过程

    2. vmstat 命令

    vmstat是Virtual Meomory Statistics(虚拟内存统计)的缩写类似于free命令,vmstat可对操作系统的虚拟内存、进程、CPU活动进行监控。

    它是对系统的整体情况进行统计,不足之处是无法对某个进程进行深入分析

    vmstat -w

    结果

    procs -----------------------memory---------------------- ---swap-- -----io---- -system-- --------cpu--------
     rb swpd free buffcache si sobibo in csussyidwast
     1003509592 2108 2006680014 2116 93 0 298 0 0

    -w,–wide output参数用于调整命令输出结果的显示方式。

    输出的结果和单独执行vmstat命令得到的结果完全一样,只是在输出时,会以更宽的宽度来展示数据命令显示字段含义(vmstat不加-参数)

    Linux查看内存使用情况的命令有哪些

    vmstat -s

    结果

     3865308 K total memory
     152744 K used memory
     121800 K active memory
    84996 K inactive memory
    3509652 K free memory
     2108 K buffer memory
     200804 K swap cache
    4063228 K total swap
    0 K used swap
    4063228 K free swap
     3681 non-nice user cpu ticks
    0 nice user cpu ticks
    16512 system cpu ticks
    1046086 idle cpu ticks
     96 IO-wait cpu ticks
    0 IRQ cpu ticks
    634 softirq cpu ticks
    0 stolen cpu ticks
     141780 pages paged in
    25244 pages paged out
    0 pages swapped in
    0 pages swapped out
    1230293 interrupts
     983789 CPU context switches
     1705671832 boot time
    51599 forks

    输出中的第一个条目是总物理内存。有时,我们不需要所有信息,因此我们可以使用 grep 仅提取所需的条目

    vmstat -s | grep -i 'total memory' | sed 's/ *//'

    结果

    3865308 K total memory

    3. top命令

    Top命令是 Linux 系统中一个常用的性能分析和监控工具,它可以实时展示系统中各个进程的资源占用状况。

    它的作用与 Windows 系统中的任务管理器相似。

    top

    我们可以看到 Mem 字段旁边的内存信息,并观察到我们总共有 3865308kb 的总内存

    Linux查看内存使用情况的命令有哪些

    4. dmidecode实用工具

    dmidecode是一个用于获取计算机系统中各种硬件信息的实用程序

    4.1. 安装 dmidecode

    对于基于 Ubuntu 的发行版,我们可以通过 apt 安装软件包:

    apt install dmidecode

    对于 RHEL、Fedora 和 CentOS,我们可以使用 yum

    yum install dmidecode -y

    命令

    dmidecode

    运行dmidecode命令之后,屏幕会输出大量记录,可以使用less分页查看,每个记录有4个不同的值:

    dmidecode less

    SMBIOS规范定义了以下DMI类型:

    Type Information
    ────────────────────────────────────────────
     0 BIOS
     1 System
     2 Baseboard
     3 Chassis
     4 Processor
     5 Memory Controller
     6 Memory Module
     7 Cache
     8 Port Connector
     9 System Slots
    10 On Board Devices
    11 OEM Strings
    12 System Configuration Options
    13 BIOS Language
    14 Group Associations
    15 System Event Log
    16 Physical Memory Array
    17 Memory Device
    18 32-bit Memory Error
    19 Memory Array Mapped Address
    20 Memory Device Mapped Address
    21 Built-in Pointing Device
    22 Portable Battery
    23 System Reset
    24 Hardware Security
    25 System Power Controls
    26 Voltage Probe
    27 Cooling Device
    28 Temperature Probe
    29 Electrical Current Probe
    30 Out-of-band Remote Access
    31 Boot Integrity Services
    32 System Boot
    33 64-bit Memory Error
    34 Management Device
    35 Management Device Component
    36 Management Device Threshold Data
    37 Memory Channel
    38 IPMI Device
    39 Power Supply
    40 Additional Information
    41 Onboard Devices Extended Information
    42 Management Controller Host Interface

    假如我们想看看内存 DMI 类型,可以使用分配的数字 5、6、16、17、18、19、20、21 和 22 访问。

    dmidecode --type 19

    Linux查看内存使用情况的命令有哪些

    看到内存总大小为8 GB

    以下是dmidecode的一些常用选项和功能:

    • 查看产品名称:可以通过dmidecode | grep "Product Name"来获取当前连接的主板的“产品名称”。
    • 查看系统序列号:可以使用dmidecode -s system-serial-number来获得服务器的系统序列号。
    • 查看内存信息:通过dmidecode -t memory可以获得电脑中各个内存插槽的信息。
    • 查看OEM信息:如果需要了解制造商信息,可以使用dmidecode -t OEM,但这个选项可能不再常见。
    • 查看处理器信息:如果想要获取处理器的详细信息,可以使用dmidecode -t processor。

    5. /proc/meminfo虚拟文件

    proc文件系统中的 meminfo文件包含关于系统对内存使用情况的信息。

    free命令就是读取这个文件来呈现当前系统包含物理内存和SWAP内存在内的空闲内存和已使用内存

    使用cat命令读取/proc/meminfo文件,我们可以获取内存信息

    cat /proc/meminfo

    Linux查看内存使用情况的命令有哪些

    假如要读取文件前三行?

    cat /proc/meminfo | head -n 3
    MemTotal:3865308 kB总内存
    MemFree: 3474652 kB空闲内存
    MemAvailable:3435164 kB

    思考:假设我们正在编写一个 Bash 脚本,我们需要在其中处理物理内存大小,需要怎么做?

    #!/bin/bash
    
    total_ram () {
    local totalram=$(cat /proc/meminfo | grep -i 'memtotal' | grep -o '[[:digit:]]*')
    echo $totalram
    }
    
    ram_size=$(total_ram)
    echo "Total RAM: $ram_size kB"

    现在,让我们保存脚本并使其可执行:

    chmod +755 totalram.sh
    
     ./totalram.sh 

    结果

    Linux查看内存使用情况的命令有哪些

    在Linux中,通过free、vmstat、top、dmidecode和/proc/meminfo等工具和文件,使我们可以全面了解服务器的总内存大小。

    本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系bd@zhengruan.com
    作者最新文章
    软件教程 Linux 操作系统 工程师
    相关文章 更多
    linux删除用户与用户组的方法及命令教程
    linux删除用户与用户组的方法及命令教程

    掌握Linux中删除用户和用户组的正确方法,避免残留文件和进程冲突。本文深入解析userdel和groupdel命令的参数用法,提供处理“用户仍在使用”等常见错误的实战方案。

    Linux如何开启端口号?开放端口命令详解
    Linux如何开启端口号?开放端口命令详解

    详细讲解Linux如何开启端口号以及常用的开放端口命令。

    crossover卸载软件下载及重新安装教程
    crossover卸载软件下载及重新安装教程

    遇到CrossOver运行错误或需要更新版本时,如何彻底卸载旧版并干净重装?本教程详解macOS和Linux下的卸载步骤、残留文件清理方法及官方下载渠道,确保软件环境纯净稳定。

    查看更多
    精品专题 更多
    装机必备
    装机必备

    正软商城装机必备专区,精选办公、浏览器、安全防护、影音播放、压缩解压、设计创作和系统工具等电脑常用正版软件,帮助用户快速完成新电脑软件配置。

    Windows
    Windows

    正软商城Windows软件专区,汇集适用于Windows电脑的办公、设计、安全防护、影音播放、开发工具和系统优化软件,提供软件介绍、系统要求、正版授权及购买下载服务。

    PDF教程
    PDF教程

    正软商城PDF教程频道提供PDF编辑、转换、合并、拆分、压缩及格式处理方法,同时介绍常用PDF软件和工具的使用技巧。

    Mac软件 更多
    讯飞智作 网页版
    讯飞智作 网页版
    Windows/ macOS/ Linux

    讯飞智作是一款基于语音合成技术、虚拟人驱动技术与数字人形象声音构建能力的 AI 数字人音视频创作平台。

    火山引擎 网页版
    火山引擎 网页版
    Windows/ macOS/ Linux

    火山引擎是字节跳动旗下企业级云与AI服务平台。聚焦大模型核心能力,依托字节自研豆包多模态大模型,凭借火山方舟一站式平台,提供模型精调、推理部署、智能应用搭建等全链路服务,结合高性能AI算力,助力各行业快速落地大模型数字化与智能化应用。

    Aperty macOS版
    Aperty macOS版
    macOS

    Aperty 是 Skylum 推出的 AI 人像修图软件,支持自然肤质修饰、瑕疵处理、面部与身体调整、预设及批量同步。

    WINDOWS 更多
    讯飞智作 网页版
    讯飞智作 网页版
    Windows/ macOS/ Linux

    讯飞智作是一款基于语音合成技术、虚拟人驱动技术与数字人形象声音构建能力的 AI 数字人音视频创作平台。

    火山引擎 网页版
    火山引擎 网页版
    Windows/ macOS/ Linux

    火山引擎是字节跳动旗下企业级云与AI服务平台。聚焦大模型核心能力,依托字节自研豆包多模态大模型,凭借火山方舟一站式平台,提供模型精调、推理部署、智能应用搭建等全链路服务,结合高性能AI算力,助力各行业快速落地大模型数字化与智能化应用。

    PixTV 网页版
    PixTV 网页版
    Windows

    PixTV 是一款在浏览器中使用的 AI 视觉内容创作平台,提供图片、视频、音频、文字生成、AI 分镜、局部重绘、提示词反推和无限画布等工具,适合短剧、漫剧、广告及社交媒体内容制作。