Назад | Перейти на главную страницу

В установке Ubuntu 10.04 отсутствует /etc/rc0.d, есть ли быстрое исправление?

Понятия не имею, как это произошло, но /etc/rc.*/ просто отсутствует.

В следствии, aptitude и apt-get больше не работают правильно.

Есть ли быстрое решение для этого? Я действительно не хочу переустанавливать ОС, если мне это не нужно.

Каким образом не apt-get работай? Отсутствие сценариев инициализации не должно иметь прямого влияния на управление пакетами.

Что вам нужно сделать, так это восстановить эти каталоги из резервной копии. Поскольку я предполагаю, что ты не иметь резервные копии, тогда вам нужно будет идентифицировать все пакеты, в которых были файлы в удаленных местах (преследование через /var/lib/dpkg/info/*.list, вероятно, самый быстрый способ), а затем, помимо этого, перенастроить любой пакет который имеет сценарий инициализации, чтобы воссоздать символические ссылки, которые были бы на месте (потому что каталоги, которые явно отсутствуют, состоят в основном из символических ссылок, созданных во время установки пакета).

Посмотрите, насколько проще жизнь, когда у вас есть резервные копии?

Попробуй это:

  • скачать вручную sysv-rc и initscripts

  • установите их вручную с помощью: dpkg -i sysv-rc*.deb initscript*.deb

  • затем переустановите все пакеты со службами с помощью этого скрипта:

    #!/bin/bash
    for package in $(dpkg --get-selections | awk '{ print $1 }'); do
      if dpkg -L "$package" | grep -q /etc/init.d; then
        apt-get --reinstall install $package
      fi
    done
    

Вы можете попробовать установить его в другом месте (например, установку виртуального бокса) с той же конфигурацией служб и скопировать каталоги.

Вы не должны сталкиваться с какими-либо конфигурационными файлами в /etc/rc.*/, главное убедиться, что службы, которые вы ожидаете запускать при загрузке, запускаются. Я забываю установку Ubuntu, но часто файлы в /etc/rc.*/ являются просто символическими ссылками на файлы, которые фактически находятся в /etc/init.d/.

Тем не менее, я бы установил его в другом месте и сравнил.