Aptitude продолжает говорить, что пакет был установлен, когда он был удален и очищен

475
Gabriel A. Zorrilla

У меня есть сервер, 8.04, который я играл с Postfix, устанавливая и удаляя с опцией очистки. Дело в том, что я хочу переустановить его (чтобы он показывал меню конфигурации), но Aptitude и apt продолжают говорить, что он уже установлен.

Я удалял и удалял несколько раз, даже вручную удалял некоторые файлы, оставленные чисткой, и не повезло.

Итак, есть ли способ удалить запись вручную или что-то еще, чтобы Aptitude установил ее нормально?

Спасибо!!

2
Было бы полезно опубликовать вывод команды aptitude purge и "dpkg -l postfix". jtimberman 15 лет назад 0
Пожалуйста, измените название на что-то более значимое. nagul 15 лет назад 0
Готово, надеюсь, вам понравится! Gabriel A. Zorrilla 15 лет назад 0

3 ответа на вопрос

1
nagul

Предупреждение: не пытайтесь сделать это, если вы не исчерпали все другие возможности.

Поскольку apt-get, aptitude и т. Д. Все внутренне используют команду dpkg, мы собираемся удалить все следы установки пакета из базы данных dpkg и убедить dpkg, apt-get, aptitude и т. Д. В том, что пакет никогда не был установлен.

  • База данных dpkg - это файл / var / lib / dpkg / status . Сделайте резервную копию этого файла. Мы будем возиться с внутренностями системы dpkg, и вам нужен оригинальный файл на случай, если эта процедура пойдет не так.
  • Отредактируйте файл статуса:

    sudo gedit / var / lib / dpkg / status

  • Найдите запись для пакета postfix в этом файле. Каждый пакет обычно имеет запись, как показано ниже. Удалить всю запись. Примечание: не должно быть пакетов, которые зависят от этого пакета. Если они есть, вы должны сначала удалить эти пакеты, поэтому, когда вы открываете этот файл, на пакет ссылаются только в одном блоке, который вы затем приступите к удалению.

    Пакет: autokey
    Статус: установить нормально установлен
    Приоритет: необязательно
    Раздел: kde
    Установлен-Размер: 456
    Сопровождающий: Крис Дектер
    Архитектура: все
    Версия: 0.60.4-0 ~ jaunty
    Зависит: python (> = 2.6), python-central (> = 0.6.11), python-kde4, python-qt4, python-qscintilla2, python-xlib
    Conffiles:
    /etc/init.d/autokey 1f0e894e58a6ff428e3a892c27caf300
    Описание: Утилита автоматизации рабочего стола
    AutoKey - это утилита автоматизации рабочего стола для Linux и X11. Это позволяет
    автоматизировать практически любую задачу, реагируя на набранные сокращения и
    горячие клавиши. Он предлагает полнофункциональный графический интерфейс, который делает его очень доступным для
    новички, а также интерфейс сценариев, предлагающий полную гибкость и
    мощь языка Python.
    Домашняя страница: http://autokey.googlecode.com/
    Python-версия:> = 2.6

  • Сохраните файл.

  • Перезагружать. Версии файла могут быть в кэше, поэтому необходима перезагрузка, чтобы все читали из этого нового файла.
  • Переустановите пакет.

Единственная причина, по которой я публикую эти инструкции, заключается в том, что у меня недавно была похожая проблема: пакет autokey был в ужасно испорченном состоянии (диск был переполнен во время установки, а записи, которые должны были быть записаны, не были), и Наконец мне пришлось прибегнуть к описанным выше действиям, чтобы переустановить пакет. Это сработало для меня, и это должно сработать для вас, но вы используете эти инструкции на свой страх и риск.

Изменить: я также должен сообщить вам, что я использовал apt-get для (неудачной) установки и переустановки.

Работал. Я удалил запись независимо от некоторых звонков из других пакетов. Я посмотрю, как отразится это действие, но удалось установить его обратно! Gabriel A. Zorrilla 15 лет назад 1
0
jtimberman

Ваша посылка находится в несовместимом состоянии. Возможно, вам придется переустановить его (aptitude install postfix). И, возможно, перенастроить его (dpkg -configure postfix).

Это не сработало, вот и весь смысл этой темы. Спасибо, в любом случае! Gabriel A. Zorrilla 15 лет назад 0
0
John T

Вы утверждаете, что использовали оба, Aptitudeи apt, я просто надеюсь, что вы не пытались установить с Aptitudeи удалить с aptили наоборот, потому что это большая нет, нет. Ты можешь попробовать

aptitude hold postfix 

который должен исправить пакет в его текущем состоянии. Тогда попробуйте чистку. Или попробуйте установить поверх него:

aptitude install postfix 

затем чистка.

Почему это нет-нет? Они оба используют одну и ту же базу данных и, вероятно, совместно используют значительный объем кода. JesperE 15 лет назад 0
В основном это связано с удалением пакетов, часто есть различия между тем, что каждый менеджер пакетов рассматривает как «потерянные зависимости». John T 15 лет назад 0
Пожалуйста, проверьте вывод при попытке установить postfix, после того, как сделаете удержание вещей: http://pastebin.com/f69695192 Gabriel A. Zorrilla 15 лет назад 0

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