Linux进程与服务管理

一、进程的基本介绍

  • 在LINUX中,每个执行的**程序(代码)**都称为一个进程。每一个进程都分配一个ID号。
  • 每一个进程,都会对应一个父进程,而这个父进程可以复制多个子进程。
  • 每个进程都可能以两种方式存在的。前台与后台,所谓前台进程就是用户目前的屏幕上可以进行操作的。后台进程则是实际在操作,但由于屏幕上无法看到的进程,通常使用后台方式执行。
  • 一般系统的服务都是以后台进程的方式存在,而且都会常驻在系统中。直到关机才才结束。

二、常用命令

ps命令  用来显示进程的状态通常会配合管道符一起使用
ps [选项]
常用选项
-a 显示当前终端的所有进程信息
-u 以用户的格式显示进程信息
-x 显示后台进程运行的参数
-e 显示所有进程
-f 全格式,显示UID,PPIP,C与STIME栏位
 
# 常用组合
ps -aux 
ps -ef

2.1、ps -aux 命令

image-20200914224530155

  • USER:用户名称
  • PID:进程号
  • %CPU:进程占用CPU的百分比
  • %MEM:进程占用物理内存的百分比
  • VSZ:进程占用的虚拟内存大小(单位:KB
  • RSS:进程占用的物理内存大小(单位:KB
  • TTY:终端名称缩写
  • STAT:进程状态,其中S-睡眠,s-表示该进程是会话的先导进程,N-表示进程拥有比普通优先级更低的优先级,R-正在运行,D-短期等待,Z-僵死进程,T-被跟踪或者被停止等等
  • START:进程的启动时间
  • TIME:CPU时间,即进程使用CPU的总时间
  • COMMAND:启动进程所用的命令和参数

2.2、ps -ef命令

ps -ef # 以全格式显示当前所有的进程,查看进程的父进程。
-e 显示所有进程
-f 全格式,显示UID,PPIP,C与STIME栏位

image-20200915144746168

  • UID:用户ID
  • PID:进程ID
  • PPID:父进程ID
  • C:CPU用于计算执行优先级的因子。数值越大,表明进程是CPU密集型运算,执行优先级会降低;数值越小,表明进程是I/O密集型运算,执行优先级会提高。
  • STIME:进程启动的时间
  • TTY:完整的终端名称
  • TIME:CPU时间
  • CMD:启动进程所用的命令和参数

ps -ef 和ps -aux 的显示是以两种不同的风格,-ef是以BSD风格显示,-aux是以System V风格展示

2.3、终止进程kill与kill all

  1. kill正如这个单词的意思一样,就是杀死。linux系统中kill命令用来删除执行中的程序或工作。kill命令可将指定的信号发送给相应的进程或工作。 kill命令默认使用信号为15,用于结束进程或工作。如果进程或工作忽略此信号,则可以使用信号9,强制杀死进程或作业。
kill [选项] [进程号] #杀死进程
常用选项
-l	列出系统支持的信号
-s	指定向进程发送的信号
-a	处理当前进程时不限制命令名和进程号的对应关系
-p	指定kill命令只打印相关进程的进程号,而不发送任何信号
# 强制杀死进程
kill -9 [进程号]
  1. killall命令使用进程的名称来杀死进程,使用此指令可以杀死一组同名进程。
kill [选项] [进程名称]
常用选项
-e	对长名称进行精确匹配
-l	打印所有已知信号列表
-p	杀死进程所属的进程组
-i	交互式杀死进程,杀死进程前需要进行确认
-r	使用正规表达式匹配要杀死的进程名称
-s	用指定的进程号代替默认信号“SIGTERM”
-u	杀死指定用户的进程
  1. pstree命令,Linux系统中pstree命令的英文全称是“process tree”,即将所有行程以树状图显示,树状图将会以 pid (如果有指定) 或是以 init 这个基本行程为根 (root),如果有指定使用者 id,则树状图会只显示该使用者所拥有的行程。

    #命令
    pstree [选项]
    常用选项
    -p # 显示当前所有进程的进程号和进程id
    -u # 显示进程的所属用户
    -a #显示每个程序的完整指令,包含路径,参数或是常驻服务的标示
    -h #列出树状图时,特别标明现在执行的程序
    

三、top命令 动态查看进程

top [选项]
常用选项
-d # 改变显示的更新速度 或者在交互模式下按s
-c # 显示完整的进程信息
-n # 更新的次数,完成后将会退出 top
-i # 不显示任何闲置 (idle) 或无用 (zombie) 的行程
-p # 通过制定监控ID来仅仅监控某个进程的状态

image-20200915202522961

交互模式操作说明:

image-20200915203024515

u : 查看指定用户的进程

k: 杀死想要杀死的进程

四、netstat查看系统网络情况

netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等。从整体上看,netstat的输出结果可以分为两个部分:一个是Active Internet connections,称为有源TCP连接,其中”Recv-Q”和”Send-Q”指%0A的是接收队列和发送队列。这些数字一般都应该是0。如果不是则表示软件包正在队列中堆积。这种情况只能在非常少的情况见到;另一个是Active UNIX domain sockets,称为有源Unix域套接口(和网络套接字一样,但是只能用于本机通信,性能可以提高一倍)。

Active Internet connections

扫描二维码关注公众号,回复: 11847009 查看本文章

image-20200915204123561

Active UNIX domain sockets

image-20200915204159783

#netstat命令
-a #显示所有连线中的Socket
-p #显示正在使用Socket的程序识别码和程序名称
-u #显示UDP传输协议的连线状况
-i #显示网络界面信息表单
-n #直接使用IP地址,不通过域名服务器
#显示UDP端口号和使用情况
net -apu

image-20200915204655104

# 显示网卡列表
netstat -i

image-20200915204803396

五、服务管理

​ 服务(service) 本质就是进程,但是是运行在后台的,通常都会监听某个端口,等待其它程序的请求,比如(mysql , sshd 防火墙等),因此我们又称为守护进程。对于服务管理指令,centos7之前通常使用命令service。在CentOS7.0后 不再使用service ,而是 systemctl。

​ Centos7之后从init完全换成了systemd的启动方式,systemd 启动服务的机制主要是通过 systemctl 的这个系统服务管理指令来处理。systemctl在用法上也囊括 service / chkconfig / setup / init 的大部分功能。

#命令格式 
systemctl [选项] [服务]
常用选项
-start	# 启动服务
-stop	# 停止服务
-restart	# 重启服务
-enable	# 使某服务开机自启
-disable	# 关闭某服务开机自启
-status	# 查看服务状态
systemctl list-units --type=service # 列举所有已启动服务(unit单元) 

关于服务的常用命令

# 查看ip地址
ifconfig

# 查看防火墙的状态
systemctl list-unit-files|grep firewalld.service 
systemctl status firewalld.service

#关闭防火墙
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
启动一个服务:systemctl start firewalld.service
关闭一个服务:systemctl stop firewalld.service
重启一个服务:systemctl restart firewalld.service
显示一个服务的状态:systemctl status firewalld.service
在开机时启用一个服务:systemctl enable firewalld.service
在开机时禁用一个服务:systemctl disable firewalld.service
查看服务是否开机启动:systemctl is-enabled firewalld.service
查看已经启动的服务:systemctl list-unit-files|grep enabled

查看防火墙开放的端口:firewall-cmd --list-ports
开启端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
命令含义:
–zone #作用域
–add-port=80/tcp #添加端口,格式为:端口/通讯协议
–permanent #永久生效,没有此参数重启后失效

参考链接:https://www.cnblogs.com/programmer-tlh/p/11593330.html

猜你喜欢

转载自blog.csdn.net/qq_44134480/article/details/108609663
今日推荐