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

Linux 基础命令-系统信息查看

Linux 基础命令——系统信息查看详解

在 Linux 系统中,了解和监控系统的状态和性能对系统管理员和开发者来说至关重要。Linux 提供了一组强大的命令,可以帮助我们查看系统信息,包括硬件、操作系统、CPU、内存、存储、网络等。

一、操作系统与内核信息查看

1. uname —— 查看操作系统和内核信息

uname 命令用于显示有关操作系统和内核的详细信息。

  • 查看操作系统类型:

    $ uname
    Linux
    
  • 查看内核版本:

    $ uname -r
    5.4.0-66-generic
    
  • 显示所有系统信息:

    $ uname -a
    Linux hostname 5.4.0-66-generic #74-Ubuntu SMP Fri Feb 19 10:29:21 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
    
2. lsb_release —— 查看 Linux 发行版信息

lsb_release 命令用于查看 Linux 发行版的相关信息,如发行版名称、版本号等。

  • 查看完整的发行版信息:

    $ lsb_release -a
    No LSB modules are available.
    Distributor ID: Ubuntu
    Description:    Ubuntu 20.04.2 LTS
    Release:        20.04
    Codename:       focal
    
  • 只显示发行版的描述信息:

    $ lsb_release -d
    Description:    Ubuntu 20.04.2 LTS
    
3. hostname —— 查看或设置主机名

hostname 命令用于查看或设置系统的主机名。

  • 查看主机名:

    $ hostname
    my-laptop
    
  • 临时设置主机名(仅对当前会话有效):

    $ sudo hostname new-hostname
    

二、CPU 信息查看

1. lscpu —— 显示 CPU 体系结构信息

lscpu 命令显示 CPU 的详细信息,包括架构、CPU 核心数、线程数等。

$ lscpu
Architecture:        x86_64
CPU(s):              4
Model name:          Intel(R) Core(TM) i5-8250U CPU @ 1.60GHz
CPU MHz:             1800.000
Virtualization:      VT-x
2. cat /proc/cpuinfo —— 查看详细的 CPU 信息

通过读取 /proc/cpuinfo 文件,可以查看系统中每个 CPU 核心的详细信息。

$ cat /proc/cpuinfo
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 158
model name      : Intel(R) Core(TM) i5-8250U CPU @ 1.60GHz
cpu MHz         : 1800.000
3. tophtop —— 实时查看 CPU 使用情况
  • top 命令实时显示系统中的进程信息和 CPU 使用情况:

    $ top
    
  • htoptop 的增强版,提供了更加直观的界面和更多的功能。它需要安装:

    $ sudo apt install htop
    $ htop
    

三、内存信息查看

1. free —— 查看内存使用情况

free 命令用于查看系统的内存和交换区的使用情况,输出显示总内存、已用内存、空闲内存等。

  • 查看内存使用情况(以 MB 为单位):

    $ free -m
                  total        used        free      shared  buff/cache   available
    Mem:           7972        1256        5489         156        1226        6321
    Swap:          2047           0        2047
    
  • 使用 -h 参数以更加人性化的格式显示:

    $ free -h
                  total        used        free      shared  buff/cache   available
    Mem:           7.8G        1.3G        5.4G        156M        1.2G        6.3G
    Swap:          2.0G          0B        2.0G
    
2. vmstat —— 查看内存、CPU 和 IO 状态

vmstat 命令提供有关内存、虚拟内存、CPU 以及 IO 的详细统计信息。

  • 查看系统总体状态:

    $ vmstat
    procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
     r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
     0  0      0 5612828 116736 1254364    0    0    41    12  234  335  1  1 98  0  0
    
  • 实时查看,更新频率为 2 秒:

    $ vmstat 2
    

四、磁盘信息查看

1. df —— 查看磁盘空间使用情况

df 命令用于查看文件系统的磁盘空间使用情况。

  • 查看所有文件系统的磁盘使用情况(以人类可读的方式显示):

    $ df -h
    Filesystem      Size  Used Avail Use% Mounted on
    /dev/sda1        50G   20G   28G  42% /
    tmpfs           7.8G  156M  7.6G   2% /dev/shm
    
2. du —— 查看文件或目录的磁盘使用情况

du(Disk Usage)命令用于查看文件或目录占用的磁盘空间大小。

  • 查看当前目录下每个文件和子目录的磁盘使用情况:

    $ du -h
    4.0K    ./Desktop
    50M     ./Documents
    
  • 查看某个目录的总大小:

    $ du -sh /var/log
    200M    /var/log
    

五、网络信息查看

