情况说明
了解到服务器TOP命令卡死,无法通过Ctrl+C或者其他任何命令结束进程.
错误排查
- 使用普通用户登录操作系统,正常登陆
- 检查df -h命令正常
- ls top等命令卡死
- su到root用户,尝试使用上述命令,仍然卡死
- 使用ls查看根目录下/etc/fstab文件,检查无额外挂载点未挂载
- 经排查,在非/目录下,使用上述任意命令均为正常.
- 怀疑/目录下有文件系统未正常挂载
- 尝试使用mount -l命令,夯死
- 尝试cat /etc/mtab文件,夯死
- 尝试cat/proc/mounts文件,夯死
- strace命令进行跟踪,提示如下
execve("/usr/bin/ls", ["ls"], [/* 22 vars */]) = 0
brk(NULL) = 0x1475000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f3a2c6ce000
access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC
造成原因
- 在根目录下,ls top等命令基本上都是内容比较多,数据包比较大 基本上都吃满了1500这个默认值
- 加上VxLAn的包 大于1500 封装之后堡垒机识别不了
- 呈现给用户就是夯死了
处理方案
调整操作系统mtu值,将服务器操作系统数据包调小,加上VxLAN数据包小于1500即可