Как я решаю эту проблему (insserv) обновление наклона, наклон автоматически выполняют приложения

Я не знаю, как я получил эту проблему, но я не могу установить приложения, обновление, обновление или автоматически выполнить приложения.

$ sudo update-rc.d ums defaults
insserv: warning: script 'S99selinux' missing LSB tags and overrides
insserv: warning: script 'S97DbSecuritySpt' missing LSB tags and overrides
insserv: warning: script 'selinux' missing LSB tags and overrides
insserv: warning: script 'DbSecuritySpt' missing LSB tags and overrides
insserv: There is a loop between service plymouth and networking if started
insserv:  loop involving service networking at depth 3
insserv:  loop involving service procps at depth 2
insserv:  loop involving service iscsid at depth 6
insserv:  loop involving service urandom at depth 4
insserv: There is a loop between service plymouth and mountdevsubfs if started
insserv:  loop involving service mountdevsubfs at depth 2
insserv:  loop involving service udev at depth 1
insserv: Starting selinux depends on plymouth and therefore on system facility `$all' which can not be true!
insserv: Starting DbSecuritySpt depends on plymouth and therefore on system facility `$all' which can not be true!
insserv: Starting selinux depends on plymouth and therefore on system facility `$all' which can not be true!
insserv: Starting DbSecuritySpt depends on plymouth and therefore on system facility `$all' which can not be true!
insserv: Starting selinux depends on plymouth and therefore on system facility `$all' which can not be true!
insserv: Starting DbSecuritySpt depends on plymouth and therefore on system facility `$all' which can not be true!
insserv: Starting selinux depends on plymouth and therefore on system facility `$all' which can not be true!
0
задан 29 January 2017 в 18:49

1 ответ

проблема:

insserv помогает выяснить, какие сервисы должны быть запущены в который порядок.

Пример: Файловая система запускается перед Сетями, потому что сети потребностей в файлы чтения-записи.

Это - неуклюжая система, долго заменяемая Выскочкой (Ubuntu 14.04), и позже systemd (Ubuntu 16.04). Но insserv остается помогать очень старым sysvinit сервисам вписаться в более новый мир.

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

Пример: A запускается прежде B. B запускается прежде A.

система выясняет большую часть порядка запуска, когда пакеты установлены или удалены. Корректировка порядка запуска является частью конфигурирования недавно установленного пакета.

цикл А вызовет ошибку.

ошибка будет препятствовать тому, чтобы пакет настроил.

ненастроенный пакет вызовет ошибку диспетчера пакетов.

Теперь возвращаются и перечитывают целое сообщение об ошибке снова. Вы видите insserv ошибку, которая заставляет установку пакета перестать работать, который заставляет все пакеты зависимости перестать работать.

существует еще один элемент: Кв., диспетчер пакетов, помнят , что Вы хотите этот установленный пакет. Каждый раз, когда Вы запускаете склонный, это будет озираться, чтобы видеть, должен ли возобновить какие-либо неполные установки. Настолько склонный будет продолжать пробовать для установки этих пакетов каждый раз, когда Вы выполняете его, и Вы будете продолжать получать те же ошибки каждый раз.

Кв. завершается на первую ошибку, таким образом, ошибка может (неумышленно) заблокировать другие действия пакета, включая нормальные обновления и патчи безопасности.

Решения:

существует несколько способов решить проблему.

1) Read сообщения об ошибках тщательно у Вас есть ЧЕТЫРЕ сценария (два названных 'selinux') без любых Заголовков LSB. Это необычно - Вы пытались установить SELinux несколько различных путей? Если так, очистите свои старые попытки перед продолжением. Просто отредактируйте каждый из остающихся сценариев, добавив Заголовки LSB для сообщения системы, когда скрипт должен будет быть запущен. Сохраните примечания, потому что это - временное решение - обновление пакета может стереть Ваши изменения.

А надлежащий Заголовок LSB выглядит примерно так:

### BEGIN INIT INFO
# Provides:          scriptname
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start daemon at boot time
# Description:       Enable service provided by daemon.
### END INIT INFO

2) В дополнение к недостающим заголовкам LSB и тегам, у Вас есть Циклы. Вспомните, что init действительно ненавидит циклы. При добавлении заголовков и тегов doesn; t colve проблема, отредактируйте теги так, чтобы selinux и другие сценарии не положились на Плимут... или изменили Плимут, таким образом, это не полагается на $all.

ПРЕДУПРЕЖДЕНИЕ: Сохраните тщательные примечания и LiveUSB удобными - переделывание порядка запуска важных услуг (как Плимут) может повредить Вашу систему или представить его незагрузочный.

3) Поочередно, если Вы не используете некоторые из тех сервисов, просто удаляют ununsed сервис (сервисы). Цикл, поврежденный, склонный, должен завершить конфигурацию и установку.

4), Если Вы используете 16.04 или более новые, зарегистрируйте отчет об ошибках с каждым восходящим проектом. Insserv очень стар и топорен, и те восходящие потоки должны предоставлять Вас надлежащие systemd-собственные .service файлы.

0
ответ дан 28 September 2019 в 01:36

Другие вопросы по тегам:

Похожие вопросы: