建网站优化,中山做网站专业的公司,怎么在百度做公司网站,wordpress 主题制作 functions.php首先#xff0c;先了解一下计算机五大性能的命令
cpu top w
内存 top free
硬盘剩余 df
硬盘读写性能 iostat
网络带宽 iftop 一#xff0c;进程与程序
1#xff0c;什么是程序 #xff1a;
硬盘上躺着#xff0c;执行特点任务的一串代码
2先了解一下计算机五大性能的命令
cpu top w
内存 top free
硬盘剩余 df
硬盘读写性能 iostat
网络带宽 iftop 一进程与程序
1什么是程序
硬盘上躺着执行特点任务的一串代码
2什么是进程
加载到内存中运行进程是程序的副本 程是有生命周期的程序没有
3进程特点 进程IDProcess IDPID号码被用来标记各个进程 UID、GID语境决定对文件系统的存取和访问权限 通常从执行进程的用户来继承 存在生命周期 都由其父进程创建
4进程权限的问题
基于UID、GID语境决定对文件系统的存取和访问权限
不同用户对进程的查看写执行的权限不同
生产环境中用chmod改权限 或者acl访问控制列表
5如何看进程号
pstree -p
以树形结构列出进程信息 -p 显示PID 二进程线程协程
一进程
1定义
进程是一个具有一定独立功能的程序在一个数据集上的一次动态执行的过程是操作系统进行资源分配和调度的一个独立单位是应用程序运行的载体。进程是一种抽象的概念从来没有统一的标准定义。
2组成
进程一般由程序、数据集合和进程控制块三部分组成。
程序用于描述进程要完成的功能是控制进程执行的指令集 数据集合是程序在执行时所需要的数据和工作区 程序控制块(Program Control Block简称PCB)包含进程的描述信息和控制信息是进程存在的唯一标志。
3简言之
一个进程拖多个线程 进程是老板只接受任务不处理任务线程是干活得
一个进程最少一个线 二线程
1定义
线程是程序执行中一个单一的顺序控制流程是程序执行流的最小单元是处理器调度和分派的基本单位。
一个进程可以有一个或多个线程各个线程之间共享程序的内存空间(也就是所在进程的内存空间)
2组成
一个标准的线程由线程ID、当前指令指针(PC)、寄存器和堆栈组成
3线程作用
减少硬件资源消耗
进程切换
相同资源的存储 三协程
手写脚本的方式哪个线程先执行
例题
问如何确定一个程序是多线程 还是 单线程
答先pstree看进程号 去到 /proc/1103 看出sshd 为单线程
为什么要区分一个程序是多线程还是单线程
多线程高并发可以应对复杂场景 三进程 使用 内存 的问题
一常见问题
内存泄漏Memory Leak
指程序中用malloc或new申请了一块内存但是没有用free或delete将内存释放导致这块内存一直处于占用状态
内存溢出Memory Overflow
指程序申请了10M的空间但是在这个空间写入10M以上字节的数据就是溢出,类似红杏出墙
内存不足OOM
oom 会经常看到 out of meory 内存不足
二oom 常见使用场景
在java程序中比较常见
原因:
给应用分配内存太少比如虚拟机本身可使用的内存一般通过启动时的VM参数指定太少。
应用用的太多并且用完没释放浪费了。此时就会造成内存泄露或者内存溢出。
使用的解决办法
1限制java进程的max heap并且降低java程序的worker数量从而降低内存使用
2给系统增加swap空间
3pmap 进程id 看哪个块占内存特别大有可能这个块的代码开发写错了
pmap 进程id
[rootlocalhost ~]#pmap 1143
1143: /usr/sbin/sshd -D
0000555bd6b0f000 800K r-x-- sshd
0000555bd6dd6000 16K r---- sshd
0000555bd6dda000 4K rw--- sshd
0000555bd6ddb000 36K rw--- [ anon ]
0000555bd7603000 132K rw--- [ anon ] 四进程状态
一进程的基本状态 创建状态进程在创建时需要申请一个空白PCB(process control block进程控制块)向其中填写控制和管理进程的信息完成资源分配。如果创建工作无法完成比如资源无法满足就无法被调度运行把此时进程所处状态称为创建状态 就绪状态进程已准备好已分配到所需资源只要分配到CPU就能够立即运行 执行状态进程处于就绪状态被调度后进程进入执行状态 阻塞状态正在执行的进程由于某些事件I/O请求申请缓存区失败而暂时无法运行进程受到阻塞。在满足请求时进入就绪状态等待系统调用 终止状态进程结束或出现错误或被系统终止进入终止状态。无法再执行
二状态之间转换六种情况
运行——就绪
1主要是进程占用CPU的时间过长而系统分配给该进程占用CPU的时间是有限的
2在采用抢先式优先级调度算法的系统中,当有更高优先级的进程要运行时该进程就被迫让出CPU该进程便由执行状态转变为就绪状态
就绪——运行
运行的进程的时间片用完调度就转到就绪队列中选择合适的进程分配CPU
运行——阻塞
正在执行的进程因发生某等待事件而无法执行则进程由执行状态变为阻塞状态如发生了I/O请求
阻塞——就绪
进程所等待的事件已经发生就进入就绪队列以下两种状态是不可能发生的
阻塞——运行
即使给阻塞进程分配CPU也无法执行操作系统在进行调度时不会从阻塞队列进行挑选而是从就绪队列中选取
就绪——阻塞
就绪态根本就没有执行谈不上进入阻塞态 三进程更多的状态 运行态running 就绪态ready 睡眠态分为两种可中断interruptable不可中断uninterruptable 停止态stopped暂停于内存但不会被调度除非手动启动 僵死态zombie僵尸态结束进程父进程结束前子进程不关闭杀死父进程可以关闭僵死态 的子进程
这边重点介绍一下僵尸态
1僵尸进程/僵尸态具体含义
进程结束 父进程 会回收子进程的硬件资源 子进程如果出现意外关闭 父进程无感知就不会收回资源人为关闭父进程 资源不会回收产生僵尸进程
2实验模拟僵尸进程
[rootcentos8 ~]#bash
[rootcentos8 ~]#echo $BASHPID
1809
[rootcentos8 ~]#echo $PPID
1436
#将父进程设为停止态
[rootcentos8 ~]#kill -19 1436
#杀死子进程使其进入僵尸态
[rootcentos8 ~]#kill -9 1809
[rootcentos8 ~]#ps aux #可以看到上面图示的结果STAT为Z表示为僵尸态
#方法1:恢复父进程
[rootcentos8 ~]#kill -18 1436
#方法2:杀死父进程
[rootcentos8 ~]#kill -9 1436
#再次观察可以僵尸态的进程不存在了
[rootcentos8 ~]#ps aux 也可以 pstree -p | grep bash
3如何结束僵尸进程
重启
生产环境下僵尸进程是 父进程意外死了本身就是事故僵尸进程本身 其实不太占内存 五进程之间通讯
1,同一主机
pipe 管道,单向传输 cmd1 | cmd 2 socket 套接字文件,双工通信 Memory-maped file 文件映射,将文件中的一段数据映射到物理内存多个进程共享这片内存 shm shared memory 共享内存 signal 信号 Lock 对资源上锁如果资源已被某进程锁住则其它进程想修改甚至读取这些资源都将被阻塞直到锁被打开 semaphore 信号量一种计数器 2不同主机
socketIP和端口号
RPC remote procedure call 远程调用
六进程优先级
在 Linux 系统中表示进程优先级的有两个参数Priority 和 Nice
一优先级规则
PRI (最终值) PRI (原始值) NI
PRI (最终值) 数值越小代表该进程越优先被 CPU 处理
PRI (原始值)数值越大优先级越高PRI(原始值)我们调不了所以我们不必理会
NI 值越 小该进程就越优先被 CPU 处理注意;NI范围 -20到19
二进程优先级相关命令
1查看优先级
ps 命令process state
axo 都是选项 o指属性… 选项显示定制的信息 pid、cmd、%cpu、%mem 2更改优先级
[rootcentos8 ~]#nice -n -10 ping 127.0.0.1 [rootcentos7 ~]#renice -n -20 2118 七进程分类
一操作系统分类 协作式多任务早期 windows 系统使用即一个任务得到了 CPU 时间除非它自己放弃使用CPU 否则将完全霸占 CPU 所以任务之间需要协作——使用一段时间的 CPU 主动放弃使用 抢占式多任务Linux内核CPU的总控制权在操作系统手中操作系统会轮流询问每一个任务是否需要使用 CPU 需要使用的话就让它用不过在一定时间后操作系统会剥夺当前任务的 CPU 使用权把它排在询问队列的最后再去询问下一个任务
二进程类型 守护进程: daemon,在系统引导过程中启动的进程和终端无关进程 前台进程跟终端相关通过终端启动的进程
注意两者可相互转化
三按进程资源使用的分类 CPU-BoundCPU 密集型非交互 IO-BoundIO 密集型交互 八进程相关命令
一ps
1,含义
ps 即 process state 查看静态的进程统计信息
2选项 ps aux 可以查看系统中所有的进程 ps -le 可以查看系统中所有的进程而且还能看到进程的父进程的 PID 和进程优先级 ps -l 只能看到当前 Shell 产生的进程
常用选项 a显示当前终端下的所有进程信息包括其他用户的进程。与“x”选项结合时将示系统中所有的进程信息。 u使用以用户为主的格式输出进程信息。 x显示当前用户在所有终端下的进程信息。 -e显示系统内的所有进程信息。 -l使用长Long格式显示进程信息。 -f使用完整的Full格式显示进程信 k|--sort 属性 对属性排序,属性前加 - 表示倒序 ps aux k -%cpu o 属性… 选项显示定制的信息 pid、cmd、%cpu、%mem
3ps 不同命令表示的具体信息
ps aux 表头含义USER该进程是由哪个用户产生的。PID进程的 ID。%CPU该进程占用 CPU 资源的百分比占用的百分比越高进程越耗费资源。%MEM该进程占用物理内存的百分比占用的百分比越高进程越耗费资源。VSZ该进程占用虚拟内存的大小单位为 KB。RSS该进程占用实际物理内存的大小单位为 KB。TTY该进程是在哪个终端运行的。其中tty1 ~ tty7 代表本地控制台终端可以通过 AltF1 ~ F7 快捷键切换不同的终端tty1~tty6 是本地的字符界面终端tty7 是图形终端。pts/0 ~ 255 代表虚拟终端一般是远程连接的终端第一个远程连接占用 pts/0第二个远程连接占用 pts/1依次増长。代表和终端无关系统进程STAT 进程状态。常见的状态有以下几种 -D不可被唤醒的睡眠状态通常用于 I/O 情况。 -R该进程正在运行。 -S该进程处于睡眠状态可被唤醒。 -T停止状态可能是在后台暂停或进程处于除错状态。 -W内存交互状态从 2.6 内核开始无效。 -X死掉的进程应该不会出现。 -Z僵尸进程。进程已经中止但是还是占用硬件资源。 -高优先级以下状态在 BSD 格式中出现。 -N低优先级。 -L被锁入内存。 -s包含子进程。 -l多线程小写 L。 -位于后台。 START该进程的启动时间。TIME该进程占用 CPU 的运算时间注意不是系统时间。COMMAND产生此进程的命令名 ps -ef 表头含义F进程标志说明进程的权限常见的标志有两个: 1进程可以被复制但是不能被执行4进程使用超级用户权限S进程状态。具体的状态和psaux命令中的 STAT 状态一致UID运行此进程的用户的 IDPID进程的 IDPPID父进程的 IDC该进程的 CPU 使用率单位是百分比PRI进程的优先级数值越小该进程的优先级越高越早被 CPU 执行系统定义不可以人为修改NI进程的优先级数值越小该进程越早被执行可以人为修改ADDR该进程在内存的哪个位置SZ该进程占用多大内存WCHAN该进程是否运行。-代表正在运行TTY该进程由哪个终端产生TIME该进程占用 CPU 的运算时间注意不是系统时间CMD产生此进程的命令名 4ps 实际运用
① 过滤僵尸进程 解释 :
ps aux 可以查看系统中所有的进程
grep -v grep 用了grep程序会有grep 进程 排除掉
grep Z ps aux后重看的所有内容中stat 表示进程状态Z表示僵尸状态 ②找到利用率最高的进程
找到cpu 利用率最高的进程 找到内存利用率最高的进程 看自己相看的进程的属性并排序 ③找到未知进程的执行程序文件路径 可能存在的场景
中病毒案例现在中病毒了造成内存cpu或者其他占用率过高通过ps aux 命令可以找到
如果kill 杀掉他过段时间又会起来可以根据pid 号去到 /proc/pid号/exe
找到程序的绝对路径删除掉
也可以在病毒程序的绝对路径下手写一个同名的可执行程序治标不治本 二prtstat查看进程信息
查看进程信息
prtstat 直接加pid 号
三top
1,含义
任务管理器 动态查看进程信息
2选项 -d 秒数指定 top 命令每隔几秒更新。默认是 3 秒 -b使用批处理模式输出。一般和-n选项合用用于把 top 命令重定向到文件中 -n 次数指定 top 命令执行的次数。一般和-选项合用 -p 进程PID仅查看指定 ID 的进程 -s使 top 命令在安全模式中运行避免在交互模式中出现错误 -u 用户名只监听某个用户的进程
3top 命令显示窗口里 交互操作 ? 或 h显示交互模式的帮助 c按照 CPU 的使用率排序默认就是此选项 M按照内存的使用率排序 N按照 PID 排序 T按照 CPU 的累积运算时间排序也就是按照 TIME 项排序 k按照 PID 给予某个进程一个信号。一般用于中止某个进程信号 9 是强制中止的信号 r按照 PID 给某个进程重设优先级Nice值 q退出 top 命令
4top 命令显示窗口里 改变首部信息显示
uptime信息l命令
tasks及cpu信息t命令
cpu分别显示1 (数字)
memory信息m命令
退出命令q
修改刷新时间间隔s
终止指定进程k
保存文件W
5top 命令 内容的具体介绍
top 命令的输出内容是动态的默认每隔 3 秒刷新一次。命令的输出主要分为两部分
①第一部分是前五行
显示的是整个系统的资源使用状况我们就是通过这些输出来判断服务器的资源使用状态的 第一行为任务队列信息具体内容如表 所示。
内 容说 明12:26:46系统当前时间up 1 day, 13:32系统的运行时间.本机己经运行 1 天 13 小时 32 分钟2 users当前登录了两个用户load average: 0.00,0.000.00 1 分钟、5 分钟、15 分钟的cpu使用情况如果有4核理论数字可以到3.99
第二行为进程信息具体内容如表
内 容说 明Tasks: 95 total系统中的进程总数1 running正在运行的进程数94 sleeping睡眠的进程数0 stopped正在停止的进程数0 zombie僵尸进程数。如果不是 0则需要手工检查僵尸进程
第三行为 CPU 信息具体内容如表
内 容说 明Cpu(s): 0.1 %us用户模式占用的 CPU 百分比 个人用户开启的进程占用的 cpu 率0.1%sy系统模式占用的 CPU 百分比0.0%ni改变过优先级的用户进程占用的 CPU 百分比99.7%id空闲 CPU 占用的 CPU 百分比0.1%wa等待输入/输出的进程占用的 CPU 百分比 10.0%hi硬中断请求服务占用的 CPU 百分比0.1%si软中断请求服务占用的 CPU 百分比0.0%stststeal time意为虚拟程序占用 cpu 时间百分比就是当有虚拟机时虚拟 CPU 等待实际 CPU 的时间百分比
第四行为物理内存信息具体内容如表buff cache
内 容说 明Mem: 625344k total物理内存的总量单位为KB571504k used己经使用的物理内存数量53840kee空闲的物理内存数量。我们使用的是虚拟机共分配了 628MB内存所以只有53MB的空闲内存65800k buffers作为缓冲的内存数量
第五行为交换分区swap信息如表
内 容说 明Swap: 524280k total交换分区虚拟内存的总大小Ok used已经使用的交换分区的大小524280k free空闲交换分区的大小409280k cached作为缓存的交换分区的大小 ② 第二部分从第六行开始 显示的是系统中进程的信息 PID进程的 ID。 USER该进程所属的用户。 PR优先级数值越小优先级越高。 NI优先级数值越小、优先级越高。 VIRT该进程使用的虚拟内存的大小单位为 KB。 RES该进程使用的物理内存的大小单位为 KB。 SHR共享内存大小单位为 KB。 S进程状态。 %CPU该进程占用 CPU 的百分比。 %MEM该进程占用内存的百分比。 TIME该进程共占用的 CPU 时间。 COMMAND进程的命令名。 6top 生产环境作用
通过 top 命令的第一部分就可以判断服务器的健康状态。如果 1 分钟、5 分钟、15 分钟的平均负载高于 1则证明系统压力较大。如果 CPU 的使用率过高或空闲率过低则证明系统压力较大。如果物理内存的空闲内存过小则也证明系统压力较大。
这时我们就应该判断是什么进程占用了系统资源。如果是不必要的进程就应该结束这些进程如果是必需进程那么我们该増加服务器资源比如増加虚拟机内存或者建立集群服务器。
缓冲buffer和缓存cache的区别 缓存cache是在读取硬盘中的数据时把最常用的数据保存在内存的缓存区中再次读取该数据时就不去硬盘中读取了而在缓存中读取。 缓冲buffer是在向硬盘写入数据时先把数据放入缓冲区,然后再一起向硬盘写入把分散的写操作集中进行减少磁盘碎片和硬盘的反复寻道从而提高系统性能。
简单来说缓存cache是用来加速数据从硬盘中读取的而缓冲buffer是用来加速数据写入硬盘的。 四pgrep查看指定的进程
查看指定的进程 -U 指定用户 -l: 显示进程名 -a: 显示完整格式的进程名 -P pid: 显示指定进程的子进程
问 我想知道当前系统root 一共运行了多少个进程
ps aux | grep -v grep | grep root | wc - l
pgrep -U root | wc -l 五pidof已知程序名不知道pid号
[rootlocalhost ~]#pidof nginx
#查看 nginx进程的 pid 号
22142 22002 六pstree命令进程树
以树形结构列出进程信息
1,常用选项
-a 显示启动每个进程对应的完整指令包括启动进程的路径、参数等 -p 显示PID -T 不显示线程thread,默认显示线程 -u 显示用户切换 -H pid 高亮显示指定进程及其前辈进程
2,常用命令表达形式
[roottest ~]# pstree 1
#查看进程号为1的进程[roottest ~]# pstree lisi
#查看用户lisi的进程[roottest ~]# pstree -pH 1780
#高亮 七lsof
1,含义
lsof 命令“list opened files”的缩写直译过来就是列举系统中已经被打开的文件。通过 lsof 命令我们就可以根据文件找到对应的进程信息也可以根据进程信息找到进程打开的文件。 2选项
选项功能-c 字符串只列出以字符串开头的进程打开的文件。d 目录名列出某个目录中所有被进程调用的文件。-u 用户名只列出某个用户的进程打开的文件。-p pid列出某个 PID 进程打开的文件。 3误删文件找回
前提有别人在用
lsof |grep delete
cupsd 1144pid root 10r REG 253,0 2337 9381005 /etc/passwd (deleted)ll /proc/1144/fd
fd 是文件描述符
[rootlocalhost data]#ll /proc/1144/fd
总用量 0
lr-x------. 1 root root 64 11月 29 11:26 0 - /dev/null
lrwx------. 1 root root 64 11月 29 11:26 1 - socket:[20288]
lr-x------. 1 root root 64 11月 29 11:26 10 - /etc/passwd (deleted)
lrwx------. 1 root root 64 11月 29 11:26 11 - socket:[24022]
lrwx------. 1 root root 64 11月 29 11:26 12 - socket:[24023]cat /proc/1144/fd/10 4,看那些程序占用了111 端口 八监控系统资源 虚拟 资源 vmstat
1含义
Virtual Meomory Statistics虚拟内存统计的缩写可用来监控 CPU 使用、进程状态、内存使用、虚拟内存使用、硬盘输入/输出状态等信息。
[rootlocalhost ~]# vmstat [-a] [刷新延时 刷新次数]
[rootlocalhost ~]# vmstat [选项] [rootlocalhost proc]# vmstat 1 3
#使用vmstat检测每隔1秒刷新一次共刷新3次2选项
选项含义-fs-f显示从启动到目前为止系统复制fork的程序数此信息是从 /proc/stat 中的 processes 字段中取得的。 -s将从启动到目前为止由一些事件导致的内存变化情况列表说明。-S 单位令输出的数据显示单位例如用 K/M 取代 bytes 的容量。-d列出硬盘有关读写总量的统计表。-p 分区设备文件名查看硬盘分区的读写情况
3字段
字段含义procs进程信息字段 -r等待运行的进程数数量越大系统越繁忙。 -b不可被唤醒的进程数量数量越大系统越繁忙。memory内存信息字段 -swpd虚拟内存的使用情况单位为 KB。 -free空闲的内存容量单位为 KB。-buff缓冲的内存容量单位为 KB。-cache缓存的内存容量单位为 KB。swap交换分区信息字段 -si从磁盘中交换到内存中数据的数量单位为 KB。 -so从内存中交换到磁盘中数据的数量单位为 KB。这两个数越大表明数据需要经常在磁盘和内存之间进行交换系统性能越差。io磁盘读/写信息字段 -bi从块设备中读入的数据的总量单位是块。 -bo写到块设备的数据的总量单位是块。这两个数越大代表系统的 I/O 越繁忙。system系统信息字段 -in每秒被中断的进程次数。 -cs每秒进行的事件切换次数。这两个数越大代表系统与接口设备的通信越繁忙。cpuCPU信息字段 -us非内核进程消耗 CPU 运算时间的百分比。 -sy内核进程消耗 CPU 运算时间的百分比。 -id空闲 CPU 的百分比。 -wa等待 I/O 所消耗的 CPU 百分比。 -st被虚拟机所盗用的 CPU 百分比 九free 内存
free -h free -m #以m为单位查看 问;一台服务器开机一周后非常卡
是因为缓存太多
echo 3 /proc/sys/vm/drop_caches #清除缓存
pmap 1073 查看进程占用 内存的详细信息 十 iostat
1,定义
iostat 可以提供更丰富的IO性能状态数据
2选项
常用选项: -c 只显示CPU行 -d 显示设备〈磁盘)使用状态 -k 以千字节为为单位显示输出 -t 在输出中包括时间戳 -x 在输出中包括扩展的磁盘指标
3例子
iostat 1 -d /dev/sda #只看 sda硬盘 十一iotop 监视磁盘 十二webadin图形化界面
yum 下载webadin
systemctl start webmin
systemctl status webmin
真机访问虚拟机的网络端口号是10000 输入账户密码 将语言改成中文 十三uptime 系统运行了多久时间
[rootlocalhost ~]#uptime 01:29:00 up 2:07, 6 users, load average: 0.00, 0.01, 0.05
当前时间 运行时间 登录用户 十四显示CPU相关统计mpstat
[rootlocalhost ~]#mpstat
Linux 3.10.0-693.el7.x86_64 (localhost.localdomain) 2023年07月27日 _x86_64_ (4 CPU)01时31分37秒 CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle
01时31分37秒 all 0.71 0.00 1.08 0.75 0.00 0.04 0.00 0.00 0.00 97.41
当前时间 用户空间 ni优先级 系统内核 盗取时间 系统空闲盗取时间和虚拟化有关[rootlocalhost ~]#mpstat 1 3
#1秒 一次 看3次 十五系统资源统计 dstat 十六pmap 看到进程使用内存的情况 九进程管理
一前台运行与后台运行
前台运行影响当前终端的操作
后台运行不影响当前终端的操作 二前后台命令
1将前台命令放入后台
为什么要放后台可以并行执行提高效率
命令后加
2查看后台任务列表 jobs 3 把命令从后台拉回前台
fg 1
4再次把命令放入后台并停止
ctrl z 5,再次开启后台任务
bg 1 三并行执行任务
#ping 127.0.0.1ping 127.0.0.2ping 127.0.0.3 三结束进程
kill
1含义
kill 从字面来看就是用来杀死进程的命令但事实上这个或多或少带有一定的误导性。从本质上讲kill 命令只是用来向进程发送一个信号至于这个信号是什么是用户指定的。
也就是说kill 命令的执行原理是这样的kill 命令会向操作系统内核发送一个信号多是终止信号和目标进程的 PID然后系统内核根据收到的信号类型对指定进程进行相应的操作。
2通式
kill [信号] PID kill 命令是按照 PID 来确定进程的所以 kill 命令只能识别 PID而不能识别进程名
3常用信号编号
号编号信号名含义0EXIT程序退出时收到该信息。1HUP挂掉电话线或终端连接的挂起信号这个信号也会造成某些进程在没有终止的情况下重新初始化。重新读取配置文件2INT表示结束进程但并不是强制性的常用的 CtrlC 组合键发出就是一个 kill -2 的信号。3QUIT退出。9KILL杀死进程即强制结束进程。有掉数据的风险11SEGV段错误。15TERM正常结束进程是 kill 命令的默认信号。
4 killall /pkill 群杀
killall [选项] [信号] 进程名 -i交互式询问是否要杀死某个进程 -I忽略进程名的大小写
pkill [信号] 进程名