Linux удалить пакет со всеми зависимостями

Как удалить пакет Ubuntu

Установка и удаление программ одна из самых важных вещей для пользователя компьютера. Поскольку нам нужно как нибудь получать новые, нужные программы, а также удалять лишние. Но удаление пакетов в Ubuntu имеет некоторые тонкости. После удаления могут остаться зависимости, пакеты установленные, как рекомендованные, а также конфигурационные файлы.

В этой статье мы разберем как удалить deb пакет Ubuntu, при чем удалить чисто, так, чтобы после него не осталось следов в системе. Также поговорим о полном удалении PPA, поскольку много пакетов, которых нет в официальных репозиториях мы устанавливаем из PPA.

Как удалить пакет Ubuntu

Самый простой способ удалить пакет Ubuntu, это воспользоватся одной из графических утилит, поставляемых специально для этого, например Synaptic или Центр приложений Ubuntu. По сути это делается в пару кликов. Сначала рассмотрим порядок действий в Центре приложений Ubuntu.

Запустить центр приложений вы можете из панели значков Unity:

ubuntu

Список всех установленных пакетов находится на вкладке Установлено, здесь приложения рассортированы по категориям:

ubuntu1

Чтобы удалить пакет Ubuntu, достаточно кликнуть по нему левой кнопкой мыши, и когда появляться доступные действия нажать кнопку Удалить:

Для завершения нужно будет подтвердить удаление и ввести пароль.

Пакет удален, но не совсем так, как нам хотелось бы. Но об этом позже.

Дальше рассмотрим пакетный менеджер Synaptic. Это как ни как стороннее программное обеспечение, но многие его используют из-за большого функционала и удобного интерфейса. Если программа еще не установлена, ее нужно установить с помощью центра приложений или выполнив в терминале:

sudo apt install synaptic

ubuntu6

Запустить программу можно через терминал, выполнив команду:

Посмотреть установленные пакеты вы можете выбрав вкладку состояние, а затем выбрав Установленные:

ubuntu7

Удалить deb ubuntu вы можете просто нажав правой кнопкой мыши и в контекстном меню на нужном пакете и выбрав отметить для удаления или отметить для полного удаления:

ubuntu8

Программа покажет, какие еще пакеты будут удалены, это те пакеты, которые зависят от нашего пакета:

ubuntu9

Теперь, чтобы завершить удаление, осталось нажать кнопку Применить:

ubuntu10

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

ubuntu11

ubuntu12

Просто удаление и полное удаление отличается только тем, что при полном удалении удаляются конфигурационные файлы. Но проблема этих инструментов в том, что пакеты установленные как зависимости и рекомендованные к программе не удаляются и остаются в системе. Такое поведение наблюдается как в Synaptic, так и в Центре приложений Ubuntu. Поэтому мы переходим к описанию самого гибкого способа — удаление пакетов Ubuntu в терминале.

Читайте также:  Linux выполнение скрипта каждую минуту

Как удалить пакет Ubuntu в терминале

В новых версиях Ubuntu для управления пакетами, а в том числе и удаления можно использовать новый менеджер пакетов — apt. Команда удаления выглядит таким образом:

sudo apt remove имя_пакета

Будет выполнено полное удаление пакета, включая конфигурационные файлы и зависимости, только рекомендованные программы останутся. Если вы хотите использовать apt-get чтобы удалить deb ubuntu, то порядок действий немного другой. Для обычного удаления пакета выполните:

sudo apt-get remove имя_пакета

Для удаления пакета вместе с его конфигурационными файлами, выполните:

sudo apt-get purge имя_пакета

А чтобы, также удалить зависимости, установленные вместе с пакетом, нужно после одной из предыдущих команд выполнить:

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

Ну с основами разобрались, теперь перейдем к более сложным ситуациям. Что если вы устанавливали программу из deb файла и теперь не знаете точно, как называется ее пакет, чтобы удалить?

Это очень просто узнать, например по исполняемому файлу, допустим исполняемый файл программы TimeShift находится по адресу /usr/bin/timeshift, теперь узнаем ее пакет:

sudo dpkg -S /usr/bin/timeshift

Как видите, пакет так и называется — timeshift. Теперь можно удалить программу Ubuntu, одним из выше описанных способов.

