目录

一、查看操作系统

二、查看cpu信息

1、所有信息 lscpu

2、查看逻辑cpu的数量

3、查看物理cpu的数量

4、查看每个物理cpu的内核数

5、每个物理CPU上逻辑CPU个数

6、判断是否开启了超线程:

三、查看内存信息

1、查看内存使用情况:free -h

2、查看内存详细信息   cat /proc/meminfo

四、查看磁盘信息

1、Linux下查看硬盘及分区信息 :fdisk -l

2、查看磁盘使用情况:df -h

3、查看某个目录的大小:du -sh

4、查看某个目录下占用空间最多的文件或目录。

5、查看指定目录下的文件占用大小。

6、du命令详解


一、查看操作系统

1、查看操作系统的版本

命令:cat /etc/redhat-release 

2、查看系统内核

命令:uname –a

二、查看cpu信息

1、所有信息 lscpu

[root@tes ~]# lscpu
Architecture:          x86_64   ##cpu架构
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                4        ##总共有4核
On-line CPU(s) list:   0-3
Thread(s) per core:    2        ##每个cpu核,只能支持2个线程.
Core(s) per socket:    2        ##每个cpu,有2个核
座:                 1          ##总共有1个cpu
NUMA 节点:         1
厂商 ID:           GenuineIntel
CPU 系列:          6
型号:              85
型号名称:        Intel(R) Xeon(R) Platinum 8269CY CPU @ 2.50GHz
步进:              7
CPU MHz:             2500.004
BogoMIPS:            5000.00
超管理器厂商:  KVM
虚拟化类型:     完全
L1d 缓存:          32K
L1i 缓存:          32K
L2 缓存:           1024K
L3 缓存:           36608K
NUMA 节点0 CPU:    0-3
Flags:                 fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc eagerfpu pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm mpx avx512f avx512dq rdseed adx smap avx512cd avx512bw avx512vl xsaveopt xsavec xgetbv1 arat

2、查看逻辑cpu的数量

cat /proc/cpuinfo |grep "processor"|sort -u|wc -l

  

3、查看物理cpu的数量

grep "physical id" /proc/cpuinfo|sort -u|wc -l 

  

4、查看每个物理cpu的内核数

grep "cpu cores" /proc/cpuinfo|uniq

   

5、每个物理CPU上逻辑CPU个数

grep "siblings" /proc/cpuinfo|uniq

   

6、判断是否开启了超线程:

如果多个逻辑CPU的"physical id"和"core id"均相同,说明开启了超线程

或者换句话说

 逻辑CPU个数 > 物理CPU个数 * CPU内核数           开启了超线程

 逻辑CPU个数 = 物理CPU个数 * CPU内核数           没有开启超线程

三、查看内存信息

free命令是一个快速查看内存使用情况的方法,它是对 /proc/meminfo 收集到的信息的一个概述。

1、查看内存使用情况:free -h

-h模式下,会自动选择合适的容量单位显示。

free -m 命令会以MB形式现实内存使用情况。

free -g  命令会以GB形式现实内存使用情况。

total:内存总数;
used:已使用的内存数;
free:空闲的内存数;
shared:当前已废弃不用;
buffers:系统分配但未被使用的缓冲区;
cached:系统分配但未被使用的缓存.

(buffers和cached区别:A buffer is something that has yet to be “written” to disk. A cache is something that has been “read” from the disk and stored for later use(缓冲区还没有被写入磁盘。 缓存是从磁盘“读取”并存储以备后用的))

如何判断系统内存不足:
       如果Swap used值大于0,代表服务器物理内存已经遇到内存瓶颈了,已开始使用虚拟内存了,要么优化代码,要么加内存.

2、查看内存详细信息   cat /proc/meminfo

[root@tes ~]# cat /proc/meminfo
MemTotal:        8010192 kB
MemFree:         1024124 kB
MemAvailable:    2272804 kB
Buffers:          122808 kB
Cached:          1323100 kB
SwapCached:            0 kB
Active:          5899948 kB
Inactive:         802744 kB
Active(anon):    5257208 kB
Inactive(anon):      184 kB
Active(file):     642740 kB
Inactive(file):   802560 kB
Unevictable:           0 kB
Mlocked:               0 kB
SwapTotal:             0 kB
SwapFree:              0 kB
Dirty:               156 kB
Writeback:             0 kB
AnonPages:       5256532 kB
Mapped:            54748 kB
Shmem:               608 kB
Slab:              99832 kB
SReclaimable:      49776 kB
SUnreclaim:        50056 kB
KernelStack:       63184 kB
PageTables:        21336 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:     4005096 kB
Committed_AS:   10998256 kB
VmallocTotal:   34359738367 kB
VmallocUsed:       21476 kB
VmallocChunk:   34359707388 kB
HardwareCorrupted:     0 kB
AnonHugePages:   4157440 kB
HugePages_Total:       0
HugePages_Free:        0
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB
DirectMap4k:      276352 kB
DirectMap2M:     8112128 kB
DirectMap1G:     2097152 kB

