【Linux 系列笔记】19 进程管理 和 服务管理


1.进程管理

(1)基本概念

  • 在 Linux 中,每个执行的程序(代码)都称为一个进程,每一个进程都被分配一个 ID 号;
  • 每一个进程都对应一个父进程,而父进程又可以复制多个子进程;
  • 每个进程都可能以两种方式存在—— 前台后台进程(守护进程)。前台进程就是屏幕上可见可操作的,后台进程则是不可见而实际也在操作的,直到关机才结束;
  • 一般系统的服务都是以后台进程的方式存在。

(2)查看系统进程 ps

1)ps (process status):查看当前系统进程执行情况,可以不加任何参数。

ps 【选项】

常用选项

-a:显示当前终端所有进程信息
-u:以用户格式显示进程信息
-x:显示后台进程运行的参数(通常 -aux 组合使用)
-ef:查看父进程(PPID 为父进程 ID)

例:

ps -ef  | more     (分页查看子进程、父进程)
ps -aux | grep sshd  (过滤,查看sshd服务)
ps -aux | more     (分页查看)
显示内容:
用户名称 进程ID CPU占有率 内存占有率 占虚拟内存大小 占物理内存大小 终端名称 进程状态 进程启动时间 使用CPU时间 启动进程所用的命令和参数

说明(STAT 进程状态):

S — 睡眠
s — 表示该进程是会话的先导进程
N — 表示进程拥有比普通优先级更低的优先级
R — 正在运行
D — 短期等待
Z — 僵死进程
T — 被跟踪或者被停止…

在这里插入图片描述
2)pstree (process status):查看进程树,更加直观。

pstree 【选项】

常用选项

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

(3)终止进程 kill

1)kill:结束进程(通过进程 ID 号)。

kill [选项} 进程号

常用选项

-9:强迫进程终止

例(如下图):

kill 3945   踢掉 Tom 用户
kill 2501   关掉远程服务(sshd),不能远程登录 Linux

在这里插入图片描述

2)killall:结束进程(通过进程名称)。

killall 进程名


2. 服务管理

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

(1)服务管理(临时)

1)service(CentOS 6)/ systemctl(CentOS 7):服务管理(指令虽然不一样,但用法是差不多的)(临时生效)。

service 服务名 [start | stop | restart | reload | status](启动、停止、重启、重载、状态)
systemctl [start | stop | restart | reload | status] 服务名

例:

service iptables status(查看防火墙状态,CentOS 7 改成了 firewalld —> systemctl status firewalld)

扩展:
telnet:在 Windows 命令窗口下,你可以输入下面指令,查看对方是否开启了某个端口(如果显示无 telnet 指令,直接左下角搜索 “启用或关闭Windows功能” — “Telnet Client”打对勾)。

telnet ip 端口号
例:telnet Linux ip地址 22(查看 Linux 22 端口是否开启)

(2)查看服务

  • 方式一:使用 setup 指令 —> 系统服务(按空格可以选中或取消,Tab 键可以切换按钮)

    setup

  • 方式二:在目录 /etc/init.d/ 下查看服务名

    ls -l /etc/init.d/

(3)服务的运行级别

运行级别在之前的博文已经讲得很细致了,可以跳转此链接阅读:CentOS 6 与 CentOS 7 运行级别详解

开机流程说明

开机 ——> BIOS ——> /boot ——> init 进程1 ——> 运行级别 ——> 运行级别对应的服务

(4)服务管理(永久)

每个服务在不同的运行级别下,自启动是不一样的,可以用 chkconfig 指令来设置。

chkconfig(CentOS 6):给每个服务的各个运行级别设置自启动/关闭

chkconfig --list
chkconfig --list | grep 服务名(过滤,查看想要的服务)
chkconfig 服务名 --list(同上,和grep 作用一样)

指定运行级别服务开启/关闭

chkconfig --level n(n为运行级别) 服务名 on / off


3. 动态监控进程和网络

(1)监控进程

top:top 与 ps 命令很相似,都用来显示正在执行的进程。top 与 ps 最大的不同之处在于 top 在执行一段时间可以更新正在运行的进程,类似于 Windows 的任务管理器。在 top 命令的交互模式当中可以执行的命令如下

top [选项]

常用选项:

-d 秒数:指定 top 命令每隔几秒更新,默认为 3s。
-i:使 top 不显示任何闲置或僵死进程
-p:通过指定监控进程 ID 仅监控某个进程状态

交互操作说明:

P:以 CPU 使用率排序
M:以内存的使用率排序
N:以 PID 排序
d:再输入更新时间,指定刷新频率
u:再输入用户名,可以查看指定用户进程
k:再输入 PID,可以终止指定进程
h:可以查看更多的交互操作指令
q:退出 top

(2)监控网络情况

netstat:查看网络情况。

netstat [选项]
例:netstat -anp | more

常用选项:

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

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值