当前位置: 首页 > news >正文

Linux进程与服务管理

Linux进程与服务管理

文章目录

  • Linux进程与服务管理
    • 一、前言
    • 二、进程与服务管理
      • 2.1 进程的基本概述
        • 2.1.1 定义
        • 2.1.2 分类
      • 2.2 Linux进程相关指令详解
        • 2.2.1 查看进程:`ps`
        • 2.2.2 终止进程:`kill`
        • 2.2.3 案例
      • 2.3 查看进程树指令
      • 2.4 Linux服务器管理之service指令
        • 2.4.1 定义
        • 2.4.2 指令
      • 2.5 Linux服务管理之chkconfig指令
      • 2.6 Linux服务管理之systemctl指令
        • 2.6.1 查看服务
        • 2.6.2 参数
        • 2.6.3 关于开机自启动
      • 2.7 Linux服务指令之防火墙指令
        • 2.7.1 防火墙的作用
        • 2.7.2 指令
      • 2.8 Linux进程管理top指令
        • 2.8.1 `top`详解
        • 2.8.2 `top`指令的交互操作
        • 2.8.3 应用实例
      • 2.9 Linux网络监控指令netstat
        • 2.9.1 作用
        • 2.9.2 指令详解
    • 三、小结

一、前言

今天是关于进程和服务管理的相关介绍~

二、进程与服务管理

2.1 进程的基本概述

2.1.1 定义

进程就是每个正在执行的程序。

在Windows中怎么查看:

2.1.2 分类
  • 前台进程

    对屏幕的占用(没法做其他事情)

    top// 实时动态显示系统运行状态

  • 后台进程

    所有进程中占大多数比例

    用户看不到的,在系统的后台运行,一般在系统关机/重启会结束进程

    ps// 查看系统中有哪些进程运行

    PID:进程号

    TTY:终端机号

    TIME:当前进程消耗的CPU时间

    CMD:当前进程的名称或者执行对应进程的命令

    参数:

    选项含义
    -a显示进程终端的详细信息
    -u以用户格式显示进程信息
    -x显示后台进程运行的参数

    参数详解:

    USER:进程所属的用户信息

    VSZ:进程对于虚拟内存的占用大小

    %CPU:进程占用CPU的百分比

    %MEM:进程占用内存的百分比

    RSS:对于物理进程的占用大小

    STAT:进程的状态:S-sleep;R-run;Z(zombie)-僵死进程;T-被停止的进程

    START:进程的开启时间

    TIME:进程占用CPU的时间

    COMMAND:进程的名称或者进程启动需要用到的命令和参数

2.2 Linux进程相关指令详解

2.2.1 查看进程:ps
ps-ef // 使用全格式查看所有的进程信息 // -e: 所有进程 // -f: 全格式显示

上面是显示全部的进程,可不可以显示指定的进程呢?可以!这就需要过滤了

ps-ef|grepsshd // 查看sshd服务对应的进程

参数:

  • 第一列:进程所属的用户
  • 第二列:Linux所属的进程ID
  • 第三列:父进程
2.2.2 终止进程:kill
kill进程IDkill-9 进程ID // 强制杀死进程killall// 杀死当前进程及其子进程
2.2.3 案例
  • 强制让登录用户kobe下线

    先登录用户(再开一个终端)

    杀死进程

  • 终止远程登录服务sshd。不允许远程登录,然后重启sshd服务,允许远程登录

    (最好在图形化界面中实现)

    发现登不上去了(远程服务关掉了)

    经验贴:如果有一天远程登不上Linux了,但是在Linux内部可以登录,应该是sshd服务的问题

    /bin/systemctl start sshd.service // 重启sshd服务

    又可以登录了!

  • 终止多个gedit(记事本打开文件的进程)

    先打开多个文件

    会发现终端都消失了

  • 强制杀掉一个终端

    启动多个终端

    为什么没有退掉一个进程呢?

    系统认为打开两个窗口都是有作用的,不应该结束进程

    kill-9 进程号

    这样就可以删除一个终端了

2.3 查看进程树指令

pstree // 以树状的形式展示进程信息(仅显示了进程的名称) // 参数 // -p: 显示进程所属的pid // -u: 显示进程所属的用户

2.4 Linux服务器管理之service指令

2.4.1 定义

服务:运行在后台的进程,通常会监听窗口等待程序访问

2.4.2 指令
systemctl list-unit-files --type=service // 查看安装了哪些服务service服务名称 status // 查看服务状态service服务名称 start // 终止某服务service服务名称 stop // 启动某服务 systemctlenablesshd // 开机自启

2.5 Linux服务管理之chkconfig指令

在CentOS stream 9中,已经不存在这样的指令了。(这里做了解就可以了)

chkconfig--list // 查看服务的配置状态chkconfig--list|grep服务名称 // 仅查看某一个服务chkconfig--level5服务名称 on // 设置服务开关(一定要指定Linux的运行级别)

2.6 Linux服务管理之systemctl指令

service指令和config的指令慢慢都被systemctl替换了

2.6.1 查看服务

systemctl指令管理的服务在/usr/lib/systemd/system中查看

systemctl list-unit-files // 查看所有被systemctl管理的服务的名称

也可以仅用来查看某个服务

2.6.2 参数
systemctl start 服务名称 // 启动服务 systemctl status 服务名称 // 查看服务状态 systemctl stop 服务名称 // 停止服务 systemctl restart 服务名称 // 进行一些设置后,重启服务

2.6.3 关于开机自启动
systemctl is-enabled 服务名称 // 查看某一服务是否自启动 systemctlenable服务名称 // 设置服务自启动 systemctl disable 服务名称 // 设置为非自启动
服务状态含义
masked此服务禁止自启动
static该服务无法自启动,只能作为其他文件的依赖
enabled已设置为自启动
disabled未设置为自启动

2.7 Linux服务指令之防火墙指令

2.7.1 防火墙的作用

Linux内的程序如果要被外界访问,除了设置唯一的端口,还要设置防火墙,授权外界访问这个端口。

防火墙起到隔离的作用,保证服务访问的安全性。

2.7.2 指令
firewall-cmd --permanent --add-port=端口号/协议 // 打开端口/允许协议 firewall-cmd --permanent --remove-port=端口号/协议 // 关闭端口/禁用协议 firewall-cmd --query-port=端口/协议 // 查询端口/协议是否开启 firewall-cmd --list-ports // 查看防火墙所有开放的端口/协议配置 firewall-cmd --reload // 重载防火墙

以后安装了什么服务(如:数据库等),如果想让外界可以访问的话,必须设置防火墙

2.8 Linux进程管理top指令

topps一样,都是显示正在执行的进程信息。不同之处:top动态显示,每隔3ss刷新一次

2.8.1top详解
top

选项功能
-d秒数指定top命令每隔几秒刷新,默认3秒
-i使用top不显示任何闲置或者僵死的进程
-p通过指定监控ID来仅仅监控某个进程的状态

指标详解:

  • 21:28:03:top指令刷新的时间
  • up 7:47:当前Linux系统运行了多长时间
  • 4 users:连接当前Linux系统的用户数量
  • load average:Linux的负载值(3个数字相加除以3>0.7说明Linux的负载率比较高)
  • task:318 total:在Linux系统中总进程数
  • 1 running:正在运行的进程数量
  • 317 sleeping:休眠的进程数量
  • 0 stopped:被停止的进程数量
  • 0 zombie:僵死的进程数量
  • %Cpu(s):0.1 us:描述当前Linux系统的cpu占比
  • us,0.4:用户占用cpu的百分比
  • MiB Mem:3623.0 total:描述Linux的内存情况
  • 737.1 free:Linux系统中空闲的内存容量
  • 1342.5 used:已经使用的内存
  • 1832.0 buff/cache:缓存
  • MiB Swap:描述交换区的总内存(内存不够用时,交换机来“客串”一下)
2.8.2top指令的交互操作

当我们输入top命令后,我们可以按下面的字符来进行对应的交互操作。

操作功能
P以CPU使用率来排序,默认是此项
M以内存使用来排序
N以PID排序
q退出top
2.8.3 应用实例
  • 监控特定用户(前提是该用户登录了)

    先输入top指令,输入小写u,最后输入用户名然后回车,查看执行的进程

  • 终止指定的进程,比如结束kate登录

    top:输入此命令,然后回车,查看执行的进程

    输入k,然后输入要结束的进程ID号,回车之后输入9强制删除

2.9 Linux网络监控指令netstat

2.9.1 作用

netstat用来显示Linux内部的服务和外界程序的连接状态

2.9.2 指令详解
netstat-anp|more// -an: 按照一定的顺序排列输出 // -p: 显示哪个进程在调用

  • proto:网络协议。当前Linux后台服务进程和外界程序连接是遵循哪个网络协议
  • Local Address:本地的Linux的地址以及本地对应的进程的端口号
  • Foreign Address:外部的网络地址和端口
  • State:当前后台服务进程和外界程序之间的连接状态
    • ESTABLISHED:建立连接的状态
    • LISTEN:监听状态

如何理解Foreign Address呢?

查看指定服务的网络连接状态

netstat-anp|grepsshd // 查看sshd服务的网络连接状态

三、小结

这一章可谓是为项目在Linux的部署奠定基础具有重要的意义~

http://www.jsqmd.com/news/252921/

相关文章:

  • 书匠策AI:文献综述不是“抄摘要”,而是搭建你的学术对话舞台
  • Google重拳出击短信钓鱼黑产:一场横跨太平洋的“E-ZPass”骗局如何撕开数字信任防线?
  • 学术航海新伙伴:书匠策AI如何重塑文献综述写作图景
  • 伪装成“修复提示”的钓鱼陷阱:ClickFix 新变种借 OneNote/Google Docs 绕过企业防线,专家警告 MFA 也非万能
  • 书匠策AI:文献综述写作的“时空穿梭机”,解锁学术探索新维度
  • 文献综述新神器:书匠策AI,开启学术探索的“超维空间”
  • “Meta合规通知”成钓鱼新马甲:全球中小企业遭遇精准围猎,账号沦陷后损失远超想象
  • 基于django框架和python的的在线小说阅读平台设计与实现
  • 基于django的大学生选课系统的设计与实现
  • 基于stm32的智能花卉养殖系统(有完整资料)
  • 基于django的汽车试驾预约服务网站设计与实现
  • 基于单片机智能输液监控系统设计(有完整资料)
  • d3dx10_36.dll文件丢失如何修复? 附免费下载方法分享
  • 基于django的课程设计管理系统的设计与实现
  • 基于单片机的智能家电控制系统(有完整资料)
  • [C#]winform使用纯opencvsharp部署yolo26-cls图像分类的onnx模型
  • 黑暗森林法则:当测试AI遇到对抗性样本攻击
  • dinput8.dll文件丢失找不到如何修复? 免费下载方法分享
  • 如何把updater_sample 加在系统入口,
  • 韩国团队成功打印垂直纳米激光器
  • 智子阴影下的多维战场:AI测试的“降维打击”与升维防御
  • 自己写一个智能体-使用MCP服务
  • 【tensorRT从零起步高性能部署】16-TensorRT基础-核心组件、关键类、核心函数
  • 在家也能批量做爆款短视频!MoneyPrinterTurbo+cpolar让你告别手动剪辑!
  • AI Agent 深度解析:原理、架构与未来应用浪潮
  • 三分钟说清楚 ReAct Agent 的技术实现
  • 新一代AI直播场控系统,实现全平台高效管理,带完整的搭建部署教程
  • 什么是AI 智能体(Agent)
  • [MindSpore进阶] 摆脱 Model.train:详解函数式自动微分与自定义训练循环
  • [MindSpore进阶] 玩转昇腾算力:从自定义训练步到 @jit 图模式加速实战