Решить с помощью SaltStack: initctl: `Невозможно подключиться к Upstart: не удалось подключиться к сокету /com/ubuntu/upstart: в соединении отказано`

Я получил следующую ошибку, когда попытался «бродить» на стандартной Ubuntu/vivid64 с помощью виртуального бокса: initctl: Unable to connect to Upstart: Failed to connect to socket /com/ubuntu/upstart: Connection refused

Полный поток ошибок находится здесь: https://pastee.org/hnh8x Обязательно поздоровайтесь с нашим старым другом. stdin: is not a tty.

Найдите соответствующий Vagrantfile здесь: https://pastee.org/sfyb7, созданный с помощью vagrant init --force ubuntu/vivid64 https://cloud-images.ubuntu.com/vagrant/vivid/current/vivid-server-cloudimg-amd64-vagrant-disk1.box.

Могу ли я исправить эту ошибку с помощью подготовки Saltstack? Если да, то как?

Ближайшая часть документации Saltstack, связанная с Upstart, которую я нашел, выглядит следующим образом: http://docs.saltstack.com/en/latest/ref/modules/all/salt.modules.upstart.html

Документация Ubuntu по этому вопросу, здесь, https://wiki.ubuntu.com/SystemdForUpstartUsers, рекомендует установка пакета upstart-sysv. Это все, что требуется для возврата с помощью Saltstack?

Следующее, похоже, не решает проблемы с загрузкой:

upstart-sysv:
  pkg.installed

Могу ли я что-нибудь добавить к этому, чтобы помочь решить проблему?


person Nathan Basanese    schedule 22.05.2015    source источник


Ответы (1)


Vivid теперь использует systemd вместо upstart.

Вместо этого вы можете попробовать: «sudo systemctl start».

Я опубликую часть содержимого: https://wiki.ubuntu.com/SystemdForUpstartUsers. Я столкнулся с этой проблемой в Ceph и использовал описанный выше метод, чтобы обойти ее.

Введение

Этот документ сравнивает Upstart и systemd с целью помочь в переходе на последний.

Статус поддержки

Во-первых, важно отметить, что systemd полностью поддерживается только в Ubuntu 15.04 и более поздних версиях. Несмотря на то, что systemd доступен в предыдущих выпусках в репозиториях Ubuntu, как указано здесь, поддержка этих выпусков незначительна. Следовательно, рекомендуется использовать выскочку по умолчанию в предыдущих выпусках.

Демон инициализации системы

Это изменилось как часть цикла разработки Ubuntu 15.04.

Ubuntu 15.04 (по умолчанию используется Systemd):

Systemd runs with PID 1 as /sbin/init.

Upstart runs with PID 1 as /sbin/upstart. 

Предыдущие версии (с использованием Upstart по умолчанию):

Upstart runs with PID 1 as /sbin/init.

Systemd runs with PID 1 as /lib/systemd/systemd. 

Переключение систем инициализации

Если вы используете Ubuntu Vivid (15.04), вы можете легко переключаться между upstart и systemd по своему желанию, так как оба пакета уже установлены. По состоянию на 9 марта 2015 г., Vivid был изменен на использование по умолчанию systemd, до того, как этот выскочка был по умолчанию.

Переключиться на выскочку для однократной загрузки

В grub выберите «Дополнительные параметры для Ubuntu», где вы найдете запись «Ubuntu с Linux… (выскочка)». Это загрузится с init=/sbin/upstart.

Если у вас установлен upstart-sysv и, следовательно, вы загружаетесь с upstart по умолчанию, будет запись «Ubuntu, with Linux... (systemd)», которая будет загружаться с init=/lib/systemd/systemd.

Постоянное переключение обратно на выскочку

Установите пакет upstart-sysv, который удалит ubuntu-standard и systemd-sysv (но не должен удалять ничего другого — если это произойдет, кричите!), и запустите sudo update-initramfs -u. После этого в меню «Дополнительные параметры» grub появится соответствующая запись «Ubuntu, с Linux… (systemd)», где вы можете выполнить однократную загрузку с помощью systemd.

Если вы хотите вернуться к systemd, установите пакеты systemd-sysv и ubuntu-standard.

Currently you can switch to upstart, notify the developers of the package in question of the need to support systemd.

person uDude    schedule 18.09.2015
comment
О, да, ответ. попробуйте: вместо этого sudo systemctl start ‹name›. - person uDude; 18.09.2015
comment
Хороший ответ, я бы также рекомендовал добавить это утверждение в начало ответа. - person Jason D; 18.09.2015
comment
Спасибо, Джейсон Д... Готово. - person uDude; 30.10.2015