进程管理(重点)
clear 清屏
显示系统执行的进程
查看进程使用的指令 ps ,参数为 -aux
ps 详解
ps –aux | grep xxx
//看看有没有 xxx 服务,具体只看一个服务
ps -aux | more
//使用分页查看
ps -ef | more
//以全格式显示当前所有的进程,查看进程的父进程。
ps -ef | grep xxx
//查看某一进程的父进程
终止进程 kill 和 killall
介绍:
若是某个进程执行一半需要停止时,或是已消了很大的系统资源时,此时可以考虑停止该进程。使用kill命令来完成此项任务。
基本语法:
kill [选项] 进程号
(功能描述:通过进程号杀死进程 -9 强制终止)
killall 进程名称
(功能描述:通过进程名称杀死进程,也支持通配符,这在系统因负载过大而变得很慢时很有用)
常用选项:
-9 :表示强迫进程立即停止
最佳实践:
案例1:踢掉某个非法登录用户
[root@hadoop133 ~]# ps -aux | grep sshd
[root@hadoop133 ~]# kill 3922 //linjing@pts 的进程号
案例2: 终止远程登录服务 sshd, 在适当时候再次重启 sshd 服务
[root@hadoop133 ~]# kill 3908 // /usr/sbin/sshd 的进程号
案例3: 终止多个 gedit 编辑器
[root@hadoop133 ~]# killall gedit //killall:通过进程名称来终止进程,如父进程有多个子进程时。
案例4:强制杀掉一个终端 对于 bash ,也可自杀。
[root@hadoop133 ~]# ps -aux | grep bash //查看终端进程号 /bin/bash
[root@hadoop133 ~]# kill -9 3444
查看进程树 pstree
基本语法:
pstree [选项]
,可以更加直观的来看进程信息
常用选项:
-p :显示进程的 PID
-u :显示进程的所属用户
服务(service)管理
介绍:
服务(service) 本质就是进程,但是是运行在后台的,通常都会监听某个端口,等待其它程序的请求,比如(mysql , sshd 防火墙等),因此我们又称为守护进程,是 Linux 中非常重要的知识点。【原理图】
service管理指令:
service 服务名 [start | stop | restart | reload | status]
//启动/停止/重启/重载/状态
在 CentOS7.0 后 不再使用 service
,而是 systemctl
使用案例:
1) 查看当前防火墙的状况,关闭防火墙和重启防火墙。
Service iptables status/stop/start
//可打开 22 号端口,而不关闭防火墙
细节讨论:
关闭或者启用防火墙后,立即生效。[telnet 测试 某个端口即可]
//通过 telnet 指令检查 Linux 的某个端口是否在监听,并且可以访问
在 dos 下使用 telnet ip 端口
这种方式只是临时生效,当重启系统后,还是回归以前对服务的设置。 如果希望设置某个服务自启动或关闭永久生效,要使用 chkconfig 指令。
查看服务名:
方式1:使用 setup
-> 系统服务 就可以看到。
方式2: /etc/init.d/服务名称
【程序】
服务的运行级别(runlevel):
一个思考题
如果不小心将默认的运行级别设置成 0 或者 7 ,怎么处理?
进入单用户模式,修改成正常的即可
chkconfig 指令
介绍
通过 chkconfig 命令可以给每个服务的各个运行级别设置自启动/关闭
基本语法
1) 查看服务 chkconfig --list | grep xxx
//只查看 xxx 服务
2) chkconfig 服务名 --list
//只查看 xxx 服务
3) chkconfig --level 5 服务名 on/off
//可以指定某个服务,某各个运行级别,开启(on)或关闭(off) 。sshd 服务在 1 运行级别 off:Chkconfig –level 1 sshd off
4) chkconfig 服务名 on/off
//不管是哪个级别都开启/关闭。iptables 彻底关闭:chkconfig iptables off
应用实例:
1) 案例1: 请显示当前系统所有服务的各个运行级别的运行状态
bash > chkconfig –list
2) 案例2 :请查看 sshd 服务的运行状态
Chkconfig sshd –list 或者 chkconfig –list | grep sshd
3) 案例3: 将 sshd 服务在运行级别 5 下设置为不自动启动,看看有什么效果?
Chkconfig –level 5 sshd off
4) 案例4: 当运行级别为 5 时,关闭防火墙。
Chkconfig –level 5 iptables off
5) 案例5: 在所有运行级别下,关闭防火墙
Chkconfig iptables off
6) 案例6: 在所有运行级别下,开启防火墙
Chkconfig iptables on
使用细节
1) chkconfig 重新设置服务后自启动或关闭,重启机器 reboot 就会按设置的状态运行
动态监控进程
介绍:
top 与 ps 命令很相似。它们都用来显示正在执行的进程。Top 与 ps 最大的不同之处,在于 top 在执行一段时间可以更新正在运行的的进程(默认每3秒变化一次)。
基本语法:
top [选项]
应用实例:
案例1.如何监视特定用户
top
:输入此命令,按回车键,查看执行的进程。按 q 可退出
u
:然后输入“u”回车,再输入用户名,即可
案例2:如何终止指定的进程。
top
:输入此命令,按回车键,查看执行的进程。
k
:然后输入“k”回车,再输入要结束的进程 ID 号
案例3:指定系统状态更新的时间(每隔 10 秒自动更新,默认是 3 秒):
bash > top -d 10
监控网络状态
查看系统网络情况 netstat
基本语法
netstat [选项]
选项说明
-an 按一定顺序排列输出
-p 显示哪个进程在调用
应用案例
查看系统所有的网络服务
netstat -anp | more
请查看服务名为 sshd 的服务的信息。
bash > netstat –anp | grep sshd
crond 系统定时任务
见 定时任务调度 https://moistlin.cn/posts/%E5%AE%9A%E6%97%B6%E4%BB%BB%E5%8A%A1%E8%B0%83%E5%BA%A6
韧桂 2020-01-19