首页 > 系统相关 >12Linux进程管理(重点)

12Linux进程管理(重点)

时间:2022-12-02 11:13:36浏览次数:47  
标签:显示 12Linux -- top 指令 进程 重点 SIGRTMIN

进程管理

基本介绍

image-20221201111326308

ps指令

process status:命令用于显示当前进程的状态,类似于 windows 的任务管理器。

语法

ps [options] [--help]

参数

  • ps 的参数非常多, 在此仅列出几个常用的参数并大略介绍含义

  • -A 列出所有的进程

  • -w 显示加宽可以显示较多的资讯

  • -au 显示较详细的资讯

  • -aux 显示所有包含其他使用者的进程

  • au(x) 输出格式 :

    USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
    
    • USER: 行程拥有者
    • PID: 进程识别号
    • %CPU: 占用的 CPU 使用率
    • %MEM: 占用的记忆体使用率
    • VSZ: 占用的虚拟记忆体大小
    • RSS: 占用的记忆体大小
    • TTY: 终端的次要装置号码 (minor device number of tty)
    • STAT: 该行程的状态:
      • D: 无法中断的休眠状态 (通常 IO 的进程)
      • R: 正在执行中
      • S: 静止状态
      • T: 暂停执行
      • Z: 不存在但暂时无法消除
      • W: 没有足够的记忆体分页可分配
      • <: 高优先序的行程
      • N: 低优先序的行程
      • L: 有记忆体分页分配并锁在记忆体内 (实时系统或捱A I/O)
    • START: 行程开始时间
    • TIME: 执行的时间
    • COMMAND:所执行的指令

查看进程:

image-20221201111940564

查找特定的进程:

image-20221201112303159

查找父进程ID:(PPID)

image-20221201112511391

pstree指令

-p :附带进程号

image-20221201113726758

终止进程

kill指令

kill 命令用于删除执行中的程序或工作。

kill 可将指定的信息送至程序。预设的信息为 SIGTERM(15),可将指定程序终止。若仍无法终止该程序,可使用 SIGKILL(9) 信息尝试强制删除程序。程序或工作的编号可利用 ps 指令或 jobs 指令查看。

语法

kill [-s <信息名称或编号>][程序] 或 kill [-l <信息编号>]

参数说明

  • -l <信息编号>  若不加<信息编号>选项,则 -l 参数会列出全部的信息名称。
  • -s <信息名称或编号>  指定要送出的信息。
  • [程序]  [程序]可以是程序的PID或是PGID,也可以是工作编号。

使用 kill -l 命令列出所有可用信号。

最常用的信号是:

  • 1 (HUP):重新加载进程。
  • 9 (KILL):杀死一个进程。
  • 15 (TERM):正常停止一个进程。

实例

杀死进程

# kill 12345

强制杀死进程

# kill -KILL 123456

发送SIGHUP信号,可以使用一下信号

# kill -HUP pid

彻底杀死进程

# kill -9 123456

显示信号

# kill -l
1) SIGHUP     2) SIGINT     3) SIGQUIT     4) SIGILL     5) SIGTRAP
6) SIGABRT     7) SIGBUS     8) SIGFPE     9) SIGKILL    10) SIGUSR1
11) SIGSEGV    12) SIGUSR2    13) SIGPIPE    14) SIGALRM    15) SIGTERM
16) SIGSTKFLT    17) SIGCHLD    18) SIGCONT    19) SIGSTOP    20) SIGTSTP
21) SIGTTIN    22) SIGTTOU    23) SIGURG    24) SIGXCPU    25) SIGXFSZ
26) SIGVTALRM    27) SIGPROF    28) SIGWINCH    29) SIGIO    30) SIGPWR
31) SIGSYS    34) SIGRTMIN    35) SIGRTMIN+1    36) SIGRTMIN+2    37) SIGRTMIN+3
38) SIGRTMIN+4    39) SIGRTMIN+5    40) SIGRTMIN+6    41) SIGRTMIN+7    42) SIGRTMIN+8
43) SIGRTMIN+9    44) SIGRTMIN+10    45) SIGRTMIN+11    46) SIGRTMIN+12    47) SIGRTMIN+13
48) SIGRTMIN+14    49) SIGRTMIN+15    50) SIGRTMAX-14    51) SIGRTMAX-13    52) SIGRTMAX-12
53) SIGRTMAX-11    54) SIGRTMAX-10    55) SIGRTMAX-9    56) SIGRTMAX-8    57) SIGRTMAX-7
58) SIGRTMAX-6    59) SIGRTMAX-5    60) SIGRTMAX-4    61) SIGRTMAX-3    62) SIGRTMAX-2
63) SIGRTMAX-1    64) SIGRTMAX

