基本介绍
- 在LInux中每一个执行的程序成为进程,每个进程都会分配一个id号
- 每个进程都可能以两种方式存在。前台与后台,所谓前台就是用户目前的屏幕上可以进行操作的。后台则是实际上在运行,而屏幕上无法看到的进程,通常使用后台方式进行。
- 一般系统服务都是以后台进程方式存在,而且常驻在系统中。知到关机才结束
显示系统执行的进程
ps命令是用来查看目前系统中。有哪些进程在执行,以及他们的执行情况。可以不加任何参数
ps详解
应用实例
终止进程kill和killall
基本语法
kill [选项] 进程号
:通过进程号终止进程
killall 进程名称
:通过进程名终止进程,也支持通配符,这在系统因负载过大而变得很慢时很有用
-9:表示强迫进程立即停止
查看进程树 pstree
基本语法
:pstree [选项],可以更加直观的来看进程信息
常用选项
:-p:显示进程的PID
-u:显示进程的所属用户
服务(service)管理
服务的本质就是进程,但是运行在后台,通常都会监听某个端口,等待其他程序的请求,比如(mysqld,sshd,防火墙等),因此我们称为守护进程,是linux的重要内容
service管理指令
- service 服务名 [start | stop | restart | reload |status ]
- 在Centos7后,很多的服务不再使用service管理,而是使用是systemctl管理
-
service指令管理的服务在/etc/init.d查看
实例
查看服务名
setup
注意:这里想要退出,tab键可以返回到键盘操作
服务的运行级别(runlevel)
开机的流程说明
Centos7后的运行级别说明
在/etc/initab
进行了简化,如下
multi-user.target=level 3
graphical.target=level 5
查看当前运行级别:systemctl get-default
设置当前运行级别:systemctl set-default TARGET.target
chkconfig指令
通过chkconfig命令可以给服务的各个运行级别设置自 启动/关闭
chkconfig指令管理的服务在/etc/init.d 查看
基本语法
- 查看服务 chkconfig –list | [grep xxx]
- chkconfig 服务名 –list
- chkconfig –level 5 服务名 on/off
使用细节:重新设置服务自启动或者关闭,需要重启机器reboot生效
systemctl管理指令
基本语法
:systemctl [start | stop | reload | restart | status] 服务名
system指令管理的服务在/user/lib/systemctl/system 查看
systemctl设置服务的自启动状态
systemctl list-unit-files [|grep 服务名](查看服务的开机自启动状态,grep可以进行过滤)
systemctl enable 服务名 (设置服务开机自启动)
systemctl disenable 服务名 (关闭设置服务开机自启动)
systemctl is-enabled 服务名 (查询服务开机是否自启动)
注意:如果希望某个服务自启动或挂壁永久生效,要使用systemctl [enable | disenable] 服务名
Firewalls指令
打开端口:firewall-cmd –permanent –add-port=端口号/协议
关闭端口:firewall-cmd –permanent –remove=port=端口号/协议
重载端口才能生效:firewall-cmd –reload
查询端口是否开放:firewall-cmd –query-port=端口/协议
动态监控进程
top与ps类似,的批示用来显示正在运行的进程。top与ps的最大区别,就是top在运行与短时间后,可以更新正在运行的进程。
基本语法
:top [选项]
选项说明
交互操作说明
应用实例
监控网络状态
查看系统网络状况netstat
基本语法
:netstat [选项]
选项使用说明
:
-an 按一定的顺序排列输出
-p 显示哪个进程在调用
应用案例
检测主机连接命令ping
是一种网络检测工具,它主要是用来检测远程主机是否正常,或是两部主机间的网线或网卡故障
总结
这章的内容很多显示系统正在运行的指令ps和top,以及他们的区别。终止进程kill和killall,以及进程树pstree。最重要的服务管理,service,chkconfig,以及目前最重要的systemctl进程管理。最后动态监控进程,监控网络状态。