文章目录
1、在Linux中,每个执行的程序都称为一个进程。每一个进程都分配一个ID号(pid,进程号)
2、每一个进程都可能以两种方式存在 前台后台 所谓前台就是用户目前的屏幕上可以进行操作的 后台
则是实际在操作,但由于屏幕上无法看到进程通常使用后台方式执行
一般系统的服务都是以后台方式存在 而且都会常驻在系统中,知道关机才结束
显示系统执行的进程
ps 基本介绍
pid 进程号
ps命令时用来查看目前系统中 有哪些正在执行,以及他们执行的状态,可以不加任何参数
ps -a:显示当前中断的所有进程信息
ps -u:以用户的格式显示进程信息
ps -x:显示后台进程运行的参数
ps -aux | grep sshd
查看sshd 进程
查看父子进程
ps -ef 是以全格式显示当前所有的进程
-e显示所有进程 -f 全格式 ps -ef|grep xxx
要求以显示当前所有的进程 查看进程的父进程
终止进程kill 和 killall
若某个线程执行一半要停止时,或已消了很大的系统资源时,此时可以考虑停止该进程使用kill命令来完成此项任务
基本语法
kill [选项] 进程号 通过进程号 终止进程
killall [进程名称] 通过进程名称终止名称,也支持通配符 在这系统因负载过大而变得很慢时很有用
常用选项
-9 表示强迫进程立即停止
案例: 踢掉某个非法登录用户
kill 进程号 比如 kill 11421
案例2:终止远程登录服务sshd 在适当再次重启sshd服务
重启线程:/bin/systemctl/ start sshd.service
查看进程树pstree
基本语法:
pstree 【选项】 可以更加直观得来看进程信息
常用选项
-p 显示进程得pid
-u 显示进程得所属用户
服务(Service)管理
服务介绍本质就是进程但是运行在后台 通常都会监听某个端口 等待其他程序得请求 比如mysql sshd 防火墙
又称之为守护线程 是linux中非常重要的知识点
service管理指令
1、service 服务名 start stop restart reload status
2、很多服务我们不是用的 而是 systemctl
3、service 指令管理的服务在/etc/init.d查看
service 管理指令案例
1、service 指令 查看 关闭 启动 network
ls -l /etc/init.d
2、查看服务的状态
service network status
开机流程 开机-BIOS-/boot-systemd/运行级别/运行级别对应的服务
chkconfig指令
1、通过chkconfig 命令可以给服务的各个运行级别设置级别设置自动启动关闭
2、chkconfig 指令管理的服务在/etc/init.d
3、很多服务使用systemctl管理
chkconfig基本语法
查看服务 chkconfig --list【|grep xxx】
chkconfig 服务名 --list
chkconfig --level 5 服务名 on/off
systemctl管理指令
1、基本语法 systemctl 【start|stop|restart|status】
2、systemctl 指令管理的服务在/usr/lib/systemd/system 查看
systemctl list-unit-files 【|grep 服务名】 查看服务开机状态 grep 进行过滤
systemctl enable 服务名 设置服务开机启动
systemctl disable 服务名 关闭服务开机启动
systemctl is-enable 服务名 查询某个服务是否自动开启
查看防火墙的是否启动
systemctl status firewalld
firewall指令
打开端口:firewall-cmd – permanent --add-port=端口/协议
关闭端口:firewall-cmd–permanent --remove-port=端口/协议
重新载入才能生效firewall-cmd–reload
查询端口是否开放 firewall-cmd --query-port=端口/协议
eg:
开放111端口
firewall-cmd --query-port=111/tcp
需要重新加载
firewall-cmd --reload
再次关闭111端口
firewall-cmd – permanent --remove-port=111/tcp
再次需要firewall-cmd --reload
动态监控进程
top
top与ps命令相似用来显示正在执行的进程 top/ps最大不同 top再执行一段时间可以更新正在运行的进程
基本语法
top -d每隔几秒 指定top命令每隔几秒更新默认是3s -i 使top不显示任何闲置线程
-p 通过指定进程id来仅仅监控某个线程状态
交互操作说明
-p 以cpu使用就是默认选项
M 以内存的使用率排序
N以pid排序
q 退出top
监控网络状态
netstat
基本用法
netstat 【选项】
选项说明
-an 按一定顺序排序排列输出
-p 显示那个进程在调用
eg:查看服务名为sshd的服务信息
netstat -an |grep sshd