进程管理

1. 进程管理基础

  • 在Linux中,每个执行的程序(代码)都称为一个进程。每个进程都分配一个ID号
  • 每一个进程,都会对应一个父进程,而这个父进程可以复制多个子进程。例如www服务器。
  • 每个进程都可能以两种方式存在。前台和后台。
    • 前台进程:用户目前的屏幕上可以进行操作的。
    • 后台进程:实际在操作,但由于屏幕上无法看到的进程,通常使用后台方式执行。
  • 一般系统的服务都是以后台进程的方式存在,而且都会常驻在系统中,直到关机才结束。

2. 显示系统执行的进程

2.1 ps指令详细介绍

ps [选项]:查看目前系统中,有哪些正在执行,以及它们执行的状况

  • ps -a:显示当前终端的所有进程信息。
  • ps -u:以用户的格式显示进程信息。
  • ps -x:显示后台进程运行的参数。
  • ps -axu | grep xxx:过滤得到xxx的信息。
  • ps -ef:以全格式显示当前所有的进程,查看进程的父进程。
  • -e:显示所有进程。
  • -f:全格式。

ps -axu显示信息选项

System V 展示风格

字段 说明
USER 用户说明
PID 进程识别号
%CPU 进程占用cpu百分比
%MEM 进程占用物理内存百分比
VSZ 进程占用虚拟内存大小(KB)
RSS 进程占用物理内存大小(KB)
TTY 终端机号
STAT 进程状态,S睡眠,s代表是会话的先导进程,N代表进程拥有比普通进程更高的优先级,R正在运行,D短期等待,Z僵死进程,T被跟踪或被停止
STARTED 进程启动的时间
TIME 此进程所消耗的CPU时间
COMMAND 正在执行的命令或进程名

ps -ef显示信息解释

BSD展示风格

字段 说明
UID 用户id
PID 进程id
PPID 父进程
C CPU用于执行优先级的因子,数值越大,表明cpu密集型运算,执行优先级会降低,数值越小,表明是I/O密集运算,执行优先级会提高
STIME 进程启动时间
TTY 终端机号
TIME 此进程所消耗的CPU时间
CMD 启动所用的命令和参数

3. 终止进程

若是某个进程执行一半需要停止时,或是消耗了很大的系统资源时,此时可以考虑停止该进程,使用kill命令来完成此任务

  • kill [选项] 进程号:通过进程号杀死进程

    • -9:表示强迫进程立刻停止
  • killall 进程名称:通过进程名称杀死进程,也支持通配符,这在系统因负载过大而变得很慢时很有用

案例1:踢掉某个非法用户

案例2:终止远程服务

案例3:终止多个gedit编辑器

案例4: 强制杀掉一个终端

4. 查看进程树

  • 查看进程树:pstree [选项]

    • -p:显示进程的PID
    • -u:显示进程的所属用户

5. 服务(Service)管理

服务(Service)本质就是进程,但是是运行在后台的,通常都会监听某个端口,等待其它程序的请求,比如(mysql,sshd 防火墙等),因此我们又称为守护进程。

5.1 service管理指令

service管理指令:service 服务名 [start | stop | restart | reload | status]

在CentOS7.0之后,不再使用service,而是systemctl

  • 查看防火墙情况:

    • service iptables status
    • systemctl status firewalld(7.0之后的版本)

  • 测试某个端口是否在监听:telnet

5.2 服务查看方式

  • 方式1:setup指令

  • 方式2:ls -l /etc/init.d/

5.3 服务的运行级别(runlevel)

5.4 开机流程

5.5 chkconfig指令

chkconfig:可以给每个服务的各个运行级别设置自启动/关闭

5.5.1 基本语法

  • 查看xxx服务:chkconfig –list | grep xxx
  • 查看服务的状态:chkconfig 服务名 --list
  • 给服务的运行级别设置自启动:chkconfig –level 5 服务名 on/off
  • 要所有运行级别关闭或开启:chkconfig 服务名 on/off
  • chkconfig重新设置后需要重新启动才能生效

6. 动态监控进程

top与ps相似,都是用来显示正在执行的进程,top的不同之处在于top执行一段时间可以更新正在运行的进程

6.1 基本语法

top [选项]

  • -d 秒数:指定top命令每隔几秒更新。默认是3秒。
  • -i:使top不显示任何闲置或者僵死进程。
  • -p:通过指定监控进程ID来仅仅监控某个进程的状态。
  • 交互操作说明:
操作 功能
P 以CPU使用率排序,默认就是此项
M 以内存的使用率排序
N 以PID排序
q 退出top

动态进程监控图例

6.2 应用案例

6.2.1 监控特定用户

  1. top查看进程;
  2. u
  3. 输入用户名。

6.2.2 终止指定的进程

  1. top查看进程;
  2. k输入要结束的进程。

7. 查看网络情况

7.1 基本语法

netstat [选项]

  • -an:按一定顺序排列输出
  • -p:显示哪个进程在调用

7.2 应用案例

  1. 查看所有的网络服务

    • netstat -anp | more
  2. 查看sshd的服务的信息

    • netstat -anp | grep sshd

