linux系统管理 --- 进程查看 | 终止进程 | 工作管理 | 系统资源查看 | 系统定时任务

进程管理的作用

查看系统中所有进程,使用BSD操作系统格式
 

# ps aux  

查看系统中所有进程,使用linux标准命令格式

# ps -le 

ps aux格式

[root@hanchao ~]# ps aux
USER        PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root          1  5.3  0.3  43384  3728 ?        Ss   07:26   0:01 /usr/lib/systemd/systemd --switched-root --system --deserialize 22
root          2  0.0  0.0      0     0 ?        S    07:26   0:00 [kthreadd]
root          3  0.1  0.0      0     0 ?        S    07:26   0:00 [ksoftirqd/0]
root          4  0.0  0.0      0     0 ?        S    07:26   0:00 [kworker/0:0]
root          5  0.0  0.0      0     0 ?        S<   07:26   0:00 [kworker/0:0H]
USER 该进程是由哪个用户产生
PID 该进程的ID号
%CPU 该进程占用cpu资源的百分比
%MEM 该进程占用物理内存的百分比
VSZ 该进程占用虚拟内存大小,单位KB
RSS 该进程占用实际物理内存的大小,单位KB
TTY 该进程是在哪个终端中运行。其中tty1-tty7代表本地控制台终端,tty1-tty6是本地的字符界面终端,tty7是图形终端,pts/0-256代表虚拟终端
STAT 进程的状态。常见的状态有:R运行、S睡眠、T停止状态、s包含子进程、+位于后台
START 该进程的启动时间
TIME 该进程占用CPU的运算时间,注意不是系统时间
COMMAND 产生此进程的命令名

TOP命令

top - 07:27:10 up 0 min,  1 user,  load average: 0.74, 0.28, 0.10
Tasks: 113 total,   1 running, 112 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.0 us,  0.0 sy,  0.0 ni,100.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :   997956 total,   760304 free,   102712 used,   134940 buff/cache
KiB Swap:  2097148 total,  2097148 free,        0 used.   740088 avail Mem 

   PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND                                                                                                                                    
     1 root      20   0  125312   3808   2568 S  0.0  0.4   0:01.15 systemd                                                                                                                                    
     2 root      20   0       0      0      0 S  0.0  0.0   0:00.00 kthreadd                                                                                                                                   
     3 root      20   0       0      0      0 S  0.0  0.0   0:00.04 ksoftirqd/0 
第一行信息
内容 说明
07:27:10 系统当前时间
up 0 min 系统的运行时间,本机已经运行了不到1min
1 user 当前登陆了两个用户
load average:0.00,0.00,0.00 系统在之前1分钟、5分钟、15分钟的平均负载,一般认为小于1,负载较小,如果大于1,系统已超出负荷
第二行为进程信息
内容 说明
Tasks:113 Total 系统中的进程总数
1 running 正在运行状态的进程数
112 sleeping 睡眠的进程数
0 stopped 正在停止的进程
0 zombie 僵尸进程。如果不是0,需要手工检查僵尸进程
第三行为CPU信息
内容 说明
Cpu(s):0.1%us 用户模式占用的CPU百分比
0.1%sy 系统模式占用的CPU百分比
0.0%ni 改变过优先级的用户进程占用的CPU百分比
99.7%id 空闲CPU的CPU百分比
0.1%wa 等待输入/输出的进程占用的CPU百分比
0.0%hi 硬中断请求服务占用的CPU百分比
0.1%si 软中断请求服务占用的CPU百分比
0.0%st st虚拟时间百分比。就是当有虚拟机时,虚拟CPU等待时间CPU的时间百分比

5、查看进程树

安装pstree
[root@localhost ~]# yum install psmisc

[root@localhost ~]# pstree [选项]
选项:
	-p:	显示进程的PID
	-u:	显示进程的所属用户

#################################################################################

终止进程

1、kill命令
 

kill命令信号
信号代号 信号名称 说明
1(常用) SIGHUP 该信号让进程立即关闭,然后重新读取配置文件之后重启
2 SIGINT 程序终止信号,用于终止前台进程。相当于输出ctrl+c快捷键
8 SIGFPE 在发生致命的算术运算错误时发出。不仅包含浮点运算错误,还包括溢出及除数为0等其他所有的算术的错误
9(常用) SIGKILL 一般用来立即结束程序的运行,本信号不能被阻塞、处理或忽略。一般用于强制终止进程
14 SIGALRM 时钟定时信号,计算的是实际的时间或时钟时间。alarm函数使用该信号
15(常用) SIGTERM 正常结束进程的信号,kill命令的默认信号,有时如果进程已经发生问题,这个信号是无法正常终止进程的,我们才会尝试SIGKILL信号,也就是信号9
18 SIGCONT 该信号可以让暂停的进程恢复执行,本信号不能被阻断
19 SIGSTOP 该信号可以暂停前台进程,相当于输入ctrl+z快捷键。本信号不能被阻断

重启进程

[root@localhost ~]# kill l pid 

正常结束进程

kill 15 pid   #默认kill pid就是调用的15信号

强制杀死进程

[root@localhost ~]# kill 9 pid

2、killall命令

# killall [选项] [信号] 进程名

扫描二维码关注公众号,回复: 3007054 查看本文章

#按照进程名杀死进程
选项:
-i:    交互式询问是否要杀死某个进程
-I:    忽略进程名的大小写

[root@localhost ~]# killall 9 httpd

3、pkill命令

# pkill [选项][信号] 进程名
#按照进程名终止进程
选项:
-t:        按照终端号踢出用户

[root@localhost ~]# pkill -t pts/0

4、把进程放入后台

把执行的命令之后加上 & 符号
# tar -zcf etc.tar.gz /etc &    后台运行

5、查看后台的工作

[root@localhost ~]# jobs [选项]
选项:
-l:    显示工作的PID
注:'+'号代表最近一个放入后台的工作,也是工作恢复时,默认恢复的工作,'-'号代表倒数第二个放入后台的工作

6、将后台暂停的工作恢复到前台执行
[root@localhost ~]# fg %工作号
参数:
%工作号      %号可以省略,但是注意工作号和PID的区别

7、将后台暂停工作恢复到后台执行


[root@localhost ~]# bg %工作号
参数:
%工作号      %号可以省略,但是注意工作号和PID的区别
注:后台恢复执行的命令,不能和前台有交互,否则不能恢复到后台执行

#################################################################################################

1、vmstat命令监控系统资源

# vmstat [刷新延时 刷新次数]

[root@localhost ~]# vmstat 1 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 761632   2092 133752    0    0    52     6   74  134  0  0 99  0  0
 0  0      0 761632   2092 133784    0    0     0     0   53   55  0  0 100  0  0
 0  0      0 761632   2092 133784    0    0     0     0   46   40  0  1 99  0  0

 2、dmesg开机时内核检测信息

[root@localhost ~]# dmesg

[root@localhost ~]# dmesg | grep CPU

3、free命令查看内存使用状态

[root@localhost ~]# free [-b|-k|-m|-g]
选项:
-b:以字节为单位显示
-k:以KB为单位先似乎,默认就时以KB单位显示
-m:以MB为单位显示
-g:以GB为单位显示

缓存和缓冲的区别

缓存是用来加速数据从硬盘中读取的,
缓冲是用来加速数据写入硬盘的

4、查看CPU信息

[root@localhost ~]# cat /proc/cpuinfo
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 60
model name      : Intel(R) Xeon(R) CPU E3-1230 v3 @ 3.30GHz
stepping        : 3
microcode       : 0x22
cpu MHz         : 3300.007
cache size      : 8192 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 pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable 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 fsgsbase tsc_adjust bmi1 avx2 smep bmi2 invpcid xsaveopt arat
bogomips        : 6600.01
clflush size    : 64
cache_alignment : 64
address sizes   : 43 bits physical, 48 bits virtual
power management:

5、查看系统与内核相关的信息

# uname [选项]
选项:
-a        查看系统所有相关信息
-r        查看内核版本
-s        查看内核名称

6、判断当前系统的位数

[root@localhost ~]# file /bin/ls
/bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=c5ad78cfc1de12b9bb6829207cececb990b3e987, stripped

7、列出进程打开或使用的文件信息

# lsof [选项]
#列出进程调用或打开的文件的信息
选项:
-c 字符串           只列出以字符串开头的进程打开的文件
-u 用户名            只列出某个用户的进程打开的文件
-p pid                列出某个PID进程打开的文件

###################################################################################################

crontab星号的含义
项目 含义 范围
第一个* 一小时当中的第几分钟 0-59
第二个* 一天当中的第几个小时 0-23
第三个* 一个月当中的第几天 1-31
第四个* 一年当中的第几个月 1-12
第五个* 一周当中的星期几 0-7(0和7都代表星期日)
例子
格式 含义
45 22 * * * 命令 在每天22点45分执行命令
0 17 * * 1 命令 每周一的17点0分执行命令
0 5 1,15 * * 命令 每月1号和15号凌晨5点0分执行命令
40 4 * * 1-5 命令 每周一到周五的凌晨4点40分执行命令
*/10 4 * * * 命令 每天的凌晨4点,每隔10分钟执行一次命令
0 0 1,15 * 1 命令 每月1号和15号,每周1的0点0分都会执行的命令。
* 17 * * 1 命令 每周一的17点每分钟执行一次(注:这个是示例)
特殊符号 含义
* 代表任何时间。比如第一个*就代表1小时中每分钟都执行一次的意思
, 代表不连续的时间。比如"0 8,12,16 * * * * 命令",就代表在每天的8点0分,12点0分,16点0分都执行一次的命令
- 代表连续的时间范围。比如"0 5 * * 1-6 命令",代表在周一到周六的凌晨5点0分执行命令
*/n 代表每隔多久执行一次。比如"*/10 * * * * 命令",代表每隔10分钟就执行一次命令

猜你喜欢

转载自blog.csdn.net/qq_28710983/article/details/81814216