杀死指定用户所有进程

#kill -9 $(ps -ef | grep hnlinux) //方法一 过滤出hnlinux用户进程 
#kill -u hnlinux //方法二

killall指令

killall 用于杀死一个进程,与 kill 不同的是它会杀死指定名字的所有进程。

kill 命令杀死指定进程 PID,需要配合 ps 使用,而 killall 直接对进程对名字进行操作,更加方便。

语法

  killall [选项]  name

参数说明

  • name : 进程名

选项包含如下几个参数:

  • -e | --exact : 进程需要和名字完全相符
  • -I | --ignore-case :忽略大小写
  • -g | --process-group :结束进程组
  • -i | --interactive :结束之前询问
  • -l | --list :列出所有的信号名称
  • -q | --quite :进程没有结束时,不输出任何信息
  • -r | --regexp :将进程名模式解释为扩展的正则表达式。
  • -s | --signal :发送指定信号
  • -u | --user :结束指定用户的进程
  • -v | --verbose :显示详细执行过程
  • -w | --wait :等待所有的进程都结束
  • -V |--version :显示版本信息
  • --help :显示帮助信息

实例

# killall -9 php-fpm          //结束所有的 php-fpm 进程

服务管理

image-20221201113840560

systemctl

image-20221201114723015

注:不同版本指令不同(以下为ubuntu18.0----)

image-20221201115023117

telnet指令

telnet命令用于远端登入。

执行telnet指令开启终端机阶段作业,并登入远端主机。

语法

telnet [-8acdEfFKLrx][-b<主机别名>][-e<脱离字符>][-k<域名>][-l<用户名称>][-n<记录文件>][-S<服务类型>][-X<认证形态>][主机名称或IP地址<通信端口>]

参数说明

  • -8 允许使用8位字符资料,包括输入与输出。
  • -a 尝试自动登入远端系统。
  • -b<主机别名> 使用别名指定远端主机名称。
  • -c 不读取用户专属目录里的.telnetrc文件。
  • -d 启动排错模式。
  • -e<脱离字符> 设置脱离字符。
  • -E 滤除脱离字符。
  • -f 此参数的效果和指定"-F"参数相同。
  • -F 使用Kerberos V5认证时,加上此参数可把本地主机的认证数据上传到远端主机。
  • -k<域名> 使用Kerberos认证时,加上此参数让远端主机采用指定的领域名,而非该主机的域名。
  • -K 不自动登入远端主机。
  • -l<用户名称> 指定要登入远端主机的用户名称。
  • -L 允许输出8位字符资料。
  • -n<记录文件> 指定文件记录相关信息。
  • -r 使用类似rlogin指令的用户界面。
  • -S<服务类型> 设置telnet连线所需的IP TOS信息。
  • -x 假设主机有支持数据加密的功能,就使用它。
  • -X<认证形态> 关闭指定的认证形态。

实例

登录远程主机

# telnet 192.168.0.5 

//登录IP为 192.168.0.5 的远程主机

查看服务

setup指令

setup命令设置公用程序,是一个启动图形设置系统的命令。

setup 命令:用来配置X,打印设置,时区设置,系统服务,网络配置,配置,防火墙配置,验证配置,鼠标配置。

语法

setup

