Часто ставлю программы на короткое время, но они часто тянут кучу пакетов. Приходиться в текстовом файле записывать какие именно пакеты поставил чтобы их потом почистить.
Нет ли плагина или команды YUM чтобы можно было установить программу при этом записав все установленные пакеты в файл, а при удаление показать этот файл чтобы yum все сам это удалил?
Например как то так:
Про плагин не знаю, а сам в подобных случаях смотрю в /var/log/yum.log.
Не совсем то, хотелось бы это автоматизировать.
Например я ставлю Netbeans и знаю что потом он мне не понадобиться еще долго. Он как минимум тянет с собой java.
Как я делаю сейчас:
1)
никогда такими не пользовался. вероятно потому, что, насколько помню, с момента знакомства с debian, сразу же начал использовать рекомендуемый aptitude. его умолчальные настройки и алгоритм сопоставления зависимостей пока нареканий не вызывали.
если бы пользовался apt-get-ом, конечно, пришлось бы и с *orphan-ами познакомиться.
отлично. пусть и сторонними средствами, но процедура отмены конкретной инсталляции имеется.
а вот такого поведения с помощью yum-а и/или ещё чего-нибудь стороннего можно добиться:
1. устанавливаю пакет1. автоматически ставится и пакет0, т.к. пакет1 зависит от пакет0.
2. устанавливаю пакет2 (он тоже зависит от пакет0).
3. удаляю пакет1. удаляется только он один.
4. удаляю пакет2. мне предлагается удалить и пакет0.
?
перекрёстная, так сказать, инсталляция. yum-remove-with-leaves, будучи применён на шаге 3, как себя поведёт?
Ну он не только стоять должен. Им ещё пользоваться надо уметь
Точно не помню, но что-то типа такого будет ипользовать силу плагина: yum remove --with-leaves package
Если просто давать yum remove, то плагин не задействуется.
Ну он не только стоять должен. Им ещё пользоваться надо уметь
Точно не помню, но что-то типа такого будет ипользовать силу плагина: yum remove --with-leaves package
Если просто давать yum remove, то плагин не задействуется.
Буду пробовать.
ПС
Я то думал как yum presto который включился по умолчанию после установки.
yum erase уже отменили? из мана:
remove or erase
Are used to remove the specified packages from the system as well as removing any packages which depend on the package being
removed. remove operates on groups, files, provides and filelists just like the "install" command.
а разве плагин yum-remove-with-leaves не удаляет ли не используемые пакеты(так вроде бы доке написано)
а как же опции resolvedep deplist? O_o
man yum
info yum
а вот такого поведения с помощью yum-а и/или ещё чего-нибудь стороннего можно добиться:
1. устанавливаю пакет1. автоматически ставится и пакет0, т.к. пакет1 зависит от пакет0.
2. устанавливаю пакет2 (он тоже зависит от пакет0).
3. удаляю пакет1. удаляется только он один.
4. удаляю пакет2. мне предлагается удалить и пакет0.
yum erase уже отменили? из мана:
remove or erase
Are used to remove the specified packages from the system as well as removing any packages which depend on the package being
removed. remove operates on groups, files, provides and filelists just like the "install" command.
...
Нет erase не отменили. Здесь имеется ввиду, что удаляются пакеты, которые зависят от удаляемого, а не наоборот. Т.е. если Вы хотите удалить пакет_0, а от него зависит пакет_1 и пакет_2, то они будут удалены. Однако, если Вы удалите пакет_2 и пакет_1, то пакет_0 удалён не будет.
...
а разве плагин yum-remove-with-leaves не удаляет ли не используемые пакеты(так вроде бы доке написано)
а как же опции resolvedep deplist? O_o
man yum
info yum
Именно. Удаляет неиспользуемые, которые не нужны ни сами по себе, ни другим приложениям. Поэтому yum-plugin-remove-with-leaves.noarch редко что удаляет... Плохо он разрешает зависимости. Хотя может это баг. Кстати правильно его использовать так:
Попробовал получилось вот что:
1) remove==erase, вернее я разницы не увидел в разрешение зависимостей.
2) remove==erase без опций и плагина --remove-leaves удаляет сам пакет и те которые зависят от него.
3) remove==erase с плагином --remove-leaves пункт 2 + все пакеты от которых зависит удаляемый пакет, за исключением тех от которых зависит что то еще. Проверяет все пакеты зависимостей и пишет зависит ли от него кто то еще или нет.
Короче говоря с плагином схема озвученная sash-kan работает.
2) remove==erase без опций и плагина --remove-leaves удаляет сам пакет и те которые зависят от него.
3) remove==erase с плагином --remove-leaves пункт 2 + все пакеты от которых зависит удаляемый пакет, за исключением тех от которых зависит что то еще. Проверяет все пакеты зависимостей и пишет зависит ли от него кто то еще или нет.
Короче говоря с плагином схема озвученная sash-kan работает.
А вот --remove-leaves у меня не заработало. Может неудачный объект для эксперимента выбрал. На досуге попытаюсь ещё раз.