Я запускаю sudo apt-get install git-all
в Ubuntu 16.04 и в итоге вижу следующее
Setting up runit (2.1.2-3ubuntu1) ...
start: Unable to connect to Upstart: Failed to connect to socket /com/ubuntu/upstart: Connection refused
dpkg: error processing package runit (--configure):
subprocess installed post-installation script returned error exit status 1
dpkg: dependency problems prevent configuration of git-daemon-run:
git-daemon-run depends on runit; however:
Package runit is not configured yet.
dpkg: error processing package git-daemon-run (--configure):
dependency problems - leaving unconfigured
No apport report written because the error message indicates its a followup error from a previous failure.
Errors were encountered while processing:
runit
git-daemon-run
E: Sub-process /usr/bin/dpkg returned an error code (1)
Я получаю ошибку после перезагрузки моей системы. Это действительно блокирует всю мою систему. Я запускаю killall update-notifier
. Я запускаю sudo apt-get install git-all
, но получаю то же самое сообщение об ошибке. Я запускаю, pgrep -a apt
но не получаю ничего на выходе. Я запускаю pgrep -a update
, но не получаю ничего на выходе. Отчет об ошибке по делуздесь.
- В Grub выберитеРасширенные настройки>Ubuntu (Upstart) Linux ядро 4.22. Делаем то же самое только в терминале безсистемдвызывает ту же ошибку.
Почему эта ошибка возникает при запуске runit?
решение1
Геррит Папе, который поддерживает как собственный runit xyr, так и пакеты daemontools Bernstein для Debian, является одним из немногих разработчиков, которые действительно восприняли идею «нейтральности системы init» (которая так и зазвучала после шумихи вокруг Debian systemd) близко к сердцу и приложил все усилия для поддержки их работы под управлением van Smoorenburg init
, upstart и systemd.
Скрипт обслуживания после установки для runit вы найдете распакованным в вашей системе из пакета где-то, например /var/lib/dpkg/info/runit.postinst
. Как вы можете видеть, он пытается обнаружить наличие upstart и запустить runsvdir
задание upstart, если upstart присутствует. Он делает то же самое с systemd и runit.service
.
К сожалению, в Ubuntu 14 и более поздних версияхобасистемдиupstart установлены. И поэтому скрипт обслуживания после установки пакета пытается запустить задание upstart с помощью start
команды upstart. Конечно, upstart не является (по умолчанию) системным менеджером служб в Ubuntu 15 и более поздних версиях, и start
команда upstart не работает.
Ниже приведена приблизительная идея того, как исправить скрипт, чтобы обойти эту проблему:
… если тест -r /usr/share/debconf/confmodule; тогда . /usr/share/debconf/confmodule db_purge фи если тест -d /run/systemd/system ; тогда systemctl start runit.service elif test -x /sbin/start ; затем /sbin/start запускает vdir фи
Это не идеально, но это начало, runit.prerm
и оно runit.postrm
также требует некоторых корректировок.
дальнейшее чтение
- Джонатан де Бойн Поллард (2015).
/etc/inittab
осталось в прошлом.. Часто задаваемые ответы. - Джонатан де Бойн Поллард (04.11.2014).запустить его. список рассылки Debian-vote.
- Николай Христов (21.10.2014).runit: Не удаётся установить runit после новой установки jessie beta2. Ошибка Debian №766187.
- Андреас Бекманн (03.11.2014).daemontools-run: не удается установить без /etc/inittab. Ошибка Debian №767933.
runit.postinst
. исходный код runit. Панель запуска Ubuntu.- https://unix.stackexchange.com/a/196252/5132
решение2
Мне удалось найти временное решение проблемы. Изменить расположение исходных серверов и т.п. с основного сервера на Финляндию или Эстонию. Это решает острую проблему на некоторое время.