setup是一个设置公用程序,提供图形界面的操作方式。在setup中可设置7类的选项:

  • 1.登陆认证方式
  • 2.键盘组态设置
  • 3.鼠标组态设置
  • 4.开机时所要启动的系统服务
  • 5.声卡组态设置
  • 6.时区设置
  • 7.X Windows组态设置
ls -l /etc/init.d

image-20221201115852461

运行级别

image-20221201121336756

chkconfig指令

chkconfig 命令用于检查,设置系统的各种服务。

这是Red Hat公司遵循GPL规则所开发的程序,它可查询操作系统在每一个执行等级中会执行哪些系统服务,其中包括各类常驻服务。

语法

chkconfig [--add][--del][--list][系统服务] 或 chkconfig [--level <等级代号>][系统服务][on/off/reset]

参数

  • --add  增加所指定的系统服务,让 chkconfig 指令得以管理它,并同时在系统启动的叙述文件内增加相关数据。
  • --del  删除所指定的系统服务,不再由 chkconfig 指令管理,并同时在系统启动的叙述文件内删除相关数据。
  • --level<等级代号>  指定读系统服务要在哪一个执行等级中开启或关闭。

实例

列出c hkconfig 所知道的所有命令。

# chkconfig --list 

开启服务。

# chkconfig telnet on   //开启 Telnet 服务
# chkconfig --list      //列出 chkconfig 所知道的所有的服务的情况

关闭服务

# chkconfig telnet off  // 关闭 Telnet 服务
# chkconfig --list      // 列出 chkconfig 所知道的所有的服务的情况

监控进程

top指令

top命令用于实时显示 process 的动态。

使用权限:所有使用者。

语法

top [-] [d delay] [q] [c] [S] [s] [i] [n] [b]

参数说明

  • d : 改变显示的更新速度,或是在交谈式指令列( interactive command)按 s
  • q : 没有任何延迟的显示速度,如果使用者是有 superuser 的权限,则 top 将会以最高的优先序执行
  • c : 切换显示模式,共有两种模式,一是只显示执行档的名称,另一种是显示完整的路径与名称
  • S : 累积模式,会将己完成或消失的子进程 ( dead child process ) 的 CPU time 累积起来
  • s : 安全模式,将交谈式指令取消, 避免潜在的危机
  • i : 不显示任何闲置 (idle) 或无用 (zombie) 的进程
  • n : 更新的次数,完成后将会退出 top
  • b : 批次档模式,搭配 "n" 参数一起使用,可以用来将 top 的结果输出到档案内

实例

显示进程信息

# top

显示完整命令

# top -c

以批处理模式显示程序信息

# top -b

以累积模式显示程序信息

# top -S

设置信息更新次数

top -n 2

//表示更新两次后终止更新显示

设置信息更新时间

# top -d 3

//表示更新周期为3秒

显示指定的进程信息

# top -p 139

//显示进程号为139的进程信息,CPU、内存占用率等

显示更新十次后退出

top -n 10

使用者将不能利用交谈式指令来对行程下命令

top -s

image-20221201122429137

image-20221201122530188

image-20221201122551813

image-20221201122646616

netstat指令

netstat 命令用于显示网络状态。

利用 netstat 指令可让你得知整个 Linux 系统的网络情况。

语法

netstat [-acCeFghilMnNoprstuvVwx][-A<网络类型>][--ip]

参数说明

  • -a或--all 显示所有连线中的Socket。
  • -A<网络类型>或--<网络类型> 列出该网络类型连线中的相关地址。
  • -c或--continuous 持续列出网络状态。
  • -C或--cache 显示路由器配置的快取信息。
  • -e或--extend 显示网络其他相关信息。
  • -F或--fib 显示路由缓存。
  • -g或--groups 显示多重广播功能群组组员名单。
  • -h或--help 在线帮助。
  • -i或--interfaces 显示网络界面信息表单。
  • -l或--listening 显示监控中的服务器的Socket。
  • -M或--masquerade 显示伪装的网络连线。
  • -n或--numeric 直接使用IP地址,而不通过域名服务器。
  • -N或--netlink或--symbolic 显示网络硬件外围设备的符号连接名称。
  • -o或--timers 显示计时器。
  • -p或--programs 显示正在使用Socket的程序识别码和程序名称。
  • -r或--route 显示Routing Table。
  • -s或--statistics 显示网络工作信息统计表。
  • -t或--tcp 显示TCP传输协议的连线状况。
  • -u或--udp 显示UDP传输协议的连线状况。
  • -v或--verbose 显示指令执行过程。
  • -V或--version 显示版本信息。
  • -w或--raw 显示RAW传输协议的连线状况。
  • -x或--unix 此参数的效果和指定"-A unix"参数相同。
  • --ip或--inet 此参数的效果和指定"-A inet"参数相同。

