Linux实操篇-进程管理

article/2025/8/22 15:23:46

目录

  • 传送门
  • 前言
  • 一、进程管理概念
  • 二、进程管理实战
      • 1. **查看进程**
        • `ps` 命令
        • `top` 命令
        • `htop` 命令
      • 2. **进程的启动和终止**
        • 启动进程
        • 停止进程
        • 使用 `pkill` 或 `killall`
      • 3. **进程优先级管理**
        • `nice` 和 `renice` 命令
        • `top` 中调整进程优先级
      • 4. **进程的查看与控制**
        • `pgrep` 命令
        • `pstree` 命令
        • `strace` 命令
      • 5. **进程的后台和前台管理**
        • `fg` 和 `bg` 命令
        • `disown` 命令
      • 6. **系统进程和守护进程管理**
        • 使用 `systemd` 管理服务
      • 7. **资源限制和监控**
        • `ulimit` 命令
        • `lsof` 命令
      • 总结

传送门

SpringMVC的源码解析(精品)
Spring6的源码解析(精品)
SpringBoot3框架(精品)
MyBatis框架(精品)
MyBatis-Plus
SpringDataJPA
SpringCloudNetflix
SpringCloudAlibaba(精品)
Shiro
SpringSecurity
java的LOG日志框架
Activiti(敬请期待)
JDK8新特性
JDK9新特性
JDK10新特性
JDK11新特性
JDK12新特性
JDK13新特性
JDK14新特性
JDK15新特性
JDK16新特性
JDK17新特性
JDK18新特性
JDK19新特性
JDK20新特性
JDK21新特性
其他技术文章传送门入口

前言

不懂点Linux,都不好意思和别人说自己是开发,所以一些基础的必须掌握,同样的也是面试高频。

以下文章不定时更新…
Linux基础篇
Linux实操篇
Linux定制篇

一、进程管理概念

在这里插入图片描述
进程查询
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
进程终止
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

二、进程管理实战

在 Linux 系统中,进程管理是系统管理员和开发者日常操作中非常重要的一部分。进程是操作系统执行的一个程序的实例,涉及创建、调度、终止等多个方面。Linux 提供了多种命令和工具来管理进程。以下是一些常见的进程管理操作和相关命令的详细介绍。

1. 查看进程

ps 命令

ps 命令用于显示当前正在运行的进程。它有很多选项,可以自定义输出内容。

  • 查看所有进程:

    ps -ef
    
  • 查看当前用户的进程:

    ps -u <用户名>
    
  • 查看某个进程的详细信息:

    ps -p <进程ID>
    
  • 查看实时更新的进程信息:

    top
    
  • 查看所有进程(包括子进程):

    ps aux
    
top 命令

top 命令用于动态查看系统中运行的进程,并显示 CPU 和内存等资源使用情况。它会不断更新,默认每隔 3 秒刷新一次。

  • 启动 top

    top
    
  • top 界面中按下:

    • P:按 CPU 占用排序
    • M:按内存占用排序
    • q:退出 top
htop 命令

htoptop 命令的一个增强版,提供了更加友好的交互界面,但并不是所有系统默认安装,需要手动安装。

  • 安装 htop

    sudo apt-get install htop  # Debian/Ubuntu
    sudo yum install htop      # CentOS/RHEL
    
  • 启动 htop

    htop
    

2. 进程的启动和终止

启动进程
  • 使用后台执行程序:

    command &  # 在后台运行命令
    
  • 使用 nohup 命令启动进程并使其在终端关闭后继续运行:

    nohup command &  # 将命令放入后台并且忽略挂断信号
    
停止进程
  • 使用 kill 命令发送信号终止进程:

    kill <进程ID>  # 向进程发送 SIGTERM(默认)
    
  • 强制杀死进程(发送 SIGKILL 信号):

    kill -9 <进程ID>
    
  • 如果不确定进程的 ID,可以使用 pstop 命令查找。

使用 pkillkillall
  • pkill 允许通过进程名称来杀死进程:

    pkill <进程名称>
    
  • killall 也可以通过进程名称来终止进程:

    killall <进程名称>
    

3. 进程优先级管理