【Linux】3.10 进程管理(重点)的更多相关文章

  1. Linux系统管理10——进程和计划任务管理

    Linux系统管理10——进程和计划任务管理 一.程序和进程的关系 1.程序 ·保存在硬盘.光盘等介质中的可执行代码和数据 ·静态保存的代码 2.进程 ·在CPU及内存中运行的程序代码 ·动态执行的代 ...

  2. Linux学习之进程管理(十九)

    Linux学习之进程管理 进程查看 查看系统中所有进程,使用BSD操作系统的格式 语法:ps aux 选项: a:显示所有前台进程 x:显示所有后台进程 u:显示这个进程是由哪个用户产生的 语法:ps ...

  3. 【Linux学习】Linux系统管理1—进程管理

    Linux系统管理1-进程管理 一.Linux的三种进程 Linux包括3中不同类型的进程: 交互进程:由一个shell启动的进程.交互进程可以在前后台运行 批处理进程:该进程和终端无联系,是一个进程 ...

  4. Linux系列之进程管理

    前言 进程是正在运行的程序,Linux系统通常有数百个进程同时运行.本文就来介绍下Linux是如何进行进程管理的. 我们可以看到: 查看进程(Viewing processes) 查找进程(Findi ...

  5. Linux学习之进程管理

    |-进程管理     进程常用命令        |- w查看当前系统信息        |- ps进程查看命令        |- kill终止进程        |- 一个存放内存中的特殊目录/p ...

  6. Linux网络和进程管理

     1) 计算机网络是通过外围的设备和连接,将分布在相同或不同区域的多台计算机 连接在一起所形成的集合.网络中的计算机实现彼此间互相通信,并且可以共 同使用硬件.软件和数据资源,实现资源共享.Lin ...

  7. Linux网络配置&进程管理

     原理图 查看ip和网关

  8. 深入Linux内核架构——进程管理和调度(下)

    五.调度器的实现 调度器的任务是在程序之间共享CPU时间,创造并行执行的错觉.该任务可分为调度策略和上下文切换两个不同部分. 1.概观 暂时不考虑实时进程,只考虑CFS调度器.经典的调度器对系统中的进 ...

  9. Linux系统编程@进程管理(一)

    课程目标: 构建一个基于主机系统的多客户即时通信/聊天室项目 涉及的理论知识 进程控制:僵尸进程/孤儿进程.进程控制.守护进程... 进程间通信:管道.命名管道.信号... 多线程编程: 锁.信号量. ...

  10. Linux进阶之进程管理

    本节内容 1.进程管理 2.ps 3.uptime 4.top 5.ss -tnl------ lsof -i :22 一. 进程管理的概念 程序:二进制文件,静态 /bin/date,/usr/sb ...

随机推荐

  1. 前端开发常用git命令详细版

    1.新建代码库 当前目录创建一个git代码库 git init 新建一个目录文件 将其初始化为git代码库 git init [pro-name] 远端拉去项目 git clone [url] 2.基 ...

  2. Solution Set -「Public NOIP Round #3 (Div. 1)」

    \(\mathscr{A}\sim\) 移除石子   Tags:「A.构造」「C.细节」   "显然" 直接按 \((x,y)\) 二元组排序后两两组成正方形! 喜提 \(90\t ...

  3. FIDO 密钥登录

    FIDO 密匙登录 [1]介绍了一些基础密码知识,科普性较好,在此摘抄一下: 说起密码,你会想起什么? 密码太多,记不住? 图省事所有网站用同一个密码,一个泄露了,手忙脚乱地去改密码? 网站被脱库,数 ...

  4. 云辅助隐私集合求交(Server-Aided PSI)协议介绍:学习

    原文来自:云辅助隐私集合求交(Server-Aided PSI)协议介绍,下面学习一波,并记录一些笔记. 背景 总结: 1.PSI-CA和PSI相比,前者在乎的是交集的大小,后者在乎的是交集本身.另外 ...

  5. 使用pkg对nodejs项目打包

    pkg的介绍可以阅读官方说明.下面针对使用做一个简单的说明. 1.  安装, 假设需要将项目打包成 win-x86 下运行的软件包,需要确定使用的 pkg 和 pkg-fecth 的版本,目前最后一个 ...

  6. Oracle连接 ORA-28001: 口令已经失效解决方法

    cmd进入命令行 C:\Users\Administrator>sqlplus / as sysdba SQL*Plus: Release 11.2.0.1.0 Production on 星期 ...

  7. DPDK简介和原理

    本文分享自天翼云开发者社区<DPDK简介和原理>,作者:s****n DPDK是一种绕过内核直接在用户态收发包来解决内核性能的瓶颈技术. 什么是中断 了解DPDK之前,首先需要先了解什么是 ...

  8. idea插件仓库连接不到网络

    IDEA的插件中心连不上网 打开:设置-插件 选择:设置按钮-HTTP代理设置 勾选自动设置 输入 https://plugins.jetbrains.com/或者 http://127.0.0.1: ...

  9. NSSM:简化Windows服务配置,提升系统维护效率

    NSSM:简化Windows服务配置,提升系统维护效率 在Windows系统环境中,服务的配置与管理是一项复杂而重要的任务.传统的服务管理方式往往涉及繁琐的步骤,不仅效率低下,还容易出错.然而,随着N ...

  10. centos7关闭不必要的服务和端口

    云服务器开启很多不必要的端口,造成安全隐患 TCP 25端口:邮件服务 systemctl stop postfix 53端口 :域名解析服务 systemctl stop rhel-domainna ...