漳州市网站建设_网站建设公司_导航易用性_seo优化
2026/1/16 11:03:17 网站建设 项目流程

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的部署奠定基础具有重要的意义~

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询