您的位置:

Linux查看系统信息

一、CPU信息

Linux系统下,查看CPU的信息最常用的命令是lscpu。该命令可以显示CPU架构、核心数量、线程数、缓存大小、CPU频率等信息。例如:

lscpu

该命令会输出类似以下的信息:

Architecture:        x86_64
CPU op-mode(s):      32-bit, 64-bit
Byte Order:          Little Endian
CPU(s):              4
On-line CPU(s) list: 0-3
Thread(s) per core:  2
Core(s) per socket:  2
Socket(s):           1
Vendor ID:           GenuineIntel
CPU family:          6
Model:               78
Model name:          Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz
Stepping:            3
CPU MHz:             2700.000
CPU max MHz:         2800.0000
CPU min MHz:         400.0000
BogoMIPS:            4608.00
Virtualization:      VT-x
L1d cache:           32K
L1i cache:           32K
L2 cache:            256K
L3 cache:            3072K

通过lscpu可以清楚地了解CPU的型号、架构、核数、线程数、缓存大小等相关信息,这对于诊断系统性能瓶颈和优化系统性能非常有帮助。

二、内存信息

Linux系统下查看系统内存信息的命令很多,比较常用的命令有free、top和vmstat。其中,free命令可以用于查看系统的内存总量、已用内存、可用内存等信息。例如:

free -m

该命令会输出类似以下的信息:

             total       used       free     shared    buffers     cached
Mem:           3959       2501       1458        281         65       1050
-/+ buffers/cache:       1386       2572
Swap:          4095          0       4095

该命令输出的是内存的总容量、已用的容量、空闲的容量、共享的内存、缓存和已缓存的内存等信息。

top和vmstat命令可以实时显示内存的使用情况、缓存和交换分区的使用情况、进程的内存使用情况等信息。

三、硬盘信息

Linux系统下查看硬盘信息的命令主要是fdisk、df和du。

fdisk命令可以查看磁盘的分区情况。该命令需要root权限才能使用。例如:

sudo fdisk -l

该命令会输出类似以下的信息:

Disk /dev/sda: 931.5 GiB, 1000204886016 bytes, 1953525168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: dos
Disk identifier: 0x00000000

Device     Boot    Start        End    Sectors   Size Id Type
/dev/sda1          2048 1921180159 1921178112 915.8G 83 Linux
/dev/sda2    1921182206 1953523711  32381506  15.5G 5 Extended
/dev/sda5    1921182208 1953523711  32381504  15.5G 82 Linux swap / Solaris

上述输出结果中,设备/dev/sda是指的是磁盘分区的设备名, 931.5 GiB, 1000204886016 bytes是指的是磁盘总大小。

df命令可以查看系统挂载的文件系统的信息,包括已使用的空间以及剩余空间等信息。例如:

df -h

该命令会输出类似以下的信息:

Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/fedora-root   45G  7.2G   35G  18% /
devtmpfs                 1.9G     0  1.9G   0% /dev
tmpfs                    1.9G  1.1M  1.9G   1% /dev/shm
tmpfs                    1.9G  1.5M  1.9G   1% /run
tmpfs                    1.9G     0  1.9G   0% /sys/fs/cgroup
/dev/sda1                976M  161M  749M  18% /boot

du命令可以用来查看指定文件或目录所占用的磁盘空间。

例如:

du -h /var/log

该命令会输出类似以下的信息:

4.0K	/var/log/tallylog
0	/var/log/gdm
4.0K	/var/log/lastlog
16K	/var/log/sa
16K	/var/log/audit
1.7M	/var/log/cups
10M	/var/log/zhcon
4.3M	/var/log/rpmpkgs
36K	/var/log/httpd
2.2M	/var/log/faillock
15M	/var/log

上述命令输出结果中,使用-k选项可以按照KB单位显示每个目录或文件所占用的空间。

四、进程和服务信息

在Linux系统下,我们可以通过ps、top和systemctl等命令来查看系统的进程和服务信息。

ps命令可以查看当前所有进程的信息,包括进程的PID、状态、运行时间、命令等信息。例如:

ps aux

该命令会输出所有进程的详细信息,可以通过grep命令进行筛选。

top命令可以实时显示当前正在运行的进程的情况,包括进程的状态、CPU使用率、内存使用情况等信息。

systemctl可以查看系统的服务信息,包括服务的状态、启动方式、运行时间等信息。

例如:

systemctl status sshd.service

该命令可以查看sshd服务的运行状态。

五、其他信息

Linux系统下还有许多其他命令可以查看各种系统信息,例如:

uname命令可以查看系统内核的版本信息。

例如:

uname -a

该命令可以输出如下信息:

Linux localhost.localdomain 4.16.3-301.fc28.x86_64 #1 SMP Fri Apr 20 14:12:37 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

iostat命令可以查看磁盘I/O的情况,包括读写速度、IOPS等信息。

例如:

iostat -x

该命令可以输出类似以下的信息:

Linux 4.16.3-301.fc28.x86_64 (localhost.localdomain) 	05/08/2018	_x86_64_	(4 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           2.99    0.00    0.98    0.14    0.00   95.89

Device:   rrqm/s wrqm/s   r/s   w/s    rMB/s    wMB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
sda        0.09    3.16   1.14  1.90     0.02     0.03    28.94     0.03   11.47   37.07    1.19    1.84   0.54

sar命令可以查看系统的历史负载信息。例如:

sar -q

该命令可以输出CPU和负载的历史信息,例如:

Linux 4.16.3-301.fc28.x86_64 (localhost.localdomain) 	05/08/2018	_x86_64_	(4 CPU)

11:05:01 PM   runq-sz  plist-sz   ldavg-1   ldavg-5  ldavg-15   blocked
11:15:01 PM         0       570      1.07      1.21      1.31         0
11:25:01 PM         0       559      0.69      1.05      1.26         0
11:35:02 PM         0       560      0.53      0.94      1.21         0
11:45:01 PM         0       587      0.29      0.76      1.17         0
11:55:01 PM         0       582      0.14      0.55      1.11         0

总的说来,Linux系统下有很多命令可以用于查看系统信息,以上只是其中的一部分。在实际工作中,根据需要选择合适的命令来查看相关信息,对于诊断系统问题和优化系统性能都是非常有帮助的。