Overlapping "notify" socket name: (Device or resource busy: '/var/run/systemd/notify')
See original GitHub issueIn rkt container runtime /var/run/systemd/notify
socket inside containers is used to proxy notifications to the host.
Unfortunately systemctl replacement tries to use path to notify socket that is identical to the one owned/controlled by host’s systemd.
Naturally there is an error when systemctl replacement attempts to use someone else’s notify socket which it did not create:
# systemctl start php7.2-fpm.service
Traceback (most recent call last):
File "/usr/local/bin/systemctl", line 3913, in <module>
result = command_func(*modules)
File "/usr/local/bin/systemctl", line 1538, in start_modules
return self.start_units(units, init) and found_all
File "/usr/local/bin/systemctl", line 1545, in start_units
if not self.start_unit(unit):
File "/usr/local/bin/systemctl", line 1564, in start_unit
return self.start_unit_from(conf)
File "/usr/local/bin/systemctl", line 1680, in start_unit_from
notify = self.notify_socket_from(conf)
File "/usr/local/bin/systemctl", line 1464, in notify_socket_from
os.unlink(socketfile)
OSError: [Errno 16] Device or resource busy: '/var/run/systemd/notify'
Renaming _notify_socket_name
to avoid clash fixes the problem.
Issue Analytics
- State:
- Created 5 years ago
- Comments:7 (7 by maintainers)
Top Results From Across the Web
docker-systemctl-replacement from gdraheim
Overlapping "notify" socket name: (Device or resource busy: ... In rkt container runtime /var/run/systemd/notify socket inside containers is used to proxy ...
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
You’re patch is correct, I did just want to go a bit beyond that. 😉
… so now it’s NOTIFY_SOCKET=/var/run/systemd/notify.httpd.service
This is perfect - per service sockets. 😃 I like that.
Thanks.