Очень часто мы устанавливаем недостающее нам программное обеспечение из PPA, но не все эти пакеты нужны нам на протяжении долгого времени, а при обновлении системы, могут даже вызвать ошибки. Так как же удалить все пакеты установленные из PPA? Для этого есть специальная утилита: ppa-purge.

Если она еще не установлена, устанавливаем командой:

sudo apt install ppa-purge

Теперь, чтобы удалить все пакеты установленные из определенного ppa используйте:

sudo ppa-purge -i ppa:владелец_ppa/имя_ppa

Обратите внимание на ppa:владелец_ppa/имя_ppa — обычно в таком формате записываются все PPA: протокол:владелец/имя.

Узнать список репозиториев можно в программе источники приложений:

Такой командой можно одним махом удалить пакеты ubuntu, установленные из ppa:

find /etc/apt/sources.list.d -type f -name «*.list» -print0 | \
while read -d $’\0′ file; do awk -F/ ‘/deb / && /ppa\.launchpad\.net/ ‘ «$file»; done

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

Но все же способ есть, обычно, разработчики в файле сценариев makefile, кроме цели install реализуют цель uninstall, которая дозволяет выполнить обратное действие.

Поэтому если у вас осталась папка с исходным кодом той программы можно просто перейти в нее и выполнить make uninstall чтобы удалить приложение Ubuntu:

cd /папка/с/исходниками
$ sudo make uninstall

Выводы

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

Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.

Источник

Читайте также:  Повышение скорости работы дистрибутива linux mint

Как полностью удалить пакет с зависимостями в Linux, использующим пакетный менеджер apt.

При установке программ, при помощи пакетного менеджера apt, у многих часто возникаем вопрос как их удалять. Для этого есть команды:

sudo apt-get autoremove имя_программы

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

sudo apt-get remove имя_программы

Команда удаляет пакет не затрагивая зависимости.

sudo apt-get purge имя_программы

Команда удаляет конфигурационные файлы пакета.

Казалось бы, на этом все, но не тут-то было, apt-get autoremove не всегда удаляет всё что было установлено вместе с пакетом.

Что бы наверняка удалить все что было установлено вместе с пакетом, можно посмотреть лог apt:

cat /var/log/apt/history.log | more

Пример вывода этой команды:

Start-Date: 2016-08-03 07:46:19 Commandline: apt-get install samba Install: python-tdb:amd64 (1.3.8-2, automatic), python-samba:amd64 (2:4.3.9+dfsg -0ubuntu0.16.04.2, automatic), python-dnspython:amd64 (1.12.0-1, automatic), sam ba:amd64 (2:4.3.9+dfsg-0ubuntu0.16.04.2), samba-dsdb-modules:amd64 (2:4.3.9+dfsg -0ubuntu0.16.04.2, automatic), libaio1:amd64 (0.3.110-2, automatic), tdb-tools:a md64 (1.3.8-2, automatic), attr:amd64 (1:2.4.47-2, automatic), samba-common:amd6 4 (2:4.3.9+dfsg-0ubuntu0.16.04.2, automatic), samba-vfs-modules:amd64 (2:4.3.9+d fsg-0ubuntu0.16.04.2, automatic), samba-common-bin:amd64 (2:4.3.9+dfsg-0ubuntu0. 16.04.2, automatic), python-ldb:amd64 (2:1.1.24-1ubuntu3, automatic) End-Date: 2016-08-03 07:47:23

Здесь видно что при установке samba, так же были установлены python-tdb, python-samba и т.д. Соответственно для полного удаления установленного пакета можно набрать команду:

sudo apt-get autoremove --purge python-tdb python-samba python-dnspython samba samba-dsdb-modules libaio1 tdb-tools attr samba-common samba-vfs-modules samba-common-bin python-ldb

Для того что бы не искать и не выбирать эти программы из лога вручную можно спарсить лог:

sudo sed -n '/Commandline: apt-get install имя_пакета/,/End-Date:.*/p' /var/log/apt/history.log | sed -n '/Install.*/p' | sed -e s'/Install: //g' | sed -e s'/:amd64 //g' | sed -e s'/(.[^)]*),\//g' | tr '\n' ' '

Внимание: эти команды парсят весь лог, т.е. если несколько раз устанавливалась/удалялась программа, на экран выведутся все программы которые были установлены при каждой установке, не только при последней.

Что бы отображались программы только при последней установке нужно в конце строки заменить «tr ‘\n’ ‘ ‘» на «tail -1», т.е. команда должна быть:

sudo sed -n '/Commandline: apt-get install имя_пакета/,/End-Date:.*/p' /var/log/apt/history.log | sed -n '/Install.*/p' | sed -e s'/Install: //g' | sed -e s'/:amd64 //g' | sed -e s'/(.[^)]*),\//g' | tail -1

На экран выведутся программы, которые были установлены при установке пакета.

Что бы их удалить можно ввести:

sudo sed -n '/Commandline: apt-get install имя_пакета/,/End-Date:.*/p' /var/log/apt/history.log | sed -n '/Install.*/p' | sed -e s'/Install: //g' | sed -e s'/:amd64 //g' | sed -e s'/(.[^)]*),\//g' | tr '\n' ' ' | sudo xargs apt-get autoremove --purge -y

Все что устанавливалось при установке вашего пакета, будет удалено.

Источник

Какой командой можно удалить пакет со всеми данными и зависимостями?

Совсем корректный ответ — никакой. Данные програм, которые возникли за время использования программы, не удаляются автоматически. Если упустить этот шаг, то вам надо смотреть в сторону удаления осиротевших листьев репозитория. Я честно говоря не помню про Debian, но наверняка что-то такое там есть.

2 ответа 2

aptitude purge && apt-get autoremove && aptitude purge ~c 

Если прога создаст через touch /etc/someone-file , то удалять только руками. Потому что такое в менеджере пакетов не регистрируется.

Читайте также:  Linux удалить файлы во вложенных папках

Для этого в apt есть ключ —purge .

—purge

Use purge instead of remove for anything that would be removed. An asterisk («*») will be displayed next to packages which are scheduled to be purged. remove —purge is equivalent to the purge command. Configuration Item: APT::Get::Purge .

sudo apt autoremove --purge пакет 

Похожие

Подписаться на ленту

Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.

Дизайн сайта / логотип © 2023 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2023.7.14.43533

Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.

Источник

Как удалить пакет в Linux

Чтобы удалить пакет в Linux, вы можете использовать утилиту управления пакетами вашей операционной системы. Какой именно инструмент использовать, зависит от дистрибутива Linux, который вы используете. Дальше приведем несколько примеров команд для удаления пакета в разных дистрибутивах Linux.

Зачем удалять пакеты в Linux?

Как удалить пакет в Linux

Есть несколько причин, по которым вы можете захотеть удалить пакеты в Linux:

  1. Освобождение места на диске: на ваше ПК может быть ограниченное место на диске, вы можете удалить неиспользуемые пакеты, чтобы освободить место на диске.
  2. Установка других программ: если вы хотите установить другую программу, которая конфликтует с уже установленным пакетом, вам может потребоваться удалить этот пакет.
  3. Устранение проблем: часто пользователи сталкиваются с проблемами при использовании программы или пакета, удаление и повторная установка может помочь устранить проблему.
  4. Безопасность: если у вас есть уязвимый или устаревший пакет, который необходимо удалить из соображений безопасности, вы можете удалить его.
  5. Соблюдение лицензии: некоторые пакеты могут иметь ограничения использования, и вы можете быть обязаны удалить их, если нарушаете условия лицензии.

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

Debian, Ubuntu

Как удалить пакет в Linux

Debian, Ubuntu и другие на основе Debian:

Эта команда удалит пакет, но оставит его конфигурационные файлы.

Чтобы удалить пакет и все его конфигурационные файлы, используйте:

Red Hat, CentOS

Red Hat, CentOS и другие на основе Red Hat:

Чтобы удалить пакет и все его зависимости, используйте:

Arch Linux:

Эта команда удалит пакет и все его зависимости, которые не нужны ни для каких других пакетов.

Если вы хотите удалить пакет и все его зависимости, используйте:

Если вы хотите удалить пакет, все его зависимости и их неиспользуемые зависимости, используйте:

Обратите внимание, что перед выполнением любой из этих команд вам может потребоваться ввести пароль администратора (root).

Источник

Оцените статью
Adblock
detector