1. ifconfigip —— 查看网络接口信息
  • ifconfig 命令用于查看和配置网络接口的 IP 地址、子网掩码等信息:

    $ ifconfig
    eth0      Link encap:Ethernet  HWaddr 00:0c:29:68:22:33  
              inet addr:192.168.1.100  Bcast:192.168.1.255  Mask:255.255.255.0
    
  • ip 命令提供了更强大的网络配置和查看功能:

    $ ip addr
    2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
        inet 192.168.1.100/24 brd 192.168.1.255 scope global dynamic eth0
    
2. netstatss —— 查看网络连接状态
  • netstat 命令用于查看网络连接、路由表、接口状态等信息:

    $ netstat -tuln
    Active Internet connections (only servers)
    Proto Recv-Q Send-Q Local Address           Foreign Address         State       
    tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN     
    udp        0      0 0.0.0.0:123             0.0.0.0:*                          
    
  • ss 命令是 netstat 的替代工具,执行速度更快:

    $ ss -tuln
    Netid  State      Recv-Q Send-Q        Local Address:Port          Peer Address:Port 
    tcp    LISTEN     0      128                       *:80                       *:*     
    udp    UNCONN     0      0                         *:123                      *:*     
    
3. ping —— 测试网络连通性

ping

令用于测试本机与目标 IP 地址之间的连通性,通常用来判断网络是否正常。

$ ping google.com
PING google.com (142.250.190.78) 56(84) bytes of data.
64 bytes from ord37s34-in-f14.1e100.net (142.250.190.78): icmp_seq=1 ttl=57 time=11.2 ms
4. traceroute —— 路由跟踪

traceroute 命令用于显示从本机到目标主机所经过的网络路径。

$ traceroute google.com
traceroute to google.com (142.250.190.78), 30 hops max, 60 byte packets
 1  192.168.1.1 (192.168.1.1)  1.231 ms  1.012 ms  1.021 ms
 2  10.250.45.1 (10.250.45.1)  3.081 ms  2.951 ms  3.066 ms

六、硬件信息查看

1. lshw —— 查看详细的硬件信息

lshw 命令列出系统的详细硬件信息,包括 CPU、内存、主板、磁盘等。

$ sudo lshw
2. lsblk —— 查看块设备信息

lsblk 命令用于显示系统中所有的块设备(如硬盘、分区等)信息。

$ lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda      8:0    0   50G  0 disk 
├─sda1   8:1    0   49G  0 part /
└─sda2   8:2    0    1G  0 part [SWAP]
3. dmidecode —— 查看 BIOS 和硬件信息

dmidecode 命令读取系统的 DMI 表,提供有关硬件组件的信息。

$ sudo dmidecode

七、总结

在 Linux 中,通过各种命令可以轻松查看和监控系统的运行状态和硬件配置。这些命令涵盖了从操作系统信息、CPU、内存到磁盘、网络的所有方面,为系统管理员和开发者提供了强大的工具来分析和维护系统。熟练掌握这些命令不仅有助于系统故障排查,还能帮助进行系统优化。


http://www.kler.cn/news/304203.html

相关文章:

  • 可测试,可维护,可移植:上位机软件分层设计的重要性
  • 【Python机器学习】循环神经网络(RNN)——审察模型内部情况
  • 警惕!尿血背后隐藏的健康危机,你不可不知的五大原因!
  • PHP 线程,进程、并发、并行 的理解
  • 大模型从失败中学习 —— 微调大模型以提升Agent性能
  • 华为云服务器的数据库部署及管理
  • Jwt、Filter、Interceptor
  • Python实现牛顿法 目录
  • JDK命令工具
  • 中学 教资 科目二
  • IOS Siri和快捷指令打开app
  • golang学习笔记14——golang性能问题的处理方法
  • 2-94 基于matlab的最佳维纳滤波器的盲解卷积算法
  • 基于微信小程序的食堂点餐预约管理系统
  • IP纯净度对跨境电商有哪些影响
  • terminator-gnome
  • 在Linux系统中如何创建一个新用户
  • STM32+ESP01连接到机智云
  • 移动应用门户实现的技术方案
  • [数据集][目标检测]岩石种类检测数据集VOC+YOLO格式4766张9类别
  • 【贪心算法】贪心算法
  • Mongodb Error: queryTxt ETIMEOUT xxxx.wwwdz.mongodb.net
  • 【运维】自动化运维工具,使用 Ansible 进行开发环境配置管理(本地/远程,brew/scoop/yum,docker/packer/openstack)
  • 【Hot100】LeetCode—75. 颜色分类
  • 算法基础-扩展欧几里得算法
  • Python知识点:如何使用Python进行Excel文件操作(OpenPyXL、Pandas)
  • 源码到class字节码的编译流程 字节码到内存的Java类加载流程
  • 【一分钟学C++】std::memory_order
  • Vue3+Django5+REST Framework开发电脑管理系统
  • 【计算机网络 - 基础问题】每日 3 题(一)