For the past few days I got the following error message in the systemd boot log
Process nnnn (smartctl) of user 0 dumped core.
Here nnnn refers to the actual Process ID.
When I looked into the directory /var/lib/systemd/coredump/
sure enough there was a dump file core.smartctl.0.mmm.nnnn.yyyy.zst
. Over here mmmm
refers to a hexa decimal value. nnnn
is the process id and yyyy
is another numeric value.
When I checked the status of the service smartd.service
it was not active and it was in unloaded state. I tried to set the loglevel to 5, rebuilt the grub.cfg file but still could not locate anything in the systemd boot that would help me to determine the cause of the issue.
How do I resolve this? How do I get the smartctl
service to start normally during boot?
See if this section of Archwiki could help you to get more info on that dump:
https://wiki.archlinux.org/title/Core_dump#Managing_the_core_dump_files
You could investigate why the coredump happened, but a proper smartctl
shouldn’t dump core ever. This program runs at a lot of places to monitor drives, and shouldn’t show an error like that.
I would uninstall and re-install smartmontools
, and also look for hardware issues. Borderline hardware can cause the system to lock up when a drive is accessed. Maybe it is similar to your case. This goes beyond the drive to the controller and the cable.
So I checked the core dump as per the link provided by @cactux. The following is the output
$ coredumpctl info 1120
PID: 1120 (smartctl)
UID: 0 (root)
GID: 0 (root)
Signal: 6 (ABRT)
Timestamp: Tue 2025-05-06 07:30:42
Command Line: /usr/sbin/smartctl --all --json=c /dev/sdb
Executable: /usr/bin/smartctl
Message: Process 1120 (smartctl) of user 0 dumped core.
So when I ran the command /usr/sbin/smartctl --all --json=c /dev/sdb
I got the following error message
Smartctl open device: /dev/sdb failed: Permission denied.
So now the question is why at boot time is the bulk device /dev/sdb
not readable by smartctl daemon?
Check first if the drive is SMART-supported and if it is, if SMART is enabled:
https://wiki.archlinux.org/title/S.M.A.R.T.#smartctl
You need to be “sudo”.
Running the command with sudo
works. And the service smartctl
also runs with the root user, i.e. the UID and GID is zero. So it should work at boot up time too. What can be the reason for this failling at boot?