内容一:手动向系统日志写入信息
# logger [This is test message]
(补充:这里以往系统日志里写入一条包含 This is test message 内容的信息为例)
内容二:显示手动向系统日志写入信息
# grep "This is test message" /var/log/messages
(补充:这里在系统里查找一条包含 This is test message 内容的信息为例)
# logger [This is test message]
(补充:这里以往系统日志里写入一条包含 This is test message 内容的信息为例)
# grep "This is test message" /var/log/messages
(补充:这里在系统里查找一条包含 This is test message 内容的信息为例)
# rpm -qa | grep crash || dnf install crash ; rpm -qa | grep kernel-debug || dnf install kernel-debug
# vim /etc/default/grub
在这一行里:
GRUB_CMDLINE_LINUX_DEFAULT="......"
添加:
GRUB_CMDLINE_LINUX_DEFAULT="...... crashkernel=auto"
(
补充:这里的 auto 代表系统会根据内存大小自动设置一个值,也可以指定一个值,例如:crashkernel=128M,high、crashkernel=256M,high 等等。如果设置成一个固定值,建议
1) 1 GB 到 4 GB 内存设置成 160 M
2) 4 GB 到 64 GB 内存设置成 192 M
3) 64 GB 到 1 TB 内存设置成 256 M
4) 大于 1 TB 内存设置成 512 M
)
# grub2-mkconfig -o /boot/grub2/grub.cfg;reboot
# makedumpfile --mem-usage /proc/kcore
# echo 1 > /proc/sys/kernel/sysrq
# echo c > /proc/sysrq-trigger
# cd /var/crash/<date>/
# crash vmlinux-2.6.32.12-0.7-default vmcore
(补充:这里以使用 2.6.32.12-0.7-default 版本的 kernel-debuginfo 解析为例)
# ls vmlinux-2.6.32.12-0.7-default.gz
(注意:如果这里生成了 vmlinux-2.6.32.12-0.7-default.gz 压缩包的话,这里会有 vmlinux-2.6.32.12-0.7-default.gz 信息的显示)
(补充:这里以确认 2.6.32.12-0.7-default 版本的 kernel-debuginfo 生成的压缩包为例)
# gzip -d vmlinux-2.6.32.12-0.7-default.gz
(补充:这里以解压 2.6.32.12-0.7-default 版本的 kernel-debuginfo 生成的压缩包为例)
(步骤略)
https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html/managing_monitoring_and_updating_the_kernel/analyzing-a-core-dump_managing-monitoring-and-updating-the-kernel
watchdog: Bug: soft lockup - CPU......
当 CPU 的负载过高时,一个 CPU 在运行某一个进程时,在内核模式下超过 20 秒没有回应,则看门狗程序会将系统所有 CPU 软锁住,然后会让这些 CPU 显示各自正在运行的进程堆栈跟踪
# echo 20 > /proc/sys/kernel/watchdog_thresh
(补充:这里以将看门狗的值延长到 20 为例,也可以根据自己的需求延长更多,默认值为 10)
# echo "kernel.watchdog_thresh = 20" >> /etc/sysctl.conf
(补充:这里以将看门狗的值延长到 20 为例,也可以根据自己的需求延长更多,默认值为 10)
# sysctl -p /etc/sysctl.conf
开启 Kdump,等此报错再次发生时分析 Kdump 在内核崩溃时搜集信息 vmcore
1) DEFAULT 不严格的安全等级,可以让系统使用 TLSv1.2
2) FUTURE 严格的安全等级,只能让系统使用 TLSv1.2 不能使用 TLSv1.3
# update-crypto-policies --show
DEFAULT
(补充:从这里可以看出目前的 update-crypto-policies 参数是 DEFAULT)
# update-crypto-policies --set=FUTURE
(补充:这里以将 update-crypto-policies 参数设置为 FUTURE 为例)
curl: (35) error:14094410:SSL routines:ssl3_read_bytes:sslv3 alert handshake failure
Rocky Linux 8 & RHEL 8 已经默认废弃 TLSv1.2
可以使用 TLSv1.3 替代 TLSv1.2 或者将 update-crypto-policies 参数设置为 DEFAULT 以解决此报错
# update-crypto-policies --show
FUTURE
(补充:从这里可以看出目前的 update-crypto-policies 参数是 FUTURE)
# update-crypto-policies --set=DEFAULT
(补充:这里以将 update-crypto-policies 参数设置为 DEFAULT 为例)