V4 桌面:
- 如果能上外网配置网络源安装软件包:
会自动安装以下几个包(不能连接外网直接安装一下几个包即可):
- 查看kdump配置:
Kdump-config show
可以看到USE_KDUMP=1 ,生成的vmcore文件在/var/crash下
Kdump服务的相关配置文件为/etc/default/kdump-tools
3.此时可以在/boot/grub/grub.cfg中的启动参数可以看见在217行直接添加即可crashkernel=nn[KMG]@ss[KMG] :
#crashkernel=nn[KMG]@ss[KMG] crashkernel=nn[KMG]-:ss[KMG]
nn表示要为crashkernel预留多少内存ss表示为crashkernel预留内存的起始位置(crashkernle 的值也要根据具体自己的实际物理内存大小灵活调整,如实际物理内存实在足够大,可以设置为512M、256M 。)
- 设置完成后直接reboot进行重启
- 查看kdump的状态:
7.查看内核启动命令
8.测试生成vmcore,手动触发系统崩溃(正常情况下会自动重启,内核出现崩溃)
9.重启后查看:
V10服务器GFB:
- 安装kdump:
yum install kexec-tools -y
- 配置kdump kernel:
vim /etc/default/grub //需要将GRUB_CMDLINE_LINUX="crashkernel=auto..."中的auto修改为128M。一般设为128M或256M。
3.更新grub配置:
grub2-mkconfig -o /boot/grub2/grub.cfg
4.然后重启:
Reboot
5.更改kdump默认配置,设置内核crash后reboot:
vim /etc/kdump.conf
#path 指定生成的文件存放位置
#default reboot 需要自行手动添加
- 重启kdump服务查看服务状态并设置为开机自启:
systemctl restart kdump
systemctl status kdump
systemctl enable kdump
- 手动触发内核crash:
echo 1 > /proc/sys/kernel/sysrq
echo c > /proc/sysrq-trigger
如果配置成功,系统将自动重启,重新进入系统,可以看到/var/crash文件夹下生成了相应文件,是一个以生成coredump日期为文件名的文件,如图所示:
8.打开dmesg文件可以看到内核转储内容于你触发crash的内容是对的上的
V10服务器自己带cockpit:
cockpit是麒麟服务器系统自带的系统监控软件
cockpit地址:https://服务器IP:9090 (注意开放防火墙)
用户名密码均为服务器的用户名和密码:
系统默认kdump是自动开启的,可以自己点击测试配置进行测试:
#查看系统内核是否能搭建kdump:
cat /boot/config* |grep -i xxxx
如图所示:
CONFIG_KEXEC=Y 则表示支持,反之为不支持。
配置系统内核和捕捉内核都需要的内核选项:
- 在"处理器类型和功能"中启用"kexec 系统调用"或"kexec 文件系统调用":
- CONFIG_KEXEC=y or CONFIG_KEXEC_FILE=y
他们俩都会选择KEXEC_CORE:
CONFIG_KEXEC_CORE=y
随后,KEXEC_CORE选择CRASH_CORE:
CONFIG_CRASH_CORE=y
- 在"文件系统"中启用"sysfs 文件系统支持"->"伪文件系统"。默认情况下,这通常处于启用状态:
- CONFIG_SYSFS=y
请注意,如果在"常规设置"中未启用"配置标准内核功能(适用于小型系统)",则"sysfs 文件系统支持"可能不会出现在"伪文件系统"菜单中。在这种情况下,请检查 .config 文件本身以确保 sysfs 已打开,如下所示:
grep 'CONFIG_SYSFS' .config
- 在"内核黑客攻击"中启用"使用调试信息编译内核":
CONFIG_DEBUG_INFO=Y