Обычная проверка файловой системы в системе Debian Lenny вызвала ошибку fsck, которая уничтожила несколько ссылок в /etc/rc?.d
иерархия (список, к сожалению, не вел).
Кажется, что система загружается и работает нормально, но меня беспокоит, что в будущем она сохранит проблемы.
Есть ли простой (довольно автоматический) способ перестроить эту часть системы? Насколько я понимаю, ссылками обычно управляют сценарии postinst пакета с помощью update-rc.d (и я не внес никаких изменений в установленные значения по умолчанию).
Без каких-либо лучших идей мой план один из:
Если у вас нет резервных копий, вы можете попробовать установить rcconf
и посмотрите, воссоздаст ли он ссылки. Но на самом деле все файлы инициализации Debian должны содержать следующую информацию вверху каждого скрипта:
### BEGIN INIT INFO
# Provides: inetd
# Required-Start: $local_fs $remote_fs
# Required-Stop: $local_fs $remote_fs
# Should-Start: $syslog
# Should-Stop: $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start or stop the xinetd daemon.
### END INIT INFO
Основываясь только на этой информации, вы могли частично восстановить все с помощью базовых сценариев оболочки.
# Default-Start: 2 3 4 5
сообщает вам, что символические ссылки Start на этот сценарий инициализации должны идти в /etc/init{2,3,4,5}.d/S<XX>blah
.
# Default-Stop: 0 1 6
означает, что ссылки "Убить"/etc/init{0,1,6}.d/K<XX>blah
.
Проблема здесь в <XX>
часть. Это порядок запуска и остановки ваших процессов, поэтому, если вы не знаете порядок, вы потенциально можете получить зависшую загрузку. Например, когда вы пытаетесь запустить NFS перед Networking.