实例

显示详细的网络状况

# netstat -a

显示当前户籍UDP连接状况

# netstat -nu

显示UDP端口号的使用情况

# netstat -apu

显示网卡列表

# netstat -i

显示组播组的关系

# netstat -g

显示网络统计信息

# netstat -s

显示监听的套接口

# netstat -l

标签:显示,12Linux,--,top,指令,进程,重点,SIGRTMIN
From: https://www.cnblogs.com/lyc2001/p/16943806.html

相关文章

  • Mono后台进程制作
    要解决的问题解决C#开发的控制台在Mono下面后台运行的问题,由于我遇到的问题比较特殊,需要用到第三方的回调,但是在回调过程中出现问题:使用anyexec,发现后台服务可以启动,但是Lo......
  • C多进程
    这篇文章主要是想针对多进程的创建和一些通信手段来进行一下记录创建子进程关于创建子进程的原型一般都是用的这个,直接fork,这个函数在父进程中调用,在父子进程中各有一个......
  • 搭建ogg时无法启动目标端复制进程,告警日志报错OGG-02091
    问题描述:搭建ogg时无法启动目标端复制进程,告警日志报错OGG-02091,如下所示:环境:源端oracle11.2.0.4目标端:oracle19.16ogg软件:191004_fbo_ggs_Linux_x64_shiphome.zip1、问......
  • 无法启动ogg配置好的抓取以及投递进程
    问题描述:无法启动ogg配置好的抓取以及投递进程.环境:源端oracle11.2.0.4目标端:oracle19.16ogg软件:191004_fbo_ggs_Linux_x64_shiphome.zip1、问题重现GGSCI(leo-11g-ogg......
  • 查看进程在哪个CPU上运行
    ps-eopid,args,psr|grepexh#exh为进程名前缀psr(processserial)为CPU编号,如上图所示,exhaust_cpu在1号CPU运行。......
  • 进程之间的数据传递 ,共享,ShardPreference
    进程之间的数据传递,共享,ShardPreference是安卓中重要的数据存储的功能。其作用和一般用法很牛逼如果你想让你的sharedPreference文件可以让多进程访问,在创建这个文件的时......
  • MASA Framework 事件总线 - 跨进程事件总线
    概述跨进程事件总线允许发布和订阅跨服务传输的消息,服务的发布与订阅不在同一个进程中在MasaFramework中,跨进程总线事件提供了一个可以被开箱即用的程序Integrati......
  • 记录mysql服务突然不能启动,报错:windows无法启动MYSQL服务(位于本地计算机)错误1067进程
    发生这个问题的背景:在删除一些不用的数据库,然后点别的库突然报一些之前写sql时的错误,然后我就把mysql服务关了,当再点击启动时就报下边这个错了。又试了重启电脑仍然没有......
  • 进程与线程的一个简单解释
    进程​(process)和线程(thread)是操作系统的基本概念,但是它们比较抽象,不容易掌握。最近,我读到一篇材料,发现有一个很好的类比,可以把它们解释地清晰易懂。1.计算机的核心是CPU,它承......
  • Hadoop3_04(重点)
    4.2完全分布式运行模式(开发重点)分析:(1)准备3台客户机(关闭防火墙、静态ip、主机名称)(2)安装JDK(3)配置环境变量(4)安装Hadoop(5)配置环境变量(6)配置ssh(7)配置集群(8)单点启动(9)群......