У меня есть образ Centos 7, работающий как виртуальная машина (не как образ Docker).
Когда виртуальная машина загружается, она использует systemctl
для запуска нескольких сервисов, одним из которых является мое приложение, которое пытается установить hostname
в виртуальной машине с помощью команды:
hostnamectl set-hostname my_host
Но, это терпит неудачу с этой ошибкой:
Failed to create bus connection: No such file or directory.
Я проверил, что dbus
работает
ps aux| grep dbus
root 4555 0.0 0.0 112704 924 pts/4 S+ 11:29 0:00 grep --color=auto dbus
dbus 25493 0.1 0.1 58084 2236 ? Ss 10:54 0:03 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation
Кроме того, я могу запускать команды systemctl
для запуска и остановки некоторых служб, но попытка запустить firewalld
также приводит к ошибке.
Любые идеи о том, как это исправить ?
РЕДАКТИРОВАТЬ Я нашел проблему, system_bus_socket был в /run /dbus не в /var /run /dbus. Создание символической ссылки на /var /run /dbus позволило hostnamectl успешно работать.
Тем не менее, мой вопрос: почему system_bus_socket изначально был помещен в /run /dbus?