- 查后台进程
jobs -l
:查看后台中的指令和pid
jobs -r
:查看后台中运行的指令
jobs -s
:查看后台中停止的指令
tar -xzf test.tar.gz testdir &
: 在后台执行解压命令,执行完后会有提示
执行命令后加上&,表示命令在当前连接终端上执行,只要终端一断开,命令就停止了
nohup 执行命令 &
:与终端无关,即使终端断开,命令还是会在服务器后台运行 - 查看进程-ps
ps -l
:查看当前登录用户的进程
ps aux
:查看整个系统中的进程
ps -l
中各项表示的意思
[root@localhost home]# ps -l
F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD
0 T 0 57587 97974 0 80 0 - 31547 do_sig pts/2 00:00:00 vi
0 R 0 81337 97974 0 80 0 - 38302 - pts/2 00:00:00 ps
4 S 0 97974 97959 0 80 0 - 28885 do_wai pts/2 00:00:00 bash
列 | 意义 |
---|---|
F | process flags,说明进程的权限,4表示root权限,1表示此子进程仅进行复制而没有实际执行 |
S | 进程状态,R表示正在运行(running),S:表示睡眠状态(sleep),但可被唤醒,D表示不可被唤醒的睡眠状态,T表示停止状态,Z表示僵尸状态,进程已被终止但无法被移除到内存外 |
UID | 进程所属组的id |
PID/PPID | 进程ID/父进程ID |
C | cpu占用百分比 |
PRI/NI | priority/nice,优先级,值越少优先级越高 |
ADDR | 进程在内存哪个部分,running进程一般显示【-】 |
SZ | 进程用掉的内存 |
WCHAN | 目前进程是否运作中,若是【-】表示在运行中 |
TTY | 登陆者终端 |
TIME | 进程实际花费CPU运作的时间 |
CMD | 执行的指令 |
ps aux
中各项表示的意思,其余字段意思同ps-l
[root@localhost home]# ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 193720 5664 ? Ss Jan03 20:47 /usr/lib/systemd/systemd --switched-root --system --deserialize 22
root 2 0.0 0.0 0 0 ? S Jan03 0:00 [kthreadd]
…………
列 | 意义 |
---|---|
USER | 进程所属账户 |
%CPU | cpu使用率 |
%MEM | 内存使用率 |
VSZ | 进程所使用的虚拟内存 |
RSS | 进程所使用的固定内存 |
STAT | 同ps -l中的S列 |
START | 进程启动的时间 |
3.查看进程树
ps axjf
进程树展示
pstree -A
:系统上所有进程的相关性(pstree命令需要进行安装yum -y install psmisc)
pstree -Aup
:系统上所有进程的相关性并且显示pid和user
[root@localhost home]# pstree -A
systemd-+-Cc7nCfs6-+-sh---bash---curl
| `-{Cc7nCfs6}
|-NetworkManager---2*[{NetworkManager}] #NetworkManager有两个子进程
|-agetty
|-auditd---{auditd}
|-chronyd
|-collectd---10*[{collectd}]
|-collectd_export---14*[{collectd_export}]
|-dbus-daemon---{dbus-daemon}
|-irqbalance
|-java---217*[{java}]
……
- free查看内存使用情况
free -m
/free -g
:以MB/GB单位来查看内存使用情况
free -h
:以易读的方式展现
[root@localhost home]# free -h
total used free shared buff/cache available
Mem: 31G 15G 1.2G 207M 14G 15G
Swap: 6.0G 293M 5.7G
- 查看磁盘使用情况
df -h
:以易读读方式显示整个磁盘使用情况
df -h /dir
:以易读方式显示某个目录可用容量
du -sh /home/*
:以易读方式显示home目录下各目录的大小
[root@localhost home]# du -sh /home/*
24K /home/es
30M /home/nginx-1.16.0
1012K /home/nginx-1.16.0.tar.gz
4.0K /home/test2.tar.gz
4.0K /home/testdir
4.0K /home/test.tar.gz
2.2G /home/tomcat
12K /home/zd
- 查看端口占用情况
netstat -ntulp
:查看系统上已在监听的服务和端口
[root@localhost home]# netstat -ntlup
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:5005 0.0.0.0:* LISTEN 16000/java
……
- 查看系统资源使用情况–top
top -d 3
:每隔3秒显示top信息
top -d 3 -p pid
:每隔3秒显示具体某一pid的top信息
top命令下的操作:
按数字键【1】:可以查看各个CPU的负载
按下【P】:按cpu使用率排序
按下【M】:按内存使用率排序
按下【R】:按当前排序的倒序排
top命令中各项表示意义
[root@localhost home]# top
top - 22:20:32 up 64 days, 6:32, 5 users, load average: 0.09, 0.17, 0.16
Tasks: 188 total, 1 running, 186 sleeping, 1 stopped, 0 zombie
%Cpu(s): 0.5 us, 0.2 sy, 0.0 ni, 99.0 id, 0.3 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 24507832 total, 187812 free, 23450832 used, 869188 buff/cache
KiB Swap: 8257532 total, 3887912 free, 4369620 used. 279816 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
47248 root 20 0 7237116 1.019g 6920 S 1.0 4.4 100:06.40 java
……
第一行中的load average:系统在1、5、15分钟的平均负载,越小表示越闲置,高于1则系统进程可能太过频繁
第三行cpu%
列 | 意义 |
---|---|
us, user | time running un-niced user processes |
sy, system | time running kernel processes |
ni, nice | time running niced user processes |
id, idle | time spent in the kernel idle handler |
wa, IO-wait | time waiting for I/O completion,此值较大则可能时磁盘IO较频繁 |
hi | time spent servicing hardware interrupts |
si | time spent servicing software interrupts |
st | time stolen from this vm by the hypervisor |
第四行Mem:内存使用情况
第五行swap:swap的使用量最好为0,使用很大(20%)则预示着内存不足
- 查看系统资源–vmstat
vmstat 3
:每隔3s显示系统资源信息
vmstat -S m
:以MB单位显示
vmstat -d 3
: 每隔3s打印磁盘读写情况
vmstat各项表示的意义
[root@localhost home]# vmstat 3
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 4369548 187512 0 869760 0 1 1 25 1 0 2 1 92 5 0
……
------------procs------------
r和b分别表示等待运行中的进程数和不可被唤醒的进程数,这两个值越大表示系统越忙碌(系统太忙导致恨到进程无法被执行或者一直处于等待状态)
------------memory------------
列 | 意义 |
---|---|
swpd | the amount of virtual memory used. |
free | the amount of idle memory. |
buff | the amount of memory used as buffers. |
cache | the amount of memory used as cache. |
inact | the amount of inactive memory. (加-a参数是才显示) |
active | the amount of active memory. (加-a参数是才显示) |
------------swap------------
si: 由磁盘中将进程取出的容量
so:将没用的进程写入到磁盘的swap的容量(内存不足才会发生)
如果si/so的数字太大,表示内存内的数据常常在磁盘和主存储器间交换
------------io------------
bi: Blocks received from a block device (blocks/s).
bo: Blocks sent to a block device (blocks/s).
若这两个值越高,则代表系统的I/O非常忙碌
-------------system----------------
in: The number of interrupts per second, including the clock.
cs: The number of context switches per second.
若这两个值越大,代表系统与接口设备(磁盘、网络卡、时间钟等)的沟通非常频繁
-----------------cpu-----------------
同top命令中各项值,只是其中us的值是top命令中us+ni的值
[root@localhost home]# vmstat -d 3
disk- ------------reads------------ ------------writes----------- -----IO------
total merged sectors ms total merged sectors ms cur sec
sda 2236954 4077369 129946256 22294612 236184024 5730177 2186125301 773104104 0 851820
dm-0 1435215 0 90639038 14023003 234941317 0 2139930088 762649418 0 847931
dm-1 4904686 0 39241192 47971972 5773797 0 46190376 1393274685 0 6095
……