四、查看磁盘信息

1、Linux下查看硬盘及分区信息 :fdisk -l

[root@tes ~]#  fdisk -l 

磁盘 /dev/vda:107.4 GB, 107374182400 字节,209715200 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x0008d73a

   设备 Boot      Start         End      Blocks   Id  System
/dev/vda1   *        2048   209713151   104855552   83  Linux

以上表明这是一块 100GB 的硬盘

2、查看磁盘使用情况:df -h

3、查看某个目录的大小:du -sh

du -sh : 查看当前目录总共占的容量。而不单独列出各子项占用的容量 .

du -lh --max-depth=1 : 查看当前目录下一级子文件和子目录占用的磁盘容量。

4、查看某个目录下占用空间最多的文件或目录。

命令 :du -cks * | sort -rn | head -n 10

 注意:本命令 取(占用空间最多的文件或目录的)前10个(需要先进入该目录下)。

5、查看指定目录下的文件占用大小。

命令:du -h --max-depth=2 /

注:--max-depth=n表示只深入到第n层目录,此处设置为0,即表示不深入到子目录。

6、du命令详解

du [-abcDhHklmsSx] [-L <符号连接>][-X <文件>][--block-size][--exclude=<目录或文件>] [--max-depth=<目录层数>][--help][--version][目录或文件]
常用参数:
-a或-all 为每个指定文件显示磁盘使用情况,或者为目录中每个文件显示各自磁盘使用情况。
-b或-bytes 显示目录或文件大小时,以byte为单位。
-c或–total 除了显示目录或文件的大小外,同时也显示所有目录或文件的总和。
-D或–dereference-args 显示指定符号连接的源文件大小。
-h或–human-readable 以K,M,G为单位,提高信息的可读性。
-H或–si 与-h参数相同,但是K,M,G是以1000为换算单位,而不是以1024为换算单位。
-k或–kilobytes 以1024 bytes为单位。
-l或–count-links 重复计算硬件连接的文件。
-L<符号连接>或–dereference<符号连接> 显示选项中所指定符号连接的源文件大小。
-m或–megabytes 以1MB为单位。
-s或–summarize 仅显示总计,即当前目录的大小。
-S或–separate-dirs 显示每个目录的大小时,并不含其子目录的大小。
-x或–one-file-xystem 以一开始处理时的文件系统为准,若遇上其它不同的文件系统目录则略过。
-X<文件>或–exclude-from=<文件> 在<文件>指定目录或文件。
–exclude=<目录或文件> 略过指定的目录或文件。
–max-depth=<目录层数> 超过指定层数的目录后,予以忽略。
–help 显示帮助。
–version 显示版本信息。

1> 要显示一个目录树及其每个子树的磁盘使用情况
du /home/linux
这在/home/linux目录及其每个子目录中显示了磁盘块数。
2> 要通过以1024字节为单位显示一个目录树及其每个子树的磁盘使用情况
du -k /home/linux
这在/home/linux目录及其每个子目录中显示了 1024 字节磁盘块数。
3> 以MB为单位显示一个目录树及其每个子树的磁盘使用情况
du -m /home/linux
这在/home/linux目录及其每个子目录中显示了 MB 磁盘块数。
4> 以GB为单位显示一个目录树及其每个子树的磁盘使用情况
du -g /home/linux
这在/home/linux目录及其每个子目录中显示了 GB 磁盘块数。
5>查看当前目录下所有目录以及子目录的大小:
du -h .
“.”代表当前目录下。也可以换成一个明确的路径
-h表示用K、M、G的人性化形式显示
6>查看当前目录下user目录的大小,并不想看其他目录以及其子目录:
du -sh user
-s表示总结的意思,即只列出一个总结的值
du -h --max-depth=0 user
--max-depth=n表示只深入到第n层目录,此处设置为0,即表示不深入到子目录。
7>列出user目录及其子目录下所有目录和文件的大小:
du -ah user
-a表示包括目录和文件
8>列出当前目录中的目录名不包括xyz字符串的目录的大小:
du -h --exclude='*xyz*'
9>想在一个屏幕下列出更多的关于user目录及子目录大小的信息:
du -0h user
-0(杠零)表示每列出一个目录的信息,不换行,而是直接输出下一个目录的信息。
10>只显示一个目录树的全部磁盘使用情况
du -s /home/linux

11>查看各文件夹大小:du -h --max-depth=1
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