内容一:strace 命令的作用
用于确认某个端口是在哪里被阻挡了
内容二:strace 命令的使用案例
# strace -ffvttTyy -s 4096 -o /tmp/mtr-strace.txt mtr -TP 443 -nrc eternalcenter.com
(补充:这里以查询 eternalcenter.com 的 443 端口的网络路径为例)
用于确认某个端口是在哪里被阻挡了
# strace -ffvttTyy -s 4096 -o /tmp/mtr-strace.txt mtr -TP 443 -nrc eternalcenter.com
(补充:这里以查询 eternalcenter.com 的 443 端口的网络路径为例)
在本地局域网络中,各个设备的网卡都有自己的 ARP 缓存表,用于记录局域网中各个设备 IP 地址和 MAC 地址的对应关系。
# arp -d 192.168.0.1
(补充:这里以从本地 ARP 缓存表清楚 IP 地址 192.168.0.1 的 ARP 缓存为例)
# ping 192.168.0.1
(
补充:
1) 这里以获取 192.168.0.1 的 ARP 缓存为例。
2) 当本地尝试连接 IP 地址 192.168.0.1 时,首先发生 ARP 报文询问 IP 地址 192.168.0.1 的 MAC 地址获得 ARP 缓存。如果此缓存长期没有被使用则会自动删除。如果记录 ARP 缓存过多,那旧的 ARP 缓存会被有限删除
)
重启系统,进入内核选择界面,此时按下 “e” 键进入内核编辑界面
在 menuentry 下面,在 linux 开头的这 1 行末尾添加 init=/bin/bash
同时按下 “ctrl” 键和 “x” 键
# mount -o remount rw /
# echo 1 | passwd --stdin root
(补充:以上命令的作用是在修改的内核中,将 root 的密码修改为 1,并重启)
# reboot
> /var/spool/mail/root
(补充:这里以清空 root 用户的邮箱为例)
# rpm -qa | grep crash || yum install crash ; rpm -qa | grep kernel-debug || yum install kernel-debug
# vim /etc/kdump.conf
修改以下内容:
......
path /var/crash
......
(
补充:
1) 默认的存放位置是 /var/crash
2) 把这里修改成想要存放内核崩溃信息的目录
3) 为了保险起见存放内核崩溃信息的位置最好有大于内存大小的剩余空间
)
# systemctl restart kdump ; systemctl enable kdump
# systemctl status kdump
(补充:当显示输出结果里包含 operational 或者 Active: active (exited) 时,则说明 Kdump 已经启用)
# vim /etc/sysctl.conf
添加以下内容:
......
kernel.hung_task_panic=1
# sysctl -p /etc/sysctl.conf
(步骤略)
(
注意:
1) 只有 task hang 住,或者处理器线程 soft lock 时才会自动产生 dump
2) 此过程系统会自动重启
)
# vim /etc/sysctl.conf
添加以下内容:
......
kernel.sysrq = 1
# sysctl -p /etc/sysctl.conf
同时先后按下以下三个按键:
ALT + PRINTSCREEN + C
(
注意:
1) 此过程会让系统自动重启
2) 只是系统死机并不代表有 kernel panic
)
# vim /etc/sysctl.conf
添加以下内容:
......
kernel.unknown_nmi_panic = 1
kernel.panic_on_unrecovered_nmi = 1
kernel.panic_on_io_nmi = 1
# sysctl -p /etc/sysctl.conf
(步骤略)
# echo c > /proc/sysrq-trigger
(注意:此操作会造成系统重启)
参考文献:
https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html/system_design_guide/installing-and-configuring-kdump_system-design-guide
https://access.redhat.com/solutions/916043
https://access.redhat.com/solutions/3698411
https://access.redhat.com/solutions/6038
https://access.redhat.com/solutions/23069