nicerenice 命令
  • nice 用于启动一个进程时指定其优先级,优先级值的范围是 -20(最高优先级)到 19(最低优先级),默认为 0。

    • 启动时设置优先级:
      nice -n 10 command  # 设置优先级为 10
      
  • renice 用于修改正在运行的进程的优先级:

    renice -n 5 -p <进程ID>  # 将进程的优先级设置为 5
    
top 中调整进程优先级

top 界面中,可以通过按下 r 键来修改进程的优先级(即调整 nice 值)。

4. 进程的查看与控制

pgrep 命令

pgrep 根据指定的模式查找进程,并返回匹配的进程 ID。

  • 查找名为 apache2 的进程:
    pgrep apache2
    
pstree 命令

pstree 显示进程树,显示进程间的父子关系。

  • 查看进程树:

    pstree
    
  • 查看特定进程的进程树:

    pstree <进程ID>
    
strace 命令

strace 用于跟踪系统调用和信号,可以帮助你调试和分析进程的行为。

  • 跟踪一个进程:

    strace -p <进程ID>
    
  • 跟踪一个命令的系统调用:

    strace command
    

5. 进程的后台和前台管理

fgbg 命令
  • fg 命令将后台进程带到前台:

    fg %1  # 将作业号为 1 的后台进程带到前台
    
  • bg 命令将暂停的进程放到后台继续运行:

    bg %1  # 将作业号为 1 的进程放到后台
    
  • 查看后台进程:

    jobs
    
disown 命令

disown 命令用于从 shell 的作业表中移除一个作业,使其在退出终端时不被终止。

command &  # 启动一个后台进程
disown %1  # 移除作业号为 1 的进程

6. 系统进程和守护进程管理

使用 systemd 管理服务

现代 Linux 系统(如 Ubuntu 16.04 及更高版本、CentOS 7 及更高版本)使用 systemd 来管理系统进程和服务。常见的命令包括:

  • 查看正在运行的服务:

    systemctl list-units --type=service
    
  • 启动服务:

    sudo systemctl start <服务名称>
    
  • 停止服务:

    sudo systemctl stop <服务名称>
    
  • 重启服务:

    sudo systemctl restart <服务名称>
    
  • 启用服务开机启动:

    sudo systemctl enable <服务名称>
    
  • 禁用服务开机启动:

    sudo systemctl disable <服务名称>
    
  • 查看服务状态:

    systemctl status <服务名称>
    

7. 资源限制和监控

ulimit 命令

ulimit 用于显示或设置进程可以使用的资源限制(如最大文件描述符、最大进程数等)。

  • 查看当前限制:

    ulimit -a
    
  • 设置资源限制(例如,设置最大文件打开数为 1024):

    ulimit -n 1024
    
lsof 命令

lsof 用于列出当前系统中打开的文件及与其相关的进程。这个工具对调试和管理资源非常有用。

  • 查看某个进程打开的文件:

    lsof -p <进程ID>
    
  • 查看某个文件被哪些进程打开:

    lsof <文件路径>
    

总结

  • 查看进程:使用 pstophtoppstree 命令。
  • 管理进程:使用 killpkillkillallbgfgdisown 等命令。
  • 进程优先级:通过 nicerenice 调整进程的优先级。
  • 后台管理:使用 bgfg 将进程移到后台或前台。
  • 系统服务管理:使用 systemctl 管理守护进程和服务。

这些工具和命令是 Linux 系统中进程管理的基本组成部分,掌握它们能帮助你更高效地管理和调试系统中的进程。


http://www.hkcw.cn/article/RKDmbdtlYD.shtml

相关文章

DAY 14 SHAP库的绘制

上面这个图就是一个比较直观的解释。机器学习模型一般都是一个黑盒。比如某个模型要进行一些预测任务&#xff0c;首先对模型输入一些已知条件&#xff08;Age65,SexF,BP180,BMI40&#xff09;&#xff0c;然后模型根据输入进行训练&#xff0c;最终训练完的模型可以对该条件输…

如何避免客户频繁更换对接人

避免客户频繁更换对接人的关键措施包括建立稳定的客户关系、提高客户对接人的专业素养、建立高效的沟通机制、增强客户满意度等。其中&#xff0c;建立稳定的客户关系是避免客户频繁更换对接人的核心&#xff0c;只有当客户信任你的对接人并认可其专业性&#xff0c;才会持续稳…

5.29打卡

浙大疏锦行 DAY 38 Dataset和Dataloader类 知识点回顾&#xff1a; 1. Dataset类的__getitem__和__len__方法&#xff08;本质是python的特殊方法&#xff09; 2. Dataloader类 3. minist手写数据集的了解 作业&#xff1a;了解下cifar数据集&#xff0c;尝试获取其中一张图…

【芯片设计中的交通网络革命:Crossbar与NoC架构的博弈C架构的博弈】

在芯片设计领域&#xff0c;总线架构如同城市交通网&#xff0c;决定了数据流的通行效率。随着AI芯片、车载芯片等复杂场景的爆发式增长&#xff0c;传统总线架构正面临前所未有的挑战。本文将深入解析两大主流互连架构——Crossbar与NoC的优劣&#xff0c;揭示芯片"交通网…

官方将调查小车坠桥事故车道设计 四车道突收窄引关注

官方将调查小车坠桥事故车道设计 四车道突收窄引关注!近日,广东东莞环莞快速路虎门段发生了一起严重的交通事故。5月19日,一名网友称其侄儿驾车经过该路段时,由于四车道突然收窄为三车道,车辆失控从高架冲出路面,造成车上5人伤亡。5月29日,广东虎门镇“519”事故工作专班…

中国航天史上最长任务开启 谁来接力“天问”?

5月29日,天问二号任务发射圆满成功,我国开启小行星探测与采样返回之旅。天问二号任务设计周期10年左右,如此长的任务周期,是否拉开了太空探索新的序幕?此次任务的“双目标探测”探什么?有多难?天问二号的十年之约对于我们的航天人才储备意味着什么?中国航天史上最长太空…

雪龙2号将面向公众开放:极地科考成果展示

5月28日,“雪龙2”号极地科考破冰船抵达海南海口,标志着中国第41次南极考察队顺利完成全部考察任务。“雪龙2”号计划近期举办公众开放日活动,这是该船首次抵琼并面向公众开放。“雪龙2”号于2024年11月1日从广州出发,历时208天,总航程超过4万海里。此次考察的最大亮点在于…

Kubernetes 中部署 kube-state-metrics 及 Prometheus 监控配置实战

文章目录 Kubernetes 中部署 kube-state-metrics 及 Prometheus 监控配置实战环境准备创建监控命名空间准备配置文件创建 ServiceAccount配置 RBAC 权限部署 kube-state-metrics部署node_exporter(可选)验证服务账号 TokenPrometheus 配置示例小结验证增加Grafana面板增加prome…

【大模型02】Deepseek使用和prompt工程

文章目录 DeepSeekDeepseek 的创新MLA &#xff08;低秩近似&#xff09; MOE 混合专家混合精度框架总结DeepSeek-V3 与 DeepSeek R1 DeepSeek 私有化部署算例市场&#xff1a; autoDLVllM 使用Ollma复习 API 调用deepseek-r1Prompt 提示词工程Prompt 实战设置API Keycot 示例p…

价格暴跌近50%!“榴莲自由”要来了?进口水果降价潮

对于水果爱好者来说,今年是个特别“甜蜜”的年份。从年初开始,车厘子、蓝莓等曾经价格较高的水果纷纷降价。最近,“水果之王”榴莲也大量上市了,价格持续下降,“榴莲自由”似乎近在眼前。初夏时节,菠萝蜜、山竹、荔枝、桃子等各种水果相继上市。在浙江,记者观察到榴莲的…

我国科学家揭示青藏高原“幽灵祖先”遗传起源之谜

记者从中国科学院古脊椎动物与古人类研究所获悉,该研究所付巧妹研究团队和云南省文物考古研究所,联合四川大学、兰州大学、西北大学等机构,历经9年成功捕获和测序了来自17个遗址的127例距今7100年以来的云南古代人类基因组。该研究不仅填补了东亚和东南亚史前人群遗传数据的…

