In this lesson, you will enable kernel dumps and give `cloud_user` the ability to run a `SystemTap` module.
*This course is not approved or sponsored by Red Hat.*
Learning Objectives
Successfully complete this lab by achieving the following learning objectives:
- Enable kernel dumps.
Note: The hypervisor used by EC2 prevents
kdump
from being engaged. Forcing a kernel crash will simply prevent you from logging back in for 3-4 miniutes. No crash will be present in/var/crash
.Start and enable the
kdump
service:systemctl start kdump && systemctl enable kdump
You’ll notice
kdump
doesn’t start. Install necessary packages:yum --enablerepo=rhel-7-server-rhui-debug-rpms install -y kexec-tools crash kernel-debug kernel-debuginfo-$(uname -r)
Modify
/etc/default/grub
to set crash memory to128M
.Install the new Grub config:
grub2-mkconfig -o /boot/grub2/grub.cfg
- Permit cloud_user to run the example.stp via SystemTap.
Install
SystemTap
:yum install -y systemtap kernel-devel-$(uname -r)
Run the example script:
/root/example.stp
stap /root/example.stp
Compile the script as a module:
stap -p 4 -v -m stap_example example.stp
Create a
systemtap
directory for the module:mkdir /lib/modules/$(uname -r)/systemtap
Move the module into the new directory:
mv stap_example.ko /lib/modules/`uname -r`/systemtap/
Run the module:
staprun stap_example
Add
cloud_user
to thestapusr
group:usermod -aG stapusr cloud_user
Verify
cloud_user
can run the module:runuser -l cloud_user -c 'staprun stap_example'