LINUX.ORG.RU

только принудительно через:

$ rpm -e имя_пакета

но проблем можешь огрести немало :) Так что лучше тот пакетик не трогай раз у него столько зависимостей.

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

rpm -e не удалит если будут зависимости удаления.

rpm -e --nodeps имя_пакета - удалит пакет, НО будут проблемы.

Сдуру такие вещи делать не стоит.

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

> Так что лучше тот пакетик не трогай раз у него столько зависимостей.

Почему это -- не трогай? Поставил я пакет foo, которому нужны пакеты bar, baz, .... Наигрался я с foo, хочу его удалить. А заодно -- те пакеты, которые были нужны только ему. Как так -- не трогай?

P.S.

В Debian-подобных дистрах это делается так:

aptitude purge --purge-unused foo

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

> АФАИК в rpm такого механизма нет. вива deb! (и tar.gz =))

Так а в чем сложность то? Надо найти все зависимости удаляемого пакета, и посмотреть от каждой зависимости ещё кто-нибудь зависит или нет, если нет удаляем пакет ко всем @#$%^&.

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

И эти людям не нравится package manager в Slackware.

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

>Так а в чем сложность то? Надо найти все зависимости удаляемого пакета, и посмотреть от каждой зависимости ещё кто-нибудь зависит или нет, если нет удаляем пакет ко всем @#$%^&.

всёравно придётся вручную просматривать все пакеты которые пытается удалить вышеприведённый скрипт так как среди зависимостей foo может оказаться нужный пакет поставленный нами явно а не автоматом. В deb (или наверное надо говорить в dpkg) работает система auto installed пакетов и позволяет легко их удалить. Ещё в вашем методе не учитываются зависимости зависимостей (и т.д.) удаляемого пакета. ведь бывает что ставится целое дерево пакетов а не один уровень зависимостей.

Nao ★★★★★
()

>Поставил пакет, он потянул за собой кучу других... Как мне удалить этот пакет со всеми зависимостями, кроме тех, которые используются другими пакетами?

Пользуйся ястом и головой, когда он будет прелагать варианты решения зависимостей.

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

> всёравно придётся вручную просматривать все пакеты которые пытается удалить вышеприведённый скрипт так как среди зависимостей foo может оказаться нужный пакет поставленный нами явно а не автоматом. В deb (или наверное надо говорить в dpkg) работает система auto installed пакетов и позволяет легко их удалить.

Т.е., на сколько я понял, dpkg отслеживает какие пакеты были установлены руками, а какие как удовлетворение зависимостей? А что в rpm такого нет?

> Ещё в вашем методе не учитываются зависимости зависимостей (и т.д.) удаляемого пакета. ведь бывает что ставится целое дерево пакетов а не один уровень зависимостей.

Ну это не проблема... Можно отстреливать рекурсивно...

Вопрос: как получить список зависимостей? rpm -qR выдает кроме пакетов ещё и зависимости в виде файлов. Как узнать в каких пакетах они лежат? Пробовал -qf, но в этом случае нужно указывать полный путь к файлу... А как по одному имени файла определить пакет?

Ещё по deb есть вопрос: в каком-то менеджере есть опция удалить пакет с конфигами (да???), а как он узнает, что в ~/.foo они лежат? Или это то же в deb прописано? Такое есть в rpm?

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

>Ещё по deb есть вопрос: в каком-то менеджере есть опция удалить пакет с конфигами (да???), а как он узнает, что в ~/.foo они лежат? Или это то же в deb прописано? Такое есть в rpm?

конфиги в ~/ не будут затронуты, речь идёт о конфигах в /etc созданных/распакованных во время установки пакета. (хотя впринципе они могут быть не только в /etc/, просто некоторые файлы в пакете помечены как конфиги)

При обычном apt-get remove конфиги удалены не будут. Если же сделать apt-get --purge remove то пакет удалится с конфигами.

АФАИР в rpm такого нет.

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

> Т.е., на сколько я понял, dpkg отслеживает какие пакеты были установлены руками, а какие как удовлетворение зависимостей?

Не dpkg, а apt.

> Ещё по deb есть вопрос: в каком-то менеджере есть опция удалить пакет с конфигами (да???),

aptitude remove [что] # предпочтительный вариант

apt-get remove [что] # но можно и так

dpkg --remove [что] # и даже так

> а как он узнает, что в ~/.foo они лежат?

Никак. dpkg (и apt) не трогает юзерских данных.

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

> АФАИР в rpm такого нет.

Не знаю на счет удаления, но некоторые файлы там тоже помечены как конфиги (-qc).

SSZB
() автор топика
Ответ на: комментарий от Dselect

Проврался

> aptitude remove [что] # предпочтительный вариант

aptitude purge [что]

> apt-get remove [что] # но можно и так

apt-get remove --purge [что]

> dpkg --remove [что] # и даже так

dpkg --purge [что] # и даже так

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

Прикрутить-то можно, а неужели штатными средствами нельзя?

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