LINUX.ORG.RU

[Debian] Удаление пакетов, разрешение зависимостей, виртуальные пакеты


0

0

Debian «Lenny», среда GNOME.

Установил пакет kile (aptitude install kile), удалил пакет kile (aptitude remove kile).

Kile удалился, а установленные вместе с ним konsole, kpdf и kghostview - осталисть, что привело меня в недоумение: как так, если эти пакеты помечены, как установленные автоматически? Поcле сноса kile, никому они больше не нужны и значит должны были тоже удалиться. Полазав по аптитуде, выяснилось, что, например, konsole входит в виртуальный пакет x-terminal-emulator, который, в свою очередь, нужен многим другим пакетам, и никого не волнует, что из x-terminal-emulator у меня уже есть авто-установленный gnome-terminal и вручную установленный tilda.

Вопрос 1. Как же удалять ПО так, чтобы автоматически уничтожить все следы его пребывания в системе?

Сопутсвующие вопросы:

2. После «aptitude purge пакет» в домашнем каталоге все равно остаются конфиги от этого пакета. Так и должно быть? Домашний каталог я должен разгребать вручную?

3. Вместе с гномом поставились iceweasel и epiphany. Последний решил удалить. После «aptitude remove epiphany-browser» браузер как был, так и остался, даже в меню. Как это понять? «aptitude search epiphany» выдал три авто-установленных пакета epiphany-browser-data, epiphany-extensions и epiphany-gecko c такой чехардой:

i gnome Зависит epiphany-extensions
i A epiphany-extensions Зависит epiphany-gecko
i A epiphany-gecko Зависит epiphany-browser-data

Нафига гному сдались расширения эпифани и почему «aptitudе remove epiphany-gecko» предлагает снести гном? Гном, что, получается, никому больше не нужен, кроме как этим несчастным расширениям эпифани, даром что gnome НЕ помечен, как установленный автоматически?

>Полазав по аптитуде, выяснилось, что, например, konsole входит в виртуальный пакет x-terminal-emulator, который, в свою очередь, нужен многим другим пакетам, и никого не волнует, что из x-terminal-emulator у меня уже есть авто-установленный gnome-terminal

Если gnome-terminal предоставляет x-terminal-emulator и установлен, то konsole можно удалять, x-terminal-emulator должен остаться.
В крайнем случае сделай aptitude reinstall gnome-terminal.

и вручную установленный tilda


Вручную — это через ./configure && make && make install?
Если да, то, с точки зрения пакетного менеджера, тильды в системе нет.

Вопрос 1. Как же удалять ПО так, чтобы автоматически уничтожить все следы его пребывания в системе?


apt-get autoremove, если говорить о его зависимостях.

2. После «aptitude purge пакет» в домашнем каталоге все равно остаются конфиги от этого пакета. Так и должно быть? Домашний каталог я должен разгребать вручную?


Емнип, purge вычищает только те конфиги, которые перечислены в метаданных пакета, т.е. «общесистемные».
Пакетный менеджер не следит за тем, где и какие файлы создают установленные программы.

3. Вместе с гномом поставились iceweasel и epiphany. Последний решил удалить. После «aptitude remove epiphany-browser» браузер как был, так и остался, даже в меню. Как это понять?


Поищи бинарник epiphany и посмотри, какому пакету он принадлежит (dpkg -S). Возможно, кривые метаданные menu.

Нафига гному сдались расширения эпифани


Спроси об этом мейнтейнеров гнома в дебиане. Возможно, они отправят тебя с этим вопросом к разработчикам гнома.

почему «aptitudе remove epiphany-gecko» предлагает снести гном?


Потому что, по мнению мейнтейнеров, гном не будет работать без этого пакета.

nnz ★★★★ ()
Ответ на: комментарий от nnz

>Потому что, по мнению мейнтейнеров, гном не будет работать без этого пакета.

)) какие фантазии ...


Debian Lenny i386

#wajig remove-depend epiphany-gecko
Пакеты, которые будут УДАЛЕНЫ:
epiphany-browser epiphany-extensions epiphany-gecko libavahi-gobject0
обновлено 0, установлено 0 новых пакетов, для удаления отмечено 4 пакетов, и 1 пакетов не обновлено.
После данной операции, объём занятого дискового пространства уменьшится на 4387kB.
Хотите продолжить [Д/н]?
------------------------------------------------------------
#wajig install kile

Будут установлены следующие дополнительные пакеты:
konsole
Предлагаемые пакеты:
gbib latex2html pybliographer xfig kile-i18n gv khelpcenter
Рекомендуемые пакеты:
kdvi kghostview kpdf dvipng
НОВЫЕ пакеты, которые будут установлены:
kile konsole
обновлено 0, установлено 2 новых пакетов, для удаления отмечено 0 пакетов, и 1 пакетов не обновлено.
Необходимо скачать 0B/2990kB архивов.
После данной операции, объём занятого дискового пространства возрастёт на 11,7MB.
Хотите продолжить [Д/н]?

---------------------------------------
wajig remove-depend kile
Checking dependencies. Please wait...
Removing: kile konsole
Чтение списков пакетов... Готово
Построение дерева зависимостей
Чтение информации о состоянии... Готово
Пакеты, которые будут УДАЛЕНЫ:
kile konsole
обновлено 0, установлено 0 новых пакетов, для удаления отмечено 2 пакетов, и 1 пакетов не обновлено.
После данной операции, объём занятого дискового пространства уменьшится на 11,7MB.
Хотите продолжить [Д/н]?
--------------------------------------




elipse ★★★ ()
Ответ на: комментарий от nnz

Ну вот. Поставил, называется, «святой» Debian stable с супер-пупер усовершенствованным пакетным менеджером apt.

Вручную — это через ./configure && make && make install?

Нет, я имел ввиду, что собственноручно дал команду установить этот пакет, и у него нет флага автоматизации. Встречный вопрос: «Пометить пакет, как установленный вручную» (на примере aptitude) - это не значит снять флаг автоматизации, а значит вообще вывести пакет из вЕдения пакетного менеджера?

apt-get autoremove, если говорить о его зависимостях.
Поищи бинарник epiphany и посмотри, какому пакету он принадлежит (dpkg -S)

А я тут во-всю разбираюсь с aptitude, который мне очень понравился тем, что всё-в-одном и тем, что есть и командный и довольно информативный и вроде как с богатыми возможностями интерактивный режим. Думал - освою его и буду всегда только им и пользоваться. Не, не получится? Или это просто дело привычки - кто чем сам пользуется, то и, естественно, советует?

diode_on ()
Ответ на: комментарий от diode_on

aptitude не использую с 2006 года (и тем более на стабильном дистре).

на скорую руку применяю - apt-get
для «тонких» админ работ в системе - wajig

От леньки и для обзора пакетов - synaptic
А зачем нужен aptitude со своими вечными глюками ?
- хз , тайна покрытая мраком для меня.

elipse ★★★ ()

После «aptitude

aptitude не нужен. apt-get во все поля

roman77 ★★★★★ ()
Ответ на: комментарий от diode_on

«Пометить пакет, как установленный вручную» (на примере aptitude) - это не значит снять флаг автоматизации, а значит вообще вывести пакет из вЕдения пакетного менеджера?

Нет. «Установленный вручную» не означает «установленный локально» — пакетный менеджер о нём не «забудет», но автоматически удалять как «осиротевший» (orphaned) не будет.

Не, не получится?

Эм... aptitude ведь сам при запуске предлагает удалить вытянутые по зависимостям пакеты. Если нет, то иди в Options > Preferences, и отметь пункт Remove unused packages automatically.

GotF ★★★★★ ()

Гном, что, получается, никому больше не нужен, кроме как этим несчастным расширениям эпифани, даром что gnome НЕ помечен, как установленный автоматически?

Оно предлагает снести только метапакет. Честно говоря, ставить метапакеты типа gnome или kde — не лучшая затея. Лучше ставить gnome-core (или kde-core), а потом доставлять нужное. Самый надёжный, хоть и немного затратный по времени способ — посмотреть зависимости названных метапакетов, и поставить их вручную. Тогда гарантированно ни один из них не окажется под autoremove (ну и заодно можно иметь gnome без бесполезных gedit, eog и проч. =) ).

GotF ★★★★★ ()
Ответ на: комментарий от GotF

autoremove тут не в тему.
и назойливые сообщения о том ,что «что-то можно удалить там» могут быть выключены.
/etc/apt/apt.conf
APT::Get::HideAutoRemove «false»;

Честно говоря, ставить метапакеты типа gnome или kde — не лучшая затея.


довольно часто, просто достаточно поменять изначально умолчание в:

/etc/apt/apt.conf

APT::Install-Recommends «false»;

Для новичков выставлено начиная с Debian Etch умолчание как:


APT::Install-Recommends «true»;

так меньше задабливают дурными вопросами,
но начинают потом выть «а почему так много ?»


elipse ★★★ ()
Ответ на: комментарий от elipse

APT::Get::HideAutoRemove «false»;

Как таковое автоудаление тоже можно отключить с помощью APT::Get::AutomaticRemove

Для новичков выставлено начиная с Debian Etch умолчание как

Разве? В Etch только aptitude по умолчанию ставит рекомендуемые. А вот в Lenny как apt-get, так и aptitude. Про synaptic точно не скажу, т.к. пользовался мало.

GotF ★★★★★ ()
Ответ на: комментарий от GotF

>Лучше ставить gnome-core (или kde-core), а потом доставлять нужное.

Мне тоже близка эта идея, но я впервый раз, чтобы было от чего отталкиваться, поставил метапакет гнома, а он меня сразу же всем устроил - не так уж много софта ставит, только два браузера по моему - не нужно, и network-manager пришлось снести, так как с ним pppoeconf не заводил инет.

diode_on ()
Ответ на: комментарий от elipse

>но начинают потом выть «а почему так много ?»

да-да, именно так и случилось: когда поставил kde, пробежался по менюшке - воскликнул «да ну нафиг! я столько установленного одновременно софта в жизни не видел!» и быстро вернулся к гному.

diode_on ()
Ответ на: комментарий от elipse

Daniel Baumann сделал пакеты для настройки
apt (и не только) через GUI gkdebconf или
dpkg-reconfigure preseed-apt.
Сайт проекта:
http://customization.debian-projects.org/
пока тут доступно все только в сырцах из git для lenny
или для Sid:
deb http://customization.debian-projects.org/ sid/snapshots main contrib non-free


А попробовать уже собранные для lenny пакеты настройки apt можно из:

ftp://h0.org.ua/pub/elipse/debian/preseed/preseed-apt-utils_0_all.deb
ftp://h0.org.ua/pub/elipse/debian/preseed/preseed-apt_0_all.deb

elipse ★★★ ()
Ответ на: комментарий от GotF

>Разве?

Да да, сначала проверили на убунтоидах ))
Бац , и число шпаргалок и «наскальных надписей» резко сократилось ))
А потом и деб засунули.

elipse ★★★ ()
Ответ на: комментарий от diode_on

>Ну вот. Поставил, называется, «святой» Debian stable с супер-пупер усовершенствованным пакетным менеджером apt.

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

«Пометить пакет, как установленный вручную» (на примере aptitude) - это не значит снять флаг автоматизации, а значит вообще вывести пакет из вЕдения пакетного менеджера?


Нет. Емнип, флаг автоматизации означает, что пакет был установлен автоматически для удовлетворения чье-то зависимости, и если от него сейчас никто не зависит, то aptitude может его спокойно удалять.
Пакет, не промаркированный как auto, нужен именно пользователю, из без указания пользователя удаляться не будет.

А я тут во-всю разбираюсь с aptitude, который мне очень понравился тем, что всё-в-одном и тем, что есть и командный и довольно информативный и вроде как с богатыми возможностями интерактивный режим. Думал - освою его и буду всегда только им и пользоваться. Не, не получится? Или это просто дело привычки - кто чем сам пользуется, то и, естественно, советует?


Лично мне aptitude не нравится. Хотя бы этим http://bugs.debian.org/cgi-bin/pkgreport.cgi?pkg=aptitude;dist=stable
На мой взгляд, dpkg и apt очень неплохо дополняют друг друга, и для большинства задач ничего кроме них и не надо.

nnz ★★★★ ()

> Так и должно быть? Домашний каталог я должен разгребать вручную?

да

thunar ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.