中央巡视组进驻后 “亚洲最大医院”原院长被查 医疗巨无霸掌门人落马

5月29日上午,河南省纪委监委通报了河南省政协人口资源环境委员会主任阚全程涉嫌严重违纪违法的消息。目前,他正接受纪律审查和监察调查。阚全程这个名字对很多人来说并不陌生。他曾担任河南省卫生健康委主任长达五年,并长期执掌郑州大学第一附属医院。在他的领导下,该医院启…

UniApp X:鸿蒙原生开发的机会与DCloud的崛起之路·优雅草卓伊凡

UniApp X&#xff1a;鸿蒙原生开发的机会与DCloud的崛起之路优雅草卓伊凡 有句话至少先说&#xff0c;混开框架中目前uniapp x是率先支持了鸿蒙next的开发的&#xff0c;这点来说 先进了很多&#xff0c;也懂得审时度势。 一、UniApp X如何支持鸿蒙原生应用&#xff1f; UniAp…

FreeRTOS---任务创建与删除

FreeRTOS—任务创建与删除 1 基本概念 在多任务系统里面&#xff0c;任务有以下三大要素&#xff1a; 做何事&#xff1a;函数栈和TCB优先级 对于每个任务我们得确定它做何事&#xff0c;这个可以通过函数去实现。每个任务需要设置不同的栈&#xff0c;同时还需要设置TCB结构…

梅花鹿遭野狗追逐坠落死亡 流浪狗围猎问题频发

梅花鹿遭野狗追逐坠落死亡 流浪狗围猎问题频发!近日,有网友称近一周来,辽宁大连有数只梅花鹿遭流浪狗撕咬死亡,还有梅花鹿在被狗群追逐时从高处坠落死亡。5月27日凌晨,一只母鹿遭狗群追逐从土墙上坠落摔伤,全身多处撕咬伤,后经抢救无效死亡。据大连野境自然保护中心介绍…

这场峰会捅了美国痛点 东盟联手应对关税挑战

这场峰会捅了美国痛点 东盟联手应对关税挑战!东盟、中国与海合会再开启“新篇章”。5月27日下午,首届东盟-中国-海合会峰会在马来西亚吉隆坡召开。从东亚合作扩展到跨区域合作,三方在峰会上首次正式会面,标志着区域合作进入全新阶段,具有重要的里程碑意义。东盟和中国作…

【HW系列】—HTTP协议详解

文章目录 HTTP协议介绍HTTP协议拆分统一资源定位符&#xff08;URL&#xff09;HTTP请求的四个部分1. 请求行&#xff08;Request Line&#xff09;2. 请求头&#xff08;Headers&#xff09;3. 空行&#xff08;CRLF&#xff09;4. 请求体&#xff08;Body&#xff09; HTTP服…

缺兵少将!许利民:全运会的比赛不可控因素很大 要把每场比赛打好 克服伤病迎战全运

28日,北京队在首钢篮球中心举行备战第十五届全国运动会男篮成年组公开训练。球队主教练许利民表示,要克服伤病困难,打好每场比赛。此次征战全运会的北京队主要由中国男子篮球职业联赛(CBA)北京首钢队和北控队队员组成。许利民提到,队员们刚结束联赛比赛,部分队员有伤病情…

华为OD机试真题——报文回路(2025A卷:100分)Java/python/JavaScript/C/C++/GO最佳实现

2025 A卷 100分 题型 本专栏内全部题目均提供Java、python、JavaScript、C、C++、GO六种语言的最佳实现方式; 并且每种语言均涵盖详细的问题分析、解题思路、代码实现、代码详解、3个测试用例以及综合分析; 本文收录于专栏:《2025华为OD真题目录+全流程解析+备考攻略+经验分…

CPP中CAS std::chrono 信号量与Any类的手动实现

前言 CAS&#xff08;Compare and Swap&#xff09; 是一种用于多线程同步的原子指令。它通过比较和交换操作来确保数据的一致性和线程安全性。CAS操作涉及三个操作数&#xff1a;内存位置V、预期值E和新值U。当且仅当内存位置V的值与预期值E相等时&#xff0c;CAS才会将内存位…