Прерван emerge --depclean. [РЕШЕНО]
blow 31 марта, 2009 - 22:28
В общем проблема такая. Зашел удаленно на домашний компъютер, чтобы почистить ненужные пакеты. Почистил world файл, запустил emerge --depclean.
Но тут резко понадобилось перегрузиться и я прервал выполнение комманды (Control+c).
После перезагрузки опять подключился, но теперь emerge --depclean говорит, что удалять нечего. Хотя было удалено не все (например старые gentoo-sources).
Вопрос: есть ли возможность стандартными средствами определить, какие пакеты не были удалены и удалить их? или идти по emerge.log и ставить те пакеты, которых нет в world файле (хорошо, что бинарники лежат), а потом опять все сносить? Или есть другой путь? Помогите, плз, не хочется оставлять хлам в системе....
»
- Для комментирования войдите или зарегистрируйтесь
Может тебе поможет
Может тебе поможет "revdep-rebuild" из пакета "app-portage/gentoolkit"
Спасибо
Спасибо, пробовал... не помогает
revdep-rebuild проверяет установленные пакеты на работоспособность....
А у меня portage думает, что пакеты удалены, но на самом деле файлы остались
Для поиска в системе файлов
Для поиска в системе файлов не принадлежащих ни одному пакету рекомендовали в том числе [ныне hardmasked]
app-portage/udept
.Который, как обещают, к Portage 2.2 отвалится совсем.
Правда, задача никуда не денется. Интересно как её решать в Portage 2.2...
:wq
--
Live free or die
Спасибо за udept, это уже
Спасибо за udept, это уже ближе но не то ((
udept предложила удалить слишком много пакетов, и некоторые из них мне нужны (например qt4, недавно поставленный при обновлении мира poppler). Наверное, не зря ее замаскировали
blow написал(а):После
По-моему, начинать копать надо отсюда.
Старые gentoo-sources установлены как пакет?
equery list
их видит? Если видит, то почему Portage считает их неудаляемыми? Записаны в world? И т.д.Текстовый редактор vi имеет два режима работы: в первом он пищит, а во втором — всё портит.
Да, все устанавливалось через
Да, все устанавливалось через portage.
equery list их не видит, собственно поэтому видимо и emerge --depclean их не удаляет. Мне кажется, что Portage где-то хранит список установленных пакетов и из этого списка были удалены записи о пакетах, подготовленных к удалению emerge --depclean. А все файлы я удалить не дал, вот они и болтаются (((
Вы точно уверены что equery
Вы точно уверены что equery не показывает пакет а этот пакет есть в системе? есть примеры не с gentoo-sources?
Посмотрите на содержимое этих папок в /usr/src, может быть это остатки от временных файлов компиляции ядра?
К сожалению, примеров не с
К сожалению, примеров не с gentoo-sources нет.
Я пробежался по emerge.log, бинарников от тех пакетов, которые я ставил в системе не осталось.
А проверять все зависимости вручную ...
Содержимое папок в /usr/src просмотрел, действительно, почти во всех папках (кроме, к сожалению, 2-х) содержимое похоже на остатки от компиляции, в 1 папке - исходники текущего ядра, ну и в одной - то, чего там быть не должно - сорцы старого ядра, которого в системе, по мнению equery, нет((
Ну и не мог же emerge --depclean после Ctr+C продолжить работу и доудалять все пакеты? Или мог? Если мог, я буду только рад )), не зря же он 5 секунд ждал прерывания ))
Вообще --depclean очень
Вообще --depclean очень быстро отрабатывает. Я не знаю, когда уж прямо несколько секунд так важны, что нельзя дождаться окончания его работы.
Текстовый редактор vi имеет два режима работы: в первом он пищит, а во втором — всё портит.
Ну во первых я основательно
Ну во первых я основательно перешерстил world файл, поубирал достаточно много пакетов, и --depclean работал уже где-то минут 10 (если не изменяет память), а перезагрузиться надо было срочно - работа не ждет ))
В общем, с вопросом "кто виноват", все понятно ))
А вот вопрос, что делать остается...
В общем, сначала надо
В общем, сначала надо удостовериться, что повод для беспокойства есть. То есть найти следы недоудалённого пакета, кроме исходников ядра, которые всё равно ручками вычищать приходится постоянно. Может быть, помогут qlop из portage-utils и genlop (покажут историю удалённых пакетов). Ну и http://www.gentoo-wiki.info/Findcruft
Текстовый редактор vi имеет два режима работы: в первом он пищит, а во втором — всё портит.
Спасибо, повода для
Спасибо, повода для беспокойства действительно нет.
Findcruft - это то, что было нужно.
С его помощью увидел, что лишних файлов в системе действительно нет.
Если кто-то будет использовать Findcruft предупреждаю: будьте аккуратны и тщательно проверяйте результаты работы и учтите - файлы, кот. не принадлежат ни к одному пакету могут оказаться симлинками!!!!
.
Я думал, что эта фича/бага
portage
давно известна: при удалении пакета не всегда полностью зачищаются файлы. Причём как правило остаются именно символьные ссылки.ЗЫ: Из последнего: наблюдал на пример
texlive
.:wq
--
Live free or die
Цитата:Я думал, что эта
Все может быть, но я имел ввиду, что findcruft показывает симлинки на существующие файлы как файлы, не принадлежащие ни одному пакету. Напримаер у меня есть симлинк /bin/sh -> /bin/bash, а findcruft предложил мне удалить /bin/sh, что делать мягко говоря не обязательно. Поэтому и предупредил всех, чтобы были повнимательней ))
.
Ну, симлинк
/bin/sh
(не принадлежащий ни одному пакету и по умолчанию указывающий на/bin/bash
, что, строго говоря, не есть совсем правильно) --- фишка тоже старая и достаточно известная...;)
:wq
--
Live free or die
Ну м.б. это и не совсем правильно....
Ну м.б. это и не совсем правильно, но это был один из примеров результатов работы findcruft на моей системе. Симлинков на существующие файлы из пакетов было не один, два или там пять, а что-то около 20. Эти файлы было предложено удалить. М.б. ничего страшного и не произойдет, если их удалить, но я что-то сомневаюсь )).