htop:动态查看进程信息的命令
系统中没有安装对应的软件或者命令
[root@xingdiancloud-server ~]# htop
-bash: htop: command not found
[root@xingdiancloud-server ~]# yum -y install epel-release
[root@xingdiancloud-server ~]# yum -y install htop
yum 安装 ---> 下载 ----> yum仓库(BASE仓库 默认 + 扩展仓库EPEL)
F9 Kill 进程管理 现在F3搜索或者F4过滤找到对应的进程 F9发送 9信号(强制杀死)
网络进程
[root@xingdiancloud-server ~]# yum -y install net-tools
系统中安装的服务。 服务对应的端口 ssh 22 httpd 80 dhcp 68 ftp 21
netstat -auntpl
ss -auntpl
-a:所有
-u:查看UDP进程
-p:pid
-n:显示数字
-l:监听
-t:查看TCP进程
数据传输:
tcp:传输控制协议
udp:用户数据报协议
1.判断服务是否处于运行状态
ss -antpl 看到了80端口 ps top lso
2.系统那些进程使用TCP进行数据传输
ss -antpl
netstat -antpl
ss -anupl
3.TCP状态 11
CLOSED(关闭状态)。初始状态,表示TCP连接未建立
LISTEN(监听状态)。服务器等待客户端连接的状态
SYN_SENT(同步已发送状态)。客户端发送连接请求后等待服务器确认的状态。
SYN_RECEIVED(同步已接收状态)。服务器接收到客户端连接请求并发送确认后的状态。
ESTABLISHED(已建立状态)。表示TCP连接已成功建立,双方可以进行数据传输。
FIN_WAIT_1(等待对方FIN报文状态)。表示TCP连接的一方发送了关闭连接请求。
FIN_WAIT_2(等待对方关闭连接请求状态)。表示TCP连接的一方等待对方发送关闭连接请求。
TIME_WAIT(等待状态)。表示TCP连接关闭后的等待状态,用于确保数据的可靠传输。
CLOSE_WAIT(等待关闭状态)。表示TCP连接的一方接收到了对方的FIN报文,但尚未发送ACK。
LAST_ACK(最后确认状态)。表示TCP连接关闭前的最后确认状态,等待对方的FIN报文。
CLOSING(关闭状态)。表示TCP连接正在进行关闭过程
统计每个状态所对应的进程的数量
进程管理、控制 kill家族 kill killall pkill
信号
1 重新加载进程或重新加载配置文件
9 杀死进程
15 正常关闭(默认)
18 激活进程
19 挂起进程
yum -y install psmisc 这是在安装killall
如果是命令对应的进程或者该服务就一个进程:kill -9 pid 干掉该进程
如果是服务的进程,该服务有多个进程:pkill -9 进程名字 或者 killall -9 进程名字 干掉该服务
重新加载进程或者重新加载配置文件,目的就是为了让修改后的配置文件生效
sshd服务 假设修改了他的配置文件 为了让修改的配置文件生效
[root@xingdiancloud-server ~]# ps aux | grep sshd
[root@xingdiancloud-server ~]# kill -1 4954
这种方案,生效后服务对应进程的PID没有变
重启
[root@xingdiancloud-server ~]# systemctl restart sshd
这种方案,生效后服务对应进程的PID会改变
18激活
19挂起
案例:
[root@xingdiancloud-harbor ~]# pkill -9 -t pts/2 //指定终端干掉
[root@xingdiancloud-server ~]# pkill -9 -u xingdian //干掉指定用户进程
重定向和管道
文件描述符 进程用文件描述符来管理打开的文件
0:标准输入
1:标准正确输出
2:标准错误输出
$$:当前终端的PID echo $$ 获取当前终端的额PID
> 覆盖
>> 追加
1> 标准正确输出重定向覆盖
1>> 标准正确输出重定向追加
2> 标准错误输出重定向覆盖
2>> 标准错误输出重定向追加
& === 1+2 混合输出
< 输入 导入
mysql 数据库文件 数据的导入
将db.sql的数据库文件写入到db的库中,利用了重定向 输入/导入
mysql -uroot -pQianFeng@123 db < db.sql
服务器连通性检测 ping 脚本:默认使用非交互式命令
if 判断 如果
bash sh 执行脚本,脚本可以不需要有执行权限
./ / 执行脚本,脚本需要有执行权限
检测局域网中那些IP可用,那些IP不可用,检测局域网有那些主机
如果能够ping通,说明这个IP是可用还是不可用
10.9.25.100 ping通 这个IP正在被使用 不可用
10.9.25.0/24
利用重定向生成一个多行文件(脚本)
[root@xingdiancloud-server ~]# cat >> /opt/xingdian.b <<eof
> xingdian
> diandian
> hello
> hi
> eof
脚本生产多行文件
[root@xingdiancloud-server ~]# cat a.sh
#!/bin/bash
cat >> /opt/xingdian.o <<eof
xingdian
diandian
hello
hi
eof
利用重定向在脚本中生产多行配置文件