При помощи какой команды вы можете удалить пакет приложения gimp которое вы больше не используете
Программы, игры, утилиты и другие программные компоненты в операционной системе Ubuntu представлены в виде пакетов. Когда вы устанавливаете какую-нибудь программу (приложение), вы устанавливаете один или несколько пакетов.
Рассмотрим, как удалять приложения (пакеты) в Ubuntu.
Существует два основных способа удаления пакетов в Ubuntu: использование Менеджера приложений Ubuntu (Ubuntu Software Center) и использование командной строки.
Удаление программ, используя Менеджер приложений
Рассмотрим самый простой способ удаления пакетов в Ubuntu — использование Менеджера приложений.
Запустите Менеджер приложений Ubuntu. Для этого откройте лаунчер, нажав сочетание клавиш Super+A (клавиша Super на клавиатурах Windows соответствует клавише Win ). В лаунчере запустите программу Менеджер приложений.
Запуск Менеджера приложений
Перейдите на вкладку Установлено . В этой вкладке представлены программы, установленные в системе.
Список установленных приложений
Напротив каждой программы есть кнопка Удалить . Нажмите на нее, чтобы удалить соответствующее приложение. После нажатия на кнопку, появится предупреждение, а также нужно будет ввести пароль.
Предупреждение
Ввод пароля
Удаление программ, используя командную строку
Второй распространенный способ удаления программ — это использование командной строки.
Для управления пакетами в Ubuntu используются утилиты командной строки apt и apt-get. Они имеют схожий синтаксис. Для новичков рекомендуем использовать утилиту apt. Смотрите также наше руководство: «Использование APT. Команды apt и apt-get».
Запустите Терминал, нажав сочетание клавиш Ctrl+Alt+T .
Чтобы удалить пакет, выполните следующую команду (вместо имяпакета необходимо указать настоящее название пакета):
Например, чтобы удалить программу GIMP необходимо выполнить команду:
Команда apt remove выполняет удаление пакета, но не удаляет конфигурационные файлы этого пакета. Если вы установили программу, выполнили в ней какие-нибудь настройки, то, выполнив команду apt remove , вы удалите саму программу, но конфигурационные файлы удалены не будут. И, повторно установив данную программу, она будет использовать те настройки, которые вы ранее изменили.
Для полного удаления пакета, включая его конфигурационные файлы, используется команда apt purge .
Чтобы полностью удалить пакет и его конфигурационные файлы используется команда:
Чтобы удалить сразу несколько пакетов можно указать их названия через пробел:
Чтобы вывести список всех установленных пакетов используется команда:
Удаление Snap пакетов
В Ubuntu есть пакеты, которые отличаются от обычных — это Snap пакеты. Подробнее про Snap пакеты вы можете прочитать в нашей статье «Snap-пакеты в Linux. Что это и как с ними работать»
Вы можете удалить Snap пакеты точно также как и любые другие через Центр приложений Ubuntu. В Менеджере приложений Ubuntu для snap-пакетов указан источник «Snap Store». Обращаем ваше внимание на то, что в списке приложений могут присутствовать программы, которые могут быть установлены через обычные репозитории Ubuntu, так и через Snap. Обычно такие приложения имеют разные версии. Приложения, распространяемые через Snap, как правило, всегда новее.
Рассмотрим, как удалять приложения, установленные через Snap, используя командную строку.
Чтобы вывести список установленных Snap пакетов выполните команду:
Для удаления Snap пакета выполните команду:
Удаление неиспользуемых пакетов
Когда вы устанавливаете какую либо программу, то обычно помимо основного пакета программы устанавливаются еще другие пакеты, которые требуются для работы данной программы. Они называются зависимостями.
После удаления программы, зависимости не удаляются. Они могут вообще не использоваться в системе или использоваться другими программами. Если пакеты-зависимости не используются другими программами, то такие пакеты можно удалить, чтобы они не занимали место в системе.
Для удаления неиспользуемых пакетов используется команда:
Данная команда автоматически удалит неиспользуемые пакеты.
Заключение
Мы рассмотрели различные способы удаления программ в Ubuntu. В большинстве случаев для удаления программ можно пользоваться Менеджером приложений Ubuntu. Использование командной строки дает дополнительные возможности и зачастую работать через нее быстрее.
GNU/Linux, как и любая другая операционная система, имеет много недостатков, и один из них, является бэкендом установки приложений.
Установка приложений в GNU/Linux намного проще, чем в Windows. Большинство приложений, которые вам понадобятся, можно установить нажатием одной кнопки. Некоторые, с помощью одной команды, которую вы можете скопировать и вставить из интернета. Вам не нужно беспокоиться о рекламном програмном обеспечении и других вещах.
Но есть способ как полностью удалить приложения вместе со всеми его данными с помощью командной строки.
Получить название пакета
Программное обеспечение в системах GNU/Linux распространяется в виде пакетов. Эти пакеты имеют уникальное имя, и при удалении или установке пакета через командную строку необходимо знать точное имя пакета. Поскольку мы хотим удалить приложение, логично предположить, что оно уже установлено в системе. Вы можете получить список всех установленных пакетов в системе, используя команду dpkg --list . Итак, запустите терминал зажав Ctrl+Alt+T и введите команду:
Примечание: все действия по осуществляются копирования или вставки команд в терминале выполняются при помощи зажатия дополнительной клавиши Shift . Таким образом, для того чтобы скопировать что либо в терминале, вам необходимо использовать сочетание клавиш Ctrl+Shift+С , а для того чтобы вставить какую либо команду в терминал, необходимо зажать сочетание клавиш Ctrl+Shift+V .
Вы должны увидеть довольно длинный список имен пакетов вместе с номером версии и небольшим описанием, как показано на скриншоте выше. Большинство приложений устанавливают несколько пакетов, поэтому важно, чтобы вы могли определить основной пакет приложения. Например, на скриншоте выше вы можете увидеть vlc, vlc-bin, vlc-data и т.д. Если вы хотите удалить их, вы должны удалить vlc, потому что это, очевидно, основной пакет.
Удаление приложения с сохранением персональных настроек
Чтобы удалить приложение, мы можем использовать команду apt-get , которая также используется для установки приложений, затем пишите remove (удалить) и название пакета, в нашем случае, это vlc . Конечно, команда sudo должна быть помещена перед всем остальным для выполнения задач суперпользователя. В итоге, мы получаем команду:
sudo apt-get remove vlc
На скриншоте ниже видно, что удалился лишь тот пакет который был прописан (vlc).
Такой способ удаления приложения сохранит параметры конфигурации приложения, это пригодится в том случае, если вы захотите переустановить его позже, чтобы при повторной установке программа уже была точно настроена так, как вам нравится.
Есть еще один варианта удаления приложений, который полностью удалит: приложение, его данные и параметры конфигурации.
Полная деинсталляция
Таким образом, чтобы полностью удалить VLC Media Player, необходимо ввести команду:
sudo apt-get --purge remove vlc
Удалить зависимости
Как мы упоминали ранее, иногда приложение устанавливает множество других пакетов, которые требуются приложению для правильной работы. Например, если вы устанавливаете какое-либо приложение, разработанное для среды рабочего стола KDE Plasma, оно установит несколько пакетов KDE, от которых оно зависит.
Вам может больше не понадобиться эти пакеты, когда вы удалили приложение. Удаление их не вредит нормальному функционированию других приложений на вашем компьютере. Это в основном благодаря команде autoremove , которая обнаруживает такие устаревшие программные пакеты, которые не используются никакими приложениями, и удаляет их из вашей системы. После удаления приложения всегда лучше выполнить следующую команду.
Иногда вы можете установить приложение на Ubuntu, и, попробовав его, вы решаете, что это приложение не для вас. В этом случае вы, вероятно, захотите удалить пакет.
Только пользователь root или пользователь с sudo привилегиями может удалить пакеты из Ubuntu.
Удаление пакетов с помощью Ubuntu Software Center
Если командная строка не для вас, вы можете удалить приложения через Ubuntu Software Center (USC). Эта утилита предоставляет графический интерфейс для поиска, установки и удаления приложений.
На экране «Действия» найдите «Ubuntu Software» и нажмите на оранжевый значок USC. Это откроет инструмент USC.
Чтобы получить список всех установленных приложений, нажмите на вкладку «Установлено» в верхней панели навигации.
Прокрутите вниз, пока не найдете приложение, которое хотите удалить, и нажмите кнопку «Удалить» рядом с ним.
Инструмент Ubuntu Software показывает только установленные приложения с графическим интерфейсом пользователя (GUI). Если вы не можете найти пакет, который хотите удалить, вы должны удалить пакет из командной строки.
Удаление пакетов с помощью командной строки
Все, что вы можете сделать с помощью инструментов GUI, вы можете сделать из командной строки. На самом деле, командная строка дает вам больше возможностей и контроля для удаления пакетов программного обеспечения.
Вы можете открыть свой терминал, используя Ctrl+Alt+T сочетание клавиш или нажав на значок терминала.
Перед удалением пакета программного обеспечения вы должны сначала найти точное имя пакета. Чтобы получить список всех установленных пакетов в вашей системе, наберите:
В дистрибутивах Ubuntu, Debian и связанных с ними Linux вы можете устанавливать, обновлять, удалять и иным образом управлять пакетами программного обеспечения с помощью утилит apt и apt-get командной строки. Синтаксис обеих команд идентичен.
Чтобы удалить установленный пакет, выполните следующую команду:
Замените package_name название пакета, который вы хотите удалить.
Вы также можете удалить несколько пакетов. Имена пакетов должны быть разделены пробелом:
Команда remove удаляет указанные пакеты, но может оставить некоторые файлы пакетов позади. Если вы хотите удалить пакет, включая все его файлы, используйте purge вместо remove :
Удалить Snap Packages
Если приложение, которое вы хотите удалить, не отображается в списке при запуске, sudo apt list --installed то, вероятно, оно было установлено в виде мгновенного пакета.
Для просмотра списка всех установленных пакетов моментальных снимков выполните следующую команду:
Как только вы знаете точное имя пакета, вы можете удалить его, набрав:
Удалить неиспользуемые пакеты
Всякий раз, когда вы устанавливаете новый пакет, который зависит от других пакетов, будут также установлены зависимости пакета. Когда пакет будет удален, зависимые пакеты останутся в системе. Эти оставшиеся пакеты больше не используются чем-либо еще и могут быть удалены.
Вы можете удалить ненужные пакеты с помощью:
Вывод
Мы показали вам, как удалять приложения из вашего Ubuntu через командную строку и с помощью Ubuntu Software Center. Умение удалять пакеты является неотъемлемой частью системного администрирования Linux.
Есть ряд причин, по которым вы захотите удалить ранее установленный пакет из вашей Ubuntu. Например, вам может потребоваться удалить приложение, которое вам больше не нужно, или освободить место на диске.
в CLDX 9.9 по умолчанию нашпиговано куча всякого ненужного мне софта. Я удалил gimp, cups и им подобные, но теперь revdep-rebuild говорит подобные вещи:
* . /usr/bin/gimp-2.6 not owned by any package is broken .
/usr/bin/gimp-2.6 -> (none).
Как правильно надо удалять такие большие пакеты, которые тянут за собой тучу зависимостей?
PS. emerge -av --depclean делал
Уж сколько раз удалял разного калибра пакеты по emerge -C - никогда с таким не сталкивался. Что-то у тебя, походу, при установке в своё время дурило.
findcruft тебя спасёт.
emerge --depclean ?
Хотя соглашусь, что не должно быть этого
На примере the GIMP
А правильнее при установке чего то с тучей зависимостей сделать таким макаром emerge gimp -pv из всего выхлопа делаем set @gimp об этом читать тут а в последствие установка всего и со всеми зависимостями emerge @gimp удаление всего и со всеми зависимостями emerge @gimp --unmerge обновление всего и со всеми зависимостями emerge --update --newuse --deep @gimp
Костылевато звучит. Да и в случае с гимпом в этот сет попадут куча пакетов навроде glib, gtk+, zlib и т.д. Как ты думаешь что произойдёт после удаления такого сета? Сеты не отслеживают обратные зависимости и не предназначены вобще они для этого.
Ди и вам для справки sys-libs/zlib, dev-libs/glib идут еще в stage-3 а gtk+ подтянется на этапе установки любого dm/wm без которых смысла в the gimp тоже как бы мало.
Как ты думаешь что произойдёт после удаления такого сета?
А произойдет то что должно произойти. Удалится все что попало в сет. Но орган под названием мозг для того и дан человеку чтобы хоть иногда думать. И если человек в сет gimp добавит glib, gtk+, zlib а потом сделает emerge --unmerge @gimp то это ссзб
> Да нет уважаемый Nao "куча пакетов навроде glib, gtk+, zlib и т.д." уже будет в системе так как вменяемые люди gimp обычно ставят не на голый stage-3 а на систему с уже с установленными как минимум xorg и gnome/kde/.
Может будет, а может и не будет. У юзера например может стоять не gtk WM/DE и он захочет поставить гимп. В тот "сет" вполне вероятно попадёт пакет dev-python/pygtk и если в дальнейшем будут установлены другие гтк приложения которые его используют, а потом юзер сделает emerge -C @gimp, то будет не очень хорошо.
Напротив - emerge --depclean хоть и не самый удачный инструмент, но он отработает такую ситуацию корректно.
>А произойдет то что должно произойти. Удалится все что попало в сет. Но орган под названием мозг для того и дан человеку чтобы хоть иногда думать. И если человек в сет gimp добавит glib, gtk+, zlib а потом сделает emerge --unmerge @gimp то это ссзб
Мозг нужен для того чтобы думать, согласен, а вот рутину по высичлению зависимостей пусть за меня будет делать portage. Вы предлагаете юзеру самому поработать пакетным менеджером используя сеты таким образом.
Я не говорю что использовать сеты для хранения зависимостей (которые кстати ещё могут и поменяться!) нельзя, но это не удобно и создаёт массу потенциальных проблем в будущем.
Все минусы сполна компенсируются плюсами.
> Человек определился с USE флагами и не собирается их менять
Флаги могут измениться после установки/удаления некоторых пакетов сами(редко)
Флаги в новом EAPI могут сами являться зависимостями и соответственно меняться на определённых пакетах самостоятельно.
> Так вот в данном случае удаление emerge @нечто --unmerge не создаст никаких проблем
Это подходит только для варианта - поставил, посмотрел, удалил. Если после "поставил" были поставлено много других пакетов, то см. мой пост выше.
(Кстати для "поставил, посмотрел, удалил" я использую demerge)
> К тому же человек сразу же получает дополнительные плюшки в виде возможности отследить зависимостью от чего встал тот или иной пакет.
qdepends -Q покажет все обратные зависимости пакета
> Не вопрос обновить только "нечто" с его зависимостями не трогая всего остального.
А в чём отличие от emerge -uD package или emerge -u package ?
>При условии использования бинарников не вопрос установить "нечто" одним движением руки после удаления.
Не совсем понял мысль. В чём будет разница с emerge -k package?
Флаги могут измениться после установки/удаления некоторых пакетов сами(редко)
Флаги в новом EAPI могут сами являться зависимостями и соответственно меняться на определённых пакетах самостоятельно.
Угу ВНЕЗАПНО все что угодно может произойти это да. И конец света тоже может быть ВНЕЗАПНО.
А в чём отличие от emerge -uD package или emerge -u package ?
Сравни к примеру emerge -uD @gnome с тем что предлагаешь ты. У меня одной командой emerge -uD @gnome обновится исключительно гном со всеми своими зависимостями и не трогая всего остального @world @system.
Угу ВНЕЗАПНО все что угодно может произойти это да. И конец света тоже может быть ВНЕЗАПНО.
Давай не будем уходить от темы и обсуждать в тематическом разделе конец света. Вероятность пересборки пакета из-за зависимости от юзфлага на пакете не так уж и мала. По моим очень приблизительным подсчётам в портежах примерно 5% пакетов с такими зависимостями.
Кстати вот они, красавцы (приблизительно):
Сравни к примеру emerge -uD @gnome с тем что предлагаешь ты.
В сабже был гимп, а о гноме я ничего не говорил. Сэты и задумывались как замена метапакетам(таким как гном).
У меня одной командой emerge -uD @gnome обновится исключительно гном со всеми своими зависимостями и не трогая всего остального @world @system.
ну emerge -uD gnome сделает тоже самое, при условии что стоят все пакеты которые тянет метапакет gnome-base/gnome.
Различие появляется когда хочется не ставить некоторые пакеты из метапакета gnome (или хочется добавить своё).
В случае Гимпа - всё равно придётся ставить все его зависимости (а ненужные можно отрубить USE-флагами), следовательно заводить сет не имеет смысла.
Кстати, возвращаясь к вопросу ТС: создание сета никак бы не повлияло на ошибку при revdep-rebuild.
По видимому это недоработка в пакете гимпа или какаято ошибка которую совершил сам ТС (ничего конкретного не приходит на ум), либо глюк portage =)
В таком случае уже выше написали про findcruft.
Вероятность пересборки пакета из-за зависимости от юзфлага на пакете не так уж и мала.
Вероятность того что пакет просто удалят/переименуют тоже есть и она не меньше вероятности изменений в USE флагах.
В сабже был гимп, а о гноме я ничего не говорил. Сэты и задумывались как замена метапакетам(таким как гном).
Да и в случае с гимпом в этот сет попадут куча пакетов навроде glib, gtk+, zlib и т.д.
беспочвенны. Поскольку ежели у него к моменту установки the GIMP уже будет stage-3 + xorg + DM/WM то sys-libs/zlib и dev-libs/glib физически не смогут попасть в сет @gimp поскольку они идут еще в stage-3 и их нет необходимости устанавливать при сборке the GIMP на системе в которой они уже и так есть еще со stage-3. А что касается gtk+ так оно либо подтянется зависимостью на этапе установки DM/WM если ставился gnome иначе если ставился KDE и ничему до установки the GIMP не потребовалось gtk+ ну да попадет в этом случае gtk+ в сет @gimp И ЧТО? Таким же образом во втором случае (у человека кеды и gtk+ ничему не була нужна до установки the GIMP) и без сетов при удалении gimp через emerge gimp --unmerge библиотека gtk+ слетит после первого же emerge --depclean.
Вероятность того что пакет просто удалят/переименуют тоже есть и она не меньше вероятности изменений в USE флагах.
Согласен. Но это аргумент не в пользу использования сетов в таких целях, а как раз против.
Поскольку ежели у него к моменту установки the GIMP уже будет stage-3 + xorg + DM/WM то sys-libs/zlib и dev-libs/glib физически не смогут попасть в сет @gimp поскольку они идут еще в stage-3 и их нет необходимости устанавливать при сборке the GIMP на системе в которой они уже и так есть еще со stage-3.
Насчёт zlib и glib я погорячился. С этим я согласен.
иначе если ставился KDE и ничему до установки the GIMP не потребовалось gtk+ ну да попадет в этом случае gtk+ в сет @gimp И ЧТО? Таким же образом во втором случае (у человека кеды и gtk+ ничему не була нужна до установки the GIMP) и без сетов при удалении gimp через emerge gimp --unmerge библиотека gtk+ слетит после первого же emerge --depclean.
Я повторю ещё раз, видимо я выше изложил свою мысль непонятно:
Представим такую ситуацию: у юзера стоит KDE или другая не gtk WM/DE, пакет gtk+ не стоит. Он хочет поставить gimp.
В случае с сетам юзер:
- Составляет сет из зависимостей которые тянет gimp (туда в т.ч. входит gtk+) + сам gimp
- Устанавливает сет @gimp
- Устанавливает любую gtk программу (у которой в зависимостях соответственно gtk+). Пусть это будет например gajim
- Удаляет сет @gimp. Он думает что удалятся только ненужные зависимости, наивный парнишка. С сетом гимпа уходит пакет gtk+
- Плачет над нерабочим gajim`ом и пытается понять в чём проблема.
Если юзер поставил весь гном, то он уже плачет над нерабочим гномом.
В классическом случае:
- Просто делает emerge gimp
- Устанавливает gajim, да хоть весь гном.
- Удаляет gimp обычным способом emerge -C gimp
- Ждёт удобное юзеру кол-во времени (не ограничено)
- Обновляет мир.
- Делает emerge --depclean -a
Причём в списке, который выводит depclean юзеру придётся обратить внимание только на пакеты которые он установил сам, используя --oneshot, а на всякие зависимые библиотеки, которые юзер может и не помнить зачем они нужны в системе, можно и не смотреть.
> emerge @gimp --unmerge
Я думаю, это бред.
Допустим, есть два нужных мне пакета A и B, обоим нужна хитрая либа C. Я ставлю пакет A, делаю сет @A = (A, C). Потом ставлю B (C уже поставлен). Потом удаляю A.
Проще удалять ненужные пакеты из world, а потом делать depclean. Хоть и немного странный алгоритм, но зато работает железобетонно.
У обоих вариантов есть свои плюсы и у обоих вариантов есть свои минусы. Но если portage предоставляет такую возможность то там где это действительно нужно не использовать её глупо! И да случаев поставить на посмотреть бывает тоже немало. А обо всем остальном - голова человеку на то и дана чтобы думать. А в gentoo это проявляется еще сильнее.
Читайте также: