linux学习:进程管理

基本介绍:

  1. 在linux中,每个执行的程序都称为一个进程,每一个进程都分配一个ID号(pid,进程号)。

  2. 每个进程都可能以两种方式存在。前台与后台,所谓前台进程就是用户目前的屏幕上可以进行操作的。后台进程则是实际在操作,但由于屏幕无法看到的进程,通常使用后台方式执行

  3. 一般系统的服务都是以后台进程的方式存在,而且都会常驻在系统中,直到关机才结束

  • 显示系统执行的进程

ps命令是用来查看系统中,有哪些正在执行,以及他们的状况。可以不加任何参数

ps显示的信息选项: PID:进程识别号 TTY:终端机号 TIME:此进程所消CPU时间 CMD:正在执行的命令或者进程名

ps -a:显示当前终端的所有进程信息

ps -u:以用户的格式显示进程信息

ps -x:显示后台进程运行的参数

一般组合使用:ps -aux | more

USERPID%CPUVSZRSSTTYSTATSTARTTIMECOMMAND
进程执行用户进程号占用CPU百分比占用虚拟内存(KB)占用物理内存(KB)终端运行状态,s表示sleep休眠,r:运行状态执行开始的时间占用的CPU时间进程名,执行该进程的指令

指令:ps -aux | grep xxx 过滤看有没有sshd服务:ps -aux | grep sshd

实例:以全格式显示当前的所有进程,查看进程的父进程

查看sshd的父进程:ps -ef | grep sshd

ps -ef是以全格式显示当前的所有进程

-e 显示所有格式 -f 全格式

ps -ef | grep xxx

UID:用户ID

PID:进程ID

PPID:父进程ID

C:CPU用于计算执行优先级的因子。数值越大,表明进程是CPU密集型运算,执行优先级会降低;数值越小,表明进程是I/O密集型运算,执行优先级会提高

STIME:进程启动的时间

TTY:完整的终端时间

TIME:CPU时间

CMD:启动进程所用的命令和参数

终止进程 kill 和 killall

介绍:若是某个进程执行到一般需要停止时,或是已消耗了很大的计算资源,可以考虑停止该进程。使用kill命令来完成此任务

基本语法:

kill [选项] 进程号

killall 进程名称 子进程也会被终止

-9 :表示强迫进程立即停止

查看进程树pstree

基本语法:pstree [选项],可以更加直观的来看进程信息

pstree -p 显示进程的PID

pstree -u 显示进程的所属用户

服务(service)管理

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

  • service管理指令

  1. service 服务名 [strat | stop | restart | reload | status] 【表示可选】

  2. 在CentOS7.0后 很多服务不再使用service,而是 systemctl

  3. 还用service指令管理的服务在 /etc/init.d 查看 :ls -l /etc/init.d/

查看所有服务名:setup

查看当前运行级别:systemctl get-default

  • systemctl 管理指令

  1. 基本语法:systemctl [start|stop|restart|status] 服务名

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

  3. systrmctl list-unit-files [ | grep 服务名] (查看服务开机启动状态,grep可以进行过滤)

  4. systemctl enable 服务名(设置服务开机启动)

  5. systemctl disable 服务名(关闭服务开机启动)

  6. systemctl is-enable 服务名 (查询某个服务是否是自启动的)

应用案例:查看当前防火墙的状况,关闭防火墙和重启防火墙

systemctl list-unit-files | grep firewalld.service

systemctl status firewalld

systemctl stop firewalld

systemctl start firewalld

这种只是临时生效,如果希望设置某个服务器自启动或关闭永久生效,要使用 systemctl [enable|diaable] 服务名

  • 打开或者关闭指定端口

firewall指令

打开端口:firewall-cmd --permanent --add-port=端口号/协议

打开端口:firewall-cmd --permanent --remove-port=端口号/协议

重新载入,才能生效:firewall-cmd --reload

查询端口是否开放:firewall-cmd --query-port=端口/协议

动态监控进程

top与ps命令相似。都用来显示正在执行的进程,top与ps最大的不同在于top在执行一段时间可以更新正在运行的进程。

top [选项]

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

交互操作说明:

操作功能
P以CPU使用率排序,默认就是此项
M以内存的使用率排序
N以PID排序
q退出top

监控网络状态

netstat [选项]

-an 按一定顺序排列输出

-p 显示哪个进程在调用

  • 检测主机连接命令ping

网络检测工具,它主要是用检测远程主机是否正常,或是两主机间的网线或网卡故障

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值