On Fri, 2023-09-01 at 12:36 +0100, Patrick O'Callaghan wrote:
I've noticed recently that Apache often (or perhaps always) doesn't respond after a system hibernate/resume cycle. After restarting it ('apachectl restart') all is well.
I could script an automatic restart after resuming, but I wondered if this is a well-known problem with a simpler solution.
No replies so far, so I attempted the automatic restart, using this script:
# cat hibernate-resume.service [Unit] Description=Disable swap after resuming from hibernation After=hibernate.target
[Service] SyslogIdentifier=%N User=root Type=oneshot ExecStart=/bin/bash -c ' \ /usr/sbin/swapoff /SWAP/swapfile ; \ /usr/sbin/apachectl graceful ; \ '
[Install]
The swap stuff works (as discussed in an earlier thread), but the Apache restart fails:
Sep 06 08:01:33 Bree systemd[1]: selinux: avc: denied { start } for auid=n/a uid=0 gid=0 path="/usr/lib/systemd/system/httpd.service" cmdline="" function="bus_unit_method_start_> Sep 06 08:01:33 Bree systemctl[201281]: Failed to restart httpd.service: Access denied Sep 06 08:01:33 Bree systemctl[201281]: See system logs and 'systemctl status httpd.service' for details. Sep 06 08:01:33 Bree systemd[1]: hibernate-resume.service: Main process exited, code=exited, status=4/NOPERMISSION
However once the system is up and resumed, I can restart it manually with no issues. This looks like an SElinux problem, so what's the solution?
poc