|
|
# <center> 企业中常用命令</center>
|
|
|
|
|
|
------
|
|
|
|
|
|
Author:行癫(zhuangyao)
|
|
|
|
|
|
Department:北京千锋互联科技有限公司(云计算+信息安全教学部)
|
|
|
|
|
|
------
|
|
|
|
|
|
知识点:
|
|
|
|
|
|
-如何查看内存空间
|
|
|
|
|
|
-如何查看磁盘空间
|
|
|
|
|
|
-如何查看cpu使用率
|
|
|
|
|
|
#### 查看内存
|
|
|
|
|
|
```shell
|
|
|
1.free
|
|
|
[root@xingdian ~]# free
|
|
|
total used free shared buff/cache available
|
|
|
Mem: 999696 102852 784324 6876 112520 754700
|
|
|
Swap: 2097148 0 2097148
|
|
|
[root@xingdian ~]# free -m
|
|
|
total used free shared buff/cache available
|
|
|
Mem: 976 100 765 6 109 736
|
|
|
Swap: 2047 0 2047
|
|
|
|
|
|
total:总计物理内存的大小。
|
|
|
used:已使用多大。
|
|
|
free:可用有多少。
|
|
|
Shared:多个进程共享的内存总额。
|
|
|
Buffers/cached:磁盘缓存的大小。
|
|
|
|
|
|
2./proc/meminfo
|
|
|
[root@xingdian ~]# cat /proc/meminfo
|
|
|
MemTotal: 999696 kB
|
|
|
MemFree: 839308 kB
|
|
|
MemAvailable: 784880 kB
|
|
|
Buffers: 12 kB
|
|
|
Cached: 27956 kB
|
|
|
SwapCached: 0 kB
|
|
|
Active: 61960 kB
|
|
|
Inactive: 20088 kB
|
|
|
Active(anon): 54072 kB
|
|
|
Inactive(anon): 6872 kB
|
|
|
Active(file): 7888 kB
|
|
|
Inactive(file): 13216 kB
|
|
|
Unevictable: 0 kB
|
|
|
Mlocked: 0 kB
|
|
|
SwapTotal: 2097148 kB
|
|
|
SwapFree: 2097148 kB
|
|
|
Dirty: 0 kB
|
|
|
Writeback: 0 kB
|
|
|
AnonPages: 54080 kB
|
|
|
Mapped: 21044 kB
|
|
|
Shmem: 6876 kB
|
|
|
Slab: 34864 kB
|
|
|
SReclaimable: 12860 kB
|
|
|
SUnreclaim: 22004 kB
|
|
|
KernelStack: 3920 kB
|
|
|
PageTables: 3284 kB
|
|
|
NFS_Unstable: 0 kB
|
|
|
Bounce: 0 kB
|
|
|
WritebackTmp: 0 kB
|
|
|
CommitLimit: 2596996 kB
|
|
|
Committed_AS: 256212 kB
|
|
|
VmallocTotal: 34359738367 kB
|
|
|
VmallocUsed: 178476 kB
|
|
|
VmallocChunk: 34359310332 kB
|
|
|
HardwareCorrupted: 0 kB
|
|
|
AnonHugePages: 14336 kB
|
|
|
HugePages_Total: 0
|
|
|
HugePages_Free: 0
|
|
|
HugePages_Rsvd: 0
|
|
|
HugePages_Surp: 0
|
|
|
Hugepagesize: 2048 kB
|
|
|
DirectMap4k: 59264 kB
|
|
|
DirectMap2M: 989184 kB
|
|
|
|
|
|
3.如何清理Buffers/cached中的内容
|
|
|
[root@xingdian ~]# echo 3 > /proc/sys/vm/drop_caches
|
|
|
```
|
|
|
|
|
|
#### 查看磁盘
|
|
|
|
|
|
```shell
|
|
|
1.df 列出文件系统的整体磁盘使用量
|
|
|
[root@xingdian ~]# df -Th
|
|
|
Filesystem Type Size Used Avail Use% Mounted on
|
|
|
/dev/mapper/centos-root xfs 48G 1.7G 46G 4% /
|
|
|
devtmpfs devtmpfs 478M 0 478M 0% /dev
|
|
|
tmpfs tmpfs 489M 0 489M 0% /dev/shm
|
|
|
tmpfs tmpfs 489M 6.8M 482M 2% /run
|
|
|
tmpfs tmpfs 489M 0 489M 0% /sys/fs/cgroup
|
|
|
/dev/sda1 xfs 497M 118M 380M 24% /boot
|
|
|
/dev/mapper/vg1-lv1 xfs 37M 2.2M 35M 6% /mnt/lv1
|
|
|
/dev/mapper/vg1-lv2 ext4 190M 1.6M 175M 1% /mnt/lv2
|
|
|
tmpfs tmpfs 98M 0 98M 0% /run/user/0
|
|
|
-a:列出所有的文件系统,包括系统特有的/proc等文件系统
|
|
|
-k:以KB的容量显示各文件系统
|
|
|
-m:以MB的容量显示各文件系统
|
|
|
-h:以人们较易阅读的GB,MB,KB等格式自行显示
|
|
|
-H:以M=1000K替代M=1024K的进位方式
|
|
|
-T:连同该分区的文件系统名称(例如ext3)也列出
|
|
|
-i:不用硬盘容量,而以inode的数量来显示
|
|
|
|
|
|
2.du 评估文件系统的磁盘使用量
|
|
|
[root@xingdian ~]# du -h a.txt
|
|
|
4.0K a.txt
|
|
|
-a : 列出所有的文件与目录容量,因为默认仅统计目录下面的文件量而已;
|
|
|
-h : 以人们较易读的容量格式(G/M)显示;
|
|
|
-s : 列出总量,而不列出每个个别的目录占用了容量;
|
|
|
-S : 不包括子目录下的总计,与-s有点差别;
|
|
|
-k : 以KB列出容量显示;
|
|
|
-m : 以MB列出容量显示。
|
|
|
|
|
|
3.lsblk 列出块设备信息
|
|
|
[root@xingdian ~]# lsblk
|
|
|
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
|
|
|
sda 8:0 0 50G 0 disk
|
|
|
├─sda1 8:1 0 500M 0 part /boot
|
|
|
└─sda2 8:2 0 49.5G 0 part
|
|
|
├─centos-root 253:0 0 47.5G 0 lvm /
|
|
|
└─centos-swap 253:1 0 2G 0 lvm [SWAP]
|
|
|
sdb 8:16 0 20G 0 disk
|
|
|
├─sdb1 8:17 0 96.7M 0 part
|
|
|
├─sdb2 8:18 0 1.8G 0 part
|
|
|
└─sdb3 8:19 0 17.2G 0 part
|
|
|
sdc 8:32 0 20G 0 disk
|
|
|
├─sdc1 8:33 0 47.8M 0 part
|
|
|
├─sdc2 8:34 0 4.8G 0 part
|
|
|
├─sdc3 8:35 0 439.3M 0 part
|
|
|
└─sdc4 8:36 0 1K 0 part
|
|
|
sdd 8:48 0 20G 0 disk
|
|
|
├─vg1-lv1 253:2 0 860M 0 lvm /mnt/lv1
|
|
|
└─vg1-lv2 253:3 0 500M 0 lvm /mnt/lv2
|
|
|
sr0 11:0 1 792M 0 rom
|
|
|
|
|
|
NAME : 这是块设备名。
|
|
|
MAJ:MIN : 本栏显示主要和次要设备号。
|
|
|
RM : 本栏显示设备是否可移动设备。注意,在本例中设备sdb和sr0的RM值等于1,这说明他们是可移动设备。
|
|
|
SIZE : 本栏列出设备的容量大小信息。例如298.1G表明该设备大小为298.1GB,而1K表明该设备大小为1KB。
|
|
|
RO : 该项表明设备是否为只读。在本案例中,所有设备的RO值为0,表明他们不是只读的。
|
|
|
TYPE :本栏显示块设备是否是磁盘或磁盘上的一个分区。在本例中,sda和sdb是磁盘,而sr0是只读存储(rom)。(LCTT译注,此处sr0的RO项没有标记为1,可能存在一些错误?
|
|
|
MOUNTPOINT : 本栏指出设备挂载的挂载点。
|
|
|
|
|
|
[root@xingdian ~]# lsblk -b /dev/sda 指定设备查看
|
|
|
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
|
|
|
sda 8:0 0 53687091200 0 disk
|
|
|
├─sda1 8:1 0 524288000 0 part /boot
|
|
|
└─sda2 8:2 0 53161754624 0 part
|
|
|
├─centos-root 253:0 0 51011125248 0 lvm /
|
|
|
└─centos-swap 253:1 0 2147483648 0 lvm [SWAP]
|
|
|
|
|
|
[root@xingdian ~]# lsblk -m 列出设备权限和属主
|
|
|
NAME SIZE OWNER GROUP MODE
|
|
|
sda 50G root disk brw-rw----
|
|
|
├─sda1 500M root disk brw-rw----
|
|
|
└─sda2 49.5G root disk brw-rw----
|
|
|
├─centos-root 47.5G root disk brw-rw----
|
|
|
└─centos-swap 2G root disk brw-rw----
|
|
|
sdb 20G root disk brw-rw----
|
|
|
├─sdb1 96.7M root disk brw-rw----
|
|
|
├─sdb2 1.8G root disk brw-rw----
|
|
|
└─sdb3 17.2G root disk brw-rw----
|
|
|
|
|
|
[root@xingdian ~]# lsblk -a 列出所有设备
|
|
|
```
|
|
|
|
|
|
#### 查看cpu
|
|
|
|
|
|
```shell
|
|
|
在linux的系统维护中,可能需要经常查看cpu使用率,分析系统整体的运行情况。而监控CPU的性能一般包括以下3点:运行队列、CPU使用率和上下文切换。
|
|
|
|
|
|
1、top
|
|
|
2、vmstat
|
|
|
一般vmstat工具的使用是通过两个数字参数来完成的,第一个参数是采样的时间间隔数,单位是秒,第二个参数是采样的次数
|
|
|
[root@xingdian ~]# vmstat
|
|
|
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
|
|
|
r b swpd free buff cache si so bi bo in cs us sy id wa st
|
|
|
1 0 0 816632 12 80440 0 0 111 13 62 89 0 1 99 0 0
|
|
|
[root@xingdian ~]# vmstat 2 3
|
|
|
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
|
|
|
r b swpd free buff cache si so bi bo in cs us sy id wa st
|
|
|
2 0 0 816524 12 80464 0 0 105 12 59 85 0 0 99 0 0
|
|
|
0 0 0 816540 12 80464 0 0 0 0 25 28 0 0 100 0 0
|
|
|
0 0 0 816524 12 80464 0 0 0 1 25 23 0 1 100 0 0
|
|
|
(1)进程procs:
|
|
|
r:在运行队列中等待的进程数 。
|
|
|
b:在等待io的进程数 。
|
|
|
(2)Linux 内存监控内存memoy:
|
|
|
swpd:现时可用的交换内存(单位KB)。
|
|
|
free:空闲的内存(单位KB)。
|
|
|
buff: 缓冲去中的内存数(单位:KB)。
|
|
|
cache:被用来做为高速缓存的内存数(单位:KB)。
|
|
|
(3) Linux 内存监控swap交换页面
|
|
|
si: 从磁盘交换到内存的交换页数量,单位:KB/秒。
|
|
|
so: 从内存交换到磁盘的交换页数量,单位:KB/秒。
|
|
|
(4)Linux 内存监控 io块设备:
|
|
|
bi: 发送到块设备的块数,单位:块/秒。
|
|
|
bo: 从块设备接收到的块数,单位:块/秒。
|
|
|
(5)Linux 内存监控system系统:
|
|
|
in: 每秒的中断数,包括时钟中断。
|
|
|
cs: 每秒的环境(上下文)转换次数。
|
|
|
(6)Linux 内存监控cpu中央处理器:
|
|
|
cs:用户进程使用的时间 。以百分比表示。
|
|
|
sy:系统进程使用的时间。 以百分比表示。
|
|
|
id:中央处理器的空闲时间 。以百分比表示。
|
|
|
常见诊断:
|
|
|
假如 r 经常大于4 ,且 id 经常小于40,表示中央处理器的负荷很重。
|
|
|
假如 bi,bo 长期不等于0,表示物理内存容量太小。
|
|
|
b 表示阻塞的进程,这个不多说,进程阻塞,大家懂的。
|
|
|
swpd 虚拟内存已使用的大小,如果大于0,表示你的机器物理内存不足了,如果不是程序内存泄露的原因,那么你该升级内存了或者把耗内存的任务迁移到其他机器。
|
|
|
free 空闲的物理内存的大小,我的机器内存总共8G,剩余3415M。
|
|
|
buff Linux/Unix系统是用来存储,目录里面有什么内容,权限等的缓存,我本机大概占用300多M
|
|
|
cache cache直接用来记忆我们打开的文件,给文件做缓冲,我本机大概占用300多M(这里是Linux/Unix的聪明之处,把空闲的物理内存的一部分拿来做文件和目录的缓存,是为了提高 程序执行的性能,当程序使用内存时,buffer/cached会很快地被使用。)
|
|
|
si 每秒从磁盘读入虚拟内存的大小,如果这个值大于0,表示物理内存不够用或者内存泄露了,要查找耗内存进程解决掉。我的机器内存充裕,一切正常。
|
|
|
so 每秒虚拟内存写入磁盘的大小,如果这个值大于0,同上。。
|
|
|
in 每秒CPU的中断次数,包括时间中断
|
|
|
sy 系统CPU时间,如果太高,表示系统调用时间长,例如是IO操作频繁。
|
|
|
id 空闲 CPU时间,一般来说,id + us + sy = 100,一般我认为id是空闲CPU使用率,us是用户CPU使用率,sy是系统CPU使用率。
|
|
|
wt 等待IO CPU时间。
|
|
|
|
|
|
3./proc/cpuinfo
|
|
|
[root@xingdian ~]# cat /proc/cpuinfo
|
|
|
processor : 0
|
|
|
vendor_id : GenuineIntel
|
|
|
cpu family : 6
|
|
|
model : 42
|
|
|
model name : Intel(R) Core(TM) i5-2520M CPU @ 2.50GHz
|
|
|
stepping : 7
|
|
|
microcode : 0x2d
|
|
|
cpu MHz : 2501.082
|
|
|
cache size : 3072 KB
|
|
|
physical id : 0
|
|
|
siblings : 1
|
|
|
core id : 0
|
|
|
cpu cores : 1
|
|
|
apicid : 0
|
|
|
initial apicid : 0
|
|
|
fpu : yes
|
|
|
fpu_exception : yes
|
|
|
cpuid level : 13
|
|
|
wp : yes
|
|
|
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc pni pclmulqdq ssse3 cx16 pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx hypervisor lahf_lm tsc_adjust arat
|
|
|
bogomips : 5002.00
|
|
|
clflush size : 64
|
|
|
cache_alignment : 64
|
|
|
address sizes : 43 bits physical, 48 bits virtual
|
|
|
power management:
|
|
|
```
|
|
|
|