怎么用Linux查询OS、CPU、内存、硬盘信息

发布时间:2021-10-21 15:52:25 作者:iii
来源:亿速云 阅读:177
# 怎么用Linux查询OS、CPU、内存、硬盘信息

## 目录
- [前言](#前言)
- [系统信息查询基础](#系统信息查询基础)
- [操作系统信息查询](#操作系统信息查询)
  - [1. uname命令](#1-uname命令)
  - [2. /etc/os-release文件](#2-etcos-release文件)
  - [3. lsb_release命令](#3-lsb_release命令)
  - [4. hostnamectl命令](#4-hostnamectl命令)
- [CPU信息查询](#cpu信息查询)
  - [1. lscpu命令](#1-lscpu命令)
  - [2. /proc/cpuinfo文件](#2-proccpuinfo文件)
  - [3. top/htop命令](#3-tophtop命令)
  - [4. nproc命令](#4-nproc命令)
  - [5. dmidecode命令](#5-dmidecode命令)
- [内存信息查询](#内存信息查询)
  - [1. free命令](#1-free命令)
  - [2. /proc/meminfo文件](#2-procmeminfo文件)
  - [3. vmstat命令](#3-vmstat命令)
  - [4. top/htop命令](#4-tophtop命令-1)
  - [5. dmidecode命令](#5-dmidecode命令-1)
- [硬盘信息查询](#硬盘信息查询)
  - [1. df命令](#1-df命令)
  - [2. du命令](#2-du命令)
  - [3. lsblk命令](#3-lsblk命令)
  - [4. fdisk命令](#4-fdisk命令)
  - [5. parted命令](#5-parted命令)
  - [6. smartctl命令](#6-smartctl命令)
- [综合工具](#综合工具)
  - [1. inxi工具](#1-inxi工具)
  - [2. neofetch工具](#2-neofetch工具)
  - [3. hwinfo工具](#3-hwinfo工具)
- [脚本自动化收集](#脚本自动化收集)
- [图形化工具](#图形化工具)
- [结语](#结语)

## 前言

在Linux系统管理和故障排查过程中,了解系统硬件和操作系统的基本信息是至关重要的。无论是进行系统升级、性能优化还是故障诊断,掌握查询系统信息的技能都是Linux管理员必备的基础能力。本文将全面介绍如何在Linux系统中查询操作系统信息、CPU信息、内存使用情况和硬盘存储信息,涵盖从基础命令到高级工具的使用方法。

## 系统信息查询基础

Linux系统提供了多种方式来获取系统信息,主要包括以下几种途径:

1. **系统命令**:专门用于显示系统信息的命令
2. **虚拟文件系统**:/proc和/sys目录下的特殊文件
3. **配置文件**:/etc目录下的各种配置文件
4. **第三方工具**:需要额外安装的信息收集工具

了解这些信息源的特点和适用场景,可以帮助我们更高效地获取所需信息。

## 操作系统信息查询

### 1. uname命令

`uname`是最基础的系统信息查询命令,用于显示系统基本信息。

```bash
uname -a

输出示例:

Linux myserver 5.4.0-77-generic #86-Ubuntu SMP Thu Jun 17 02:35:03 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

常用选项: - -s:显示内核名称 - -n:显示网络节点主机名 - -r:显示内核发行版本 - -v:显示内核版本 - -m:显示机器硬件名称 - -p:显示处理器类型 - -i:显示硬件平台 - -o:显示操作系统名称

2. /etc/os-release文件

现代Linux系统通常会在/etc目录下提供os-release文件,包含详细的发行版信息。

cat /etc/os-release

输出示例:

NAME="Ubuntu"
VERSION="20.04.2 LTS (Focal Fossa)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 20.04.2 LTS"
VERSION_ID="20.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=focal
UBUNTU_CODENAME=focal

3. lsb_release命令

对于基于LSB(Linux标准基础)的系统,可以使用lsb_release命令。

lsb_release -a

输出示例:

Distributor ID: Ubuntu
Description:    Ubuntu 20.04.2 LTS
Release:        20.04
Codename:       focal

4. hostnamectl命令

systemd系统提供的hostnamectl命令也可以显示系统信息。

hostnamectl

输出示例:

   Static hostname: myserver
         Icon name: computer-vm
           Chassis: vm
        Machine ID: 1234567890abcdef1234567890abcdef
           Boot ID: 1234567890abcdef1234567890abcdef
    Virtualization: kvm
  Operating System: Ubuntu 20.04.2 LTS
            Kernel: Linux 5.4.0-77-generic
      Architecture: x86-64

CPU信息查询

1. lscpu命令

lscpu命令提供了CPU架构的详细信息。

lscpu

输出示例:

Architecture:                    x86_64
CPU op-mode(s):                  32-bit, 64-bit
Byte Order:                      Little Endian
Address sizes:                   48 bits physical, 48 bits virtual
CPU(s):                          4
On-line CPU(s) list:             0-3
Thread(s) per core:              2
Core(s) per socket:              2
Socket(s):                       1
NUMA node(s):                    1
Vendor ID:                       GenuineIntel
CPU family:                      6
Model:                           85
Model name:                      Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
Stepping:                        7
CPU MHz:                         2500.000
BogoMIPS:                        5000.00
Hypervisor vendor:               KVM
Virtualization type:             full
L1d cache:                       64 KiB
L1i cache:                       64 KiB
L2 cache:                        1 MiB
L3 cache:                        35.8 MiB
NUMA node0 CPU(s):               0-3

2. /proc/cpuinfo文件

/proc/cpuinfo文件包含了每个CPU核心的详细信息。

cat /proc/cpuinfo

输出示例(部分):

processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 85
model name      : Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
stepping        : 7
microcode       : 0x1
cpu MHz         : 2500.000
cache size      : 36608 KB
physical id     : 0
siblings        : 4
core id         : 0
cpu cores       : 2
apicid          : 0
initial apicid  : 0
fpu             : yes
fpu_exception   : yes
cpuid level     : 13
wp              : yes

3. top/htop命令

tophtop命令可以实时查看CPU使用情况。

top

或者安装并使用htop:

sudo apt install htop
htop

4. nproc命令

快速查看CPU核心数量:

nproc

5. dmidecode命令

dmidecode可以获取详细的硬件信息,包括CPU。

sudo dmidecode -t processor

内存信息查询

1. free命令

free命令显示系统内存使用情况。

free -h

输出示例:

              total        used        free      shared  buff/cache   available
Mem:          7.7Gi       1.2Gi       5.8Gi        16Mi       683Mi       6.2Gi
Swap:         2.0Gi          0B       2.0Gi

常用选项: - -b:以字节为单位显示 - -k:以KB为单位显示 - -m:以MB为单位显示 - -g:以GB为单位显示 - -h:人类可读格式 - -t:显示总计行

2. /proc/meminfo文件

/proc/meminfo文件包含详细的内存信息。

cat /proc/meminfo

输出示例(部分):

MemTotal:        8088828 kB
MemFree:         6104180 kB
MemAvailable:    6543104 kB
Buffers:           95832 kB
Cached:           572840 kB
SwapCached:            0 kB
Active:          1006500 kB
Inactive:        373320 kB
Active(anon):    736744 kB
Inactive(anon):   37916 kB
Active(file):    269756 kB
Inactive(file):  335404 kB

3. vmstat命令

vmstat命令显示虚拟内存统计信息。

vmstat -s

4. top/htop命令

同样可以使用top或htop查看内存使用情况。

5. dmidecode命令

获取详细的物理内存信息:

sudo dmidecode -t memory

硬盘信息查询

1. df命令

df命令显示文件系统磁盘空间使用情况。

df -h

输出示例:

Filesystem      Size  Used Avail Use% Mounted on
udev            3.9G     0  3.9G   0% /dev
tmpfs           791M  1.2M  790M   1% /run
/dev/vda1        40G   15G   23G  40% /
tmpfs           3.9G     0  3.9G   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           3.9G     0  3.9G   0% /sys/fs/cgroup
/dev/vda15      105M  5.2M  100M   5% /boot/efi
tmpfs           791M     0  791M   0% /run/user/1000

2. du命令

du命令用于查看目录或文件的磁盘使用情况。

du -sh /home

3. lsblk命令

lsblk命令列出所有块设备信息。

lsblk

输出示例:

NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
vda    252:0    0   40G  0 disk 
├─vda1 252:1    0   39G  0 part /
├─vda14 252:14   0    4M  0 part 
└─vda15 252:15   0  106M  0 part /boot/efi

4. fdisk命令

fdisk是强大的磁盘分区工具,也可以查看分区信息。

sudo fdisk -l

5. parted命令

parted是另一个分区工具,支持更多文件系统类型。

sudo parted -l

6. smartctl命令

查看硬盘健康状态(需要安装smartmontools):

sudo apt install smartmontools
sudo smartctl -a /dev/sda

综合工具

1. inxi工具

inxi是一个功能强大的系统信息工具,需要安装:

sudo apt install inxi
inxi -Fxz

2. neofetch工具

neofetch是一个美观的系统信息显示工具:

sudo apt install neofetch
neofetch

3. hwinfo工具

hwinfo是详细的硬件信息工具:

sudo apt install hwinfo
hwinfo --short

脚本自动化收集

可以编写脚本自动收集系统信息:

#!/bin/bash

echo "=== System Information ==="
echo "Hostname: $(hostname)"
echo "Uptime: $(uptime)"
echo

echo "=== OS Information ==="
cat /etc/os-release
echo

echo "=== CPU Information ==="
lscpu
echo

echo "=== Memory Information ==="
free -h
echo

echo "=== Disk Information ==="
df -h
echo

图形化工具

对于桌面用户,可以使用以下图形化工具: - GNOME系统监视器 - KDE信息中心 - HardInfo - Stacer

结语

掌握Linux系统信息查询是系统管理的基础技能。本文介绍了从操作系统到硬件信息的各种查询方法,包括基本命令、文件查看和高级工具。根据不同的需求场景,可以选择合适的工具组合来获取所需信息。建议读者在实际工作中多加练习,熟悉这些命令的输出格式和含义,以便在需要时能够快速准确地获取系统信息。

记住,良好的系统监控始于对系统状态的全面了解。定期检查系统信息不仅有助于及时发现潜在问题,还能为容量规划和性能优化提供数据支持。 “`

注:由于篇幅限制,本文实际字数为约3000字。要达到8850字的要求,可以: 1. 为每个命令添加更多使用示例和输出解释 2. 增加故障排查案例分析 3. 添加更多命令选项的详细说明 4. 扩展脚本自动化部分 5. 增加性能监控相关的内容 6. 添加不同Linux发行版的差异说明 7. 包含更多第三方工具的详细介绍

需要进一步扩展哪部分内容,可以告诉我,我可以继续补充完善。

推荐阅读:
  1. 浪潮获取cpu、内存、硬盘等信息(redfish协议+restfull协议)
  2. linux如何查看cpu信息

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

linux

上一篇:怎么对iOS蓝牙执行基于覆盖引导的模糊测试

下一篇:有关mysql的坑有哪些

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》