linux网络命令

1.ps

#ps(process status),用来查看当前运行的进程状态,一次性查看,如果需要动态连续结果使用top
# linux上进程有5种状态:
#1. 运行(正在运行或在运行队列中等待)
#2. 中断(休眠中, 受阻, 在等待某个条件的形成或接受到信号)
#3. 不可中断(收到信号不唤醒和不可运行, 进程必须等待直到有中断发生)
#4. 僵死(进程已终止, 但进程描述符存在, 直到父进程调用wait4()系统调用后释放)
#5. 停止(进程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信号后停止运行运行)
#ps工具标识进程的5种状态码:
#D 不可中断 uninterruptible sleep (usually IO)
#R 运行 runnable (on run queue)
#S 中断 sleeping
#T 停止 traced or stopped
#Z 僵死 a defunct (”zombie”) process
#命令参数:
-A #显示所有进程
a  #显示所有进程
-a #显示同一终端下所有进程
c  #显示进程真实名称
e  #显示环境变量
f  #显示进程间的关系
r  #显示当前终端运行的进程
-aux #显示所有包含其它使用的进程

#显示当前所有进程环境变量及进程间关系
sunruize02@ubuntu:~/testLinux/x$ ps -ef | head -n 3
#用户		进程ID	父进程ID  CPU占用  系统时间  终端名称			进程执行时间 命令名
UID         PID   PPID   C	 		STIME 	TTY          TIME CMD
root          1      0   0 	 		Mar24 	?        00:00:07 /sbin/init auto noprompt
root          2      0   0 	 		Mar24 	?        00:00:00 [kthreadd]

#与grep联用查看指定进程
ps -aux | grep apache

2.uptime

这个命令可以快速查看机器的负载情况。在 Linux 系统中,这些数据表示等待 CPU 资源的进程和阻塞在不可中断 IO 进程(进程状态为 D)的数量。这些数据可以让我们对系统资源使用有一个宏观的了解。

命令的输出分别表示 1 分钟、5 分钟、15 分钟的平均负载情况。通过这三个数据,可以了解服务器负载是在趋于紧张还是趋于缓解。

  • 如果 1 分钟平均负载很高,而 15 分钟平均负载很低,说明服务器正在命令高负载情况,需要进一步排查 CPU 资源都消耗在了哪里。
  • 反之,如果 15 分钟平均负载很高,1 分钟平均负载较低,则有可能是 CPU 资源紧张时刻已经过去。
  • 上面例子中的输出,可以看见最近 1 分钟的平均负载非常高,且远高于最近 15 分钟负载,因此我们需要继续排查当前系统中有什么进程消耗了大量的资源。可以通过下文将会介绍的 vmstat、mpstat 等命令进一步排查。
[root@LinServ-1 ~]# uptime -V    #显示uptime命令版本信息
procps version 3.2.7

[root@LinServ-1 ~]# uptime
 15:31:30 up 127 days,  3:00,  1 user,  load average: 0.00, 0.00, 0.00
  
15:31:30             //系统当前时间
up 127 days,  3:00   //主机已运行时间,时间越大,说明你的机器越稳定。
1 user               //用户连接数,是总连接数而不是用户数
load average: 0.00, 0.00, 0.00         // 系统平均负载,统计最近1,5,15分钟的系统平均负载

3.dmesg --查看系统日志

dmesg | tail     //该命令会输出系统日志的最后 10 行。

4.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    780 152348 130108 802164    0    0     7     6   34   89  1  0 99  0  0


#procs
# r:表示运行队列中的进程数,这个值如果长期大于系统CPU个数,说明CPU不足,需要增加CPU
# b:等待资源的进程数
#memory
#swpd:表示切换到内存交换区的内存大小,即虚拟内存已使用的大小(单位KB),如果大于0,表示你的机器物理内存不足,如果不是程序内存泄露的原因,那么该升级内存或者把耗内存的任务迁移到其他机器。
#free:空闲物理内存大小
#buff:用作缓冲的内存大小
#cache:用作缓存的内存大小
#swap
#si:每秒从交换区写到内存的大小
#so:每秒写入交换区的内存大小
#io  (现在的Linux版本块的大小为1024bytes)
#bi:每秒读取的块数
#bo:每秒写入的块数
#system
#in:每秒中断数,包括时钟中断。【interrupt】
#cs:每秒上下文切换数。
#CPU
#us:用户进程执行时间(user time)
#sy:系统进程执行时间(system time)
#id:空闲时间(包括IO等待时间),中央处理器的空闲时间 。以百分比表示。
#wa:等待IO时间

5.top --显示当前系统正在执行的进程的相关信息

top - 03:07:57 up 1 day,  3:02,  1 user,  load average: 0.00, 0.00, 0.00
# top命令-当前时间3:07:57,已运行1天3小时,当前1个用户,系统平均负载:前1分钟,前5分钟,前15分钟

Tasks: 242 total,   2 running, 233 sleeping,   7 stopped,   0 zombie
#进程数:一共242个进程数,2个进程正在运行,233个睡眠进程,7个终止进程,0个冻结进程

%Cpu(s):  4.1 us,  2.1 sy,  0.0 ni, 93.8 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
#CPU占用率:用户进程占用4.1%,系统内核进程占用2.1%,用户进程空间内改变优先级进程占用0.0%
#空闲进程占用93.8%,IO等待占用0.0%,硬中断占用CPU0.0%,软中断占用0.0%
MiB Mem :   1969.8 total,     87.8 free,    920.0 used,    962.0 buff/cache
#物理内存:总量1969.8,空闲物理内存87.8,已使用920,用作缓存的内存962    (1MiB = 2^20 bytes)

MiB Swap:    947.2 total,    947.0 free,      0.3 used.    859.2 avail Mem 
#交换区:总量947.2,空闲交换区总量947,已使用交换区0.3,可用交换区总量859.2

PID   USER      PR  NI                   VIRT               RES                         SHR          S       %CPU      %MEM      TIME+ COMMAND  
#进程号 用户  优先级 nice值(越高优先级越低)  占用虚拟内存总量  进程使用的,未被换出的物理内存总量  共享内存大小 进程状态   CPU占用率 内存占用率 从运行开始占用CPU时长 命令名  
1492 sunruiz+  20   0 2676108 190048  86588 S   2.3   9.4   9:20.98 gnome-s+

6.free --查看系统内存的使用情况

#命令参数:
-b #以Byte显示内存使用情况
-k #以kb为单位显示内存使用情况
-m #以mb为单位显示内存使用情况
-g #以gb为单位显示内存使用情况
-s<间隔秒数> #持续显示内存
-t #显示内存使用总合

sunruize02@ubuntu:~/testLinux/x$ free
							总量					已使用				空闲				共享			缓冲区				可用
              total        used        free      shared  buff/cache   available
#内存
Mem:        2017100      924152      165364        7712      927584      897680
#交换区
Swap:        969960         780      969180
sunruize02@ubuntu:~/testLinux/x$ free -h
              total        used        free      shared  buff/cache   available
Mem:          1.9Gi       902Mi       161Mi       7.0Mi       905Mi       876Mi
Swap:         947Mi       0.0Ki       946Mi

7.netstat --查看网络状态

#常用选项 
-a #显示所有socket,包括正在监听的
-l #显示有在 Listen (监听) 的服务状态
-n #以网络IP地址代替名称,显示网络连接情形
-p #显示建立相关连接的程序名和PID
-t #显示TCP协议的连接情况
-u #显示UDP协议的连接情况

netstat -at #列出所有TCP连接
netstat -au #列出所有UDP连接
netstat -lnp #查看系统都开启了哪些端口
netstat -an #查看网络连接状况

你可能感兴趣的:(linux)