Как удалить пакет в линукс
Перейти к содержимому

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

  • автор:

debian — удалить пакет полностью

Есть debian 10, ищу способ простым путём снести конкретный пакет и вообще ВСЕ директории, конфиги, ресурсы, etc, которые он насоздавал при установке.

apt remove --kill-it-with-the-fire mariadb-client mariadb-server 

и удаляется абсолютно всё, что мускуль насоздавал при установке. —purge и autoremove этого не делают — пакеты ТИПА удалились, но сам сервис продолжает жужжать в памяти, в /etc и /var/lib всё на месте. Если сервис руками перед удалением остановить, то же самое.

Если это вообще не предусмотрено, как выкатить из пакетов всё вышеописанное ещё раз с затиранием существующего? Только из пакетов руками вытаскивать файлы?

yu-boot ★★★★
07.04.22 15:00:06 MSK

пакеты ТИПА удалились, но сам сервис продолжает жужжать

Ты не тот пакет удаляешь.

LamerOk ★★★★★
( 07.04.22 15:01:01 MSK )
Ответ на: комментарий от LamerOk 07.04.22 15:01:01 MSK

Посмотрел, устанавливал я именно mariadb-server и mariadb-client, больше касательно мускуля ничего не ставил. Хочу, чтобы удалив их, система автомагически вернулась к состоянию «до установки мускуля».

yu-boot ★★★★
( 07.04.22 15:03:56 MSK ) автор топика
Ответ на: комментарий от yu-boot 07.04.22 15:03:56 MSK

А удалял ты кого?

сам сервис продолжает жужжать

Мамой клянёшься? Зуб даёшь?

LamerOk ★★★★★
( 07.04.22 15:05:57 MSK )

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

pfg ★★★★★
( 07.04.22 15:06:26 MSK )
Ответ на: комментарий от LamerOk 07.04.22 15:05:57 MSK

- name: "Install MariaDB" become: yes apt: update_cache: yes name: - mariadb-server - mariadb-client state: latest register: mariadb_install 
# apt remove --purge mariadb-client mariadb-server # apt autoremove 

В htop процессы мускуля как висели так и висят. Кстати, со всеми сервисами так. nginx если удалить или asterisk, они тоже не стопятся сами и висят в процессах.

yu-boot ★★★★
( 07.04.22 15:10:03 MSK ) автор топика
Ответ на: комментарий от pfg 07.04.22 15:06:26 MSK

Ну оно же создаёт при установке /var/lib/mysql всякие. Не важно что там потом внутри будет, папку создал — папку эту же снеси рекурсивно. Неужели нет возможности не копаясь вручную в пакете такое сделать?

yu-boot ★★★★
( 07.04.22 15:12:05 MSK ) автор топика
Ответ на: комментарий от yu-boot 07.04.22 15:10:03 MSK

Я не вижу логов апта.

Я не вижу логов апта.
Я не вижу выхлопов ps .

LamerOk ★★★★★
( 07.04.22 15:13:52 MSK )
Ответ на: комментарий от LamerOk 07.04.22 15:13:52 MSK

# apt remove --purge mariadb-client mariadb-server Reading package lists. Done Building dependency tree Reading state information. Done The following packages will be REMOVED: mariadb-client* mariadb-server* 0 upgraded, 0 newly installed, 2 to remove and 0 not upgraded. After this operation, 137 kB disk space will be freed. Do you want to continue? [Y/n] (Reading database . 51177 files and directories currently installed.) Removing mariadb-client (1:10.3.34-0+deb10u1) . Removing mariadb-server (1:10.3.34-0+deb10u1) . # apt autoremove Reading package lists. Done Building dependency tree Reading state information. Done 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 

Папки и процессы после этого были на месте, прежде чем писать вытер /var/lib/mysql сотоварищи и выключил mysqld руками.

yu-boot ★★★★
( 07.04.22 15:17:56 MSK ) автор топика

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

Elyas ★★★★★
( 07.04.22 15:23:43 MSK )
Ответ на: комментарий от yu-boot 07.04.22 15:17:56 MSK

After this operation, 137 kB disk space will be freed.

Как думаешь, ты реально удалил клиент и сервер?

Это метапакеты. autoremove —purge не срабатывает, вероятно, потому, что ты (либо что-то, что ты использовал) вручную установил то, что тянут эти пакеты по зависимостям (т.е., какой-нибудь mariadb-server-100500).

YAR ★★★★★
( 07.04.22 15:24:49 MSK )
Последнее исправление: YAR 07.04.22 15:26:39 MSK (всего исправлений: 2)

Ответ на: комментарий от YAR 07.04.22 15:24:49 MSK

вероятно, потому, что ты (либо что-то, что ты использовал) вручную установил то, что тянет эти пакеты по зависимостям

Кстати да, есть в демьянае такая фича. С одной стороны удобно, а с другой вот это всё

utanho ★★★★★
( 07.04.22 15:29:37 MSK )
Ответ на: комментарий от yu-boot 07.04.22 15:17:56 MSK

mariadb-server — пакет-пустышка, зависит от mariadb-server-10.3. Тот, в свою очередь, мог быть установлен вручную либо его держит какой-то пакет как зависимость.

undef ★★
( 07.04.22 15:30:35 MSK )
Последнее исправление: undef 07.04.22 15:31:16 MSK (всего исправлений: 1)

Ответ на: комментарий от utanho 07.04.22 15:29:37 MSK

А с другой — тоже удобно.

Если не понятно, чё реально стоит, а что удаляется — пользуйтесь aptitude .

LamerOk ★★★★★
( 07.04.22 15:30:47 MSK )
Ответ на: комментарий от undef 07.04.22 15:30:35 MSK

Можно почистить все удаленные без purge

apt-get purge $(dpkg -l | grep '^rc' | awk '') 

Kolins ★★★
( 07.04.22 15:35:50 MSK )
Ответ на: комментарий от Kolins 07.04.22 15:35:50 MSK

Это про другое. А у ТСа пакет вообще не удаляется, т.к. либо промаркирован, либо является зависимостью еще для чего-то.

undef ★★
( 07.04.22 15:42:53 MSK )
Ответ на: комментарий от LamerOk 07.04.22 15:30:47 MSK

Я пошел другим путём. Сначала базовая система из бутстрапа, потом прописываю в апт.конф не ставить рекомендованные и прочую шелуху.

Потом в синаптике формирую список «установлены вручную».

Получается некий аналог world из генты.

Система не засирается и всё красиво. Но кое-что надо ставить руками. Поэтому нужно понимать, что и как

utanho ★★★★★
( 07.04.22 15:43:27 MSK )
Ответ на: комментарий от undef 07.04.22 15:42:53 MSK

Ну тогда проще в aptitude посмотреть на что ругается при удалении

Kolins ★★★
( 07.04.22 15:43:28 MSK )
Ответ на: комментарий от utanho 07.04.22 15:43:27 MSK

Норкоман? Это наглядная визуализация, кто от кого зависит, и чё в итоге будет после изменений.

LamerOk ★★★★★
( 07.04.22 15:53:46 MSK )
Ответ на: комментарий от utanho 07.04.22 15:43:27 MSK

Открой для себя debfoster .

LamerOk ★★★★★
( 07.04.22 15:54:21 MSK )
Ответ на: комментарий от LamerOk 07.04.22 15:54:21 MSK

О, никак не мог вспомнить название (а искать было лень).

И deborphan еще.

YAR ★★★★★
( 07.04.22 16:52:24 MSK )
Ответ на: комментарий от LamerOk 07.04.22 15:54:21 MSK

Любите советовать мягкое в разговоре про зеленое? Предлагаете сначала засрать систему, а потом героически вычищать эти авгиевы конюшни?

Спасибо, кушайте сами.

utanho ★★★★★
( 07.04.22 16:54:25 MSK )
Ответ на: комментарий от utanho 07.04.22 16:54:25 MSK

мягкое в разговоре про зеленое?

Ты не только норкоман, но ещё и идиот. debfoster — это искаробочное решение того, что рукоблудствуешь руками в синаптике.

LamerOk ★★★★★
( 07.04.22 17:04:27 MSK )
Ответ на: комментарий от LamerOk 07.04.22 17:04:27 MSK

Ты не только норкоман, но ещё и идиот

Чем слабее аргументация, тем сильнее бесит оппонент. Ну и само собой самое важное в споре — кидаться какашками. Так принято у приматов.

А теперь попробуйте описать последовательность действий при применении debfoster.

utanho ★★★★★
( 07.04.22 17:51:41 MSK )

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

kirill_rrr ★★★★★
( 07.04.22 20:55:58 MSK )
Ответ на: комментарий от yu-boot 07.04.22 15:12:05 MSK

А при установке ли? Было бы при установке — удалило бы.

З.Ы. Кажется я немного не в теме. Ставишь ты mariadb, а запускается у тебя mysql. Это же вроде разные штуки.

kirill_rrr ★★★★★
( 07.04.22 21:12:23 MSK )
Ответ на: комментарий от kirill_rrr 07.04.22 21:12:23 MSK

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

Да, не в теме. В современных пакетах mariadb только юнит mariadb.service называется (ранее был mysqld.service), а бинари и пути совместимы с «классическим» mysql (/var/lib/mysql, бинари mysql, mysqldump и прочие mysql* и каталог с конфигами /etc/mysql/). И это хорошо.

Dimez ★★★★★
( 08.04.22 12:41:08 MSK )

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

slowpony ★★★★
( 08.04.22 12:49:36 MSK )
Ответ на: комментарий от yu-boot 07.04.22 15:10:03 MSK

apt remove –purge mariadb-client mariadb-server

Как тебе уже было выше сказано — ты удаляешь метапакеты, а надо apt purge mariadb-server* mariadb-client* mariadb-common mysql-common . В пакетную обработку ansible’ом не знаю как поставить, т.к. при удалении спрашивается «удалить ли /var/lib/mysql». Видимо, просто потом запустить команду rm -rf /var/lib/mysql

apt autoremove —purge

Dimez ★★★★★
( 08.04.22 12:58:43 MSK )
Последнее исправление: Dimez 08.04.22 12:59:16 MSK (всего исправлений: 1)

все линуксы это помойки. простите, slackware.

в самом безобидном варианте демон будет использовать /var/run и /var/lock, а далее /var/db и другие директории для хранения своего мусора.

если у вас случился приступ перфекционизма и вы хотите контролировать каждый файл в системе, то переходите на live-системы. вы будете знать, что вы можете творить любую дичь, а потом просто перезагрузиться и вернуть систему в исходное состояние. это просто.

если вы ищите sysadmin-friendly дистрибутив, чтобы иметь полный контроль над происходящем в системе, ставьте CRUX.

и наконец третий вариант, переходите на виртуалки. держите хост систему в чистоте, проще говоря, ставите чистую систему + qemu. всё. все сервисы разворачиваете в виртуалках. легко делать бэкап, легко откатить назад.

Spoofing ★★★★★
( 08.04.22 15:35:16 MSK )
Последнее исправление: Spoofing 08.04.22 15:35:41 MSK (всего исправлений: 1)

Bootmen ☆☆☆
( 08.04.22 16:11:20 MSK )
Ответ на: комментарий от Spoofing 08.04.22 15:35:16 MSK

третий вариант напоминает моднявый, в современной среде обывателей, вариант использования TOR в качестве proxy-доступов в обход ограничений.
и плач потом «почему TOR так медленно работает»

для того чтобы иметь полный контроль над происходящим, в этом происходящем надо разбираться и понимать что к чему и почему.
любые программные системы, применяемые без понимания сути работы онной системы, приводят к естественным недопониманиям работы онной системы и последующим косякам.
удаления пакета веб-сервера не должно приводит к удалению /var/www — «это другое !!»

pfg ★★★★★
( 08.04.22 22:33:59 MSK )
Последнее исправление: pfg 08.04.22 22:35:46 MSK (всего исправлений: 1)

Я дико извиняюсь, почему в треде никто не упомянул про apt autoremove? Если установленные вопрошающим пакеты — это заглушки, и они зависимостями тянут реальные, то не решит ли autoremove проблему?

apt purge apt autoremove 

paddlewan
( 08.04.22 22:49:53 MSK )
Последнее исправление: paddlewan 08.04.22 22:51:10 MSK (всего исправлений: 2)

Ответ на: комментарий от Elyas 07.04.22 15:23:43 MSK

LongLiveUbuntu ★★★★★
( 09.04.22 07:51:42 MSK )
Ответ на: комментарий от utanho 07.04.22 17:51:41 MSK

А теперь попробуйте описать последовательность действий при применении debfoster.

root@host1 ~ # debfoster . Keep xfsprogs? [Ynpsiuqx?], [H]elp: Y Keep acl? [Ynpsiuqx?], [H]elp: Y Keep acpid? [Ynpsiuqx?], [H]elp: Y Keep amd64-microcode? [Ynpsiuqx?], [H]elp: Y Keep ethtool? [Ynpsiuqx?], [H]elp: Y Keep firmware-bnx2x? [Ynpsiuqx?], [H]elp: Y Keep grub-efi-amd64? [Ynpsiuqx?], [H]elp: Y Keep grub-pc-bin? [Ynpsiuqx?], [H]elp: Y Keep mdadm? [Ynpsiuqx?], [H]elp: Y Keep sudo? [Ynpsiuqx?], [H]elp: Y . root@host1 ~ # cp /var/lib/debfoster/keepers . 
root@host2 ~ # debfoster `cat keepers` 

LamerOk ★★★★★
( 11.04.22 19:23:25 MSK )
Ответ на: комментарий от LamerOk 11.04.22 19:23:25 MSK

Что собсно и требовалось доказать. Ваш вариант предполагает установку системы с кучей мусора и героическую боротьбу с ним.

Мой вариант предусматривает установку системы без мусора изначально.

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

utanho ★★★★★
( 11.04.22 19:27:03 MSK )
Последнее исправление: utanho 11.04.22 19:28:51 MSK (всего исправлений: 1)

Ответ на: комментарий от utanho 11.04.22 19:27:03 MSK

Напомни, я тебе уже говорил, что ты идиот, или ещё нет?

Ваш вариант предполагает установку системы с кучей мусора

И что именно является «кучей мусора» в netinstall ? И да, дебьян по дефолту ставит всевозможные reportbug , которые таки надо^W можно в любом случае удалять. Это неизбежный шаг при любой установке.

Как удалить пакет в 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).

Форум русскоязычного сообщества Ubuntu

Страница сгенерирована за 0.133 секунд. Запросов: 25.

  • Сайт
  • Об Ubuntu
  • Скачать Ubuntu
  • Семейство Ubuntu
  • Новости
  • Форум
  • Помощь
  • Правила
  • Документация
  • Пользовательская документация
  • Официальная документация
  • Семейство Ubuntu
  • Материалы для загрузки
  • Совместимость с оборудованием
  • RSS лента
  • Сообщество
  • Наши проекты
  • Местные сообщества
  • Перевод Ubuntu
  • Тестирование
  • RSS лента

© 2012 Ubuntu-ru — Русскоязычное сообщество Ubuntu Linux.
© 2012 Canonical Ltd. Ubuntu и Canonical являются зарегистрированными торговыми знаками Canonical Ltd.

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

Как уже отмечалось, весь Linux состоит из пакетов. В RedHat работу с пакетами выполняет программа rpm (RedHat Package Manager), а сами файлы, содержащие пакеты, имеют расширение .rpm . Кроме RedHat существует еще несколько дистрибутивов Linux, использующих rpm ; самые известные — Caldera, SuSE и KSI. Их так и называют — rpm-системы.

Сразу после установки системы зачастую возникает необходимость доставить некоторые пакеты, забытые при инсталляции, или убрать лишние.

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

Некоторые расширения .rpm-файлов

РасширениеНазначение
.i386.rpm Пакет для Linux/Intel
.src.rpm Исходный код пакета (никогда не устанавливайте .src.rpm — потом не удалите!)
.alpha.rpm Пакет для Linux/Alpha
.sparc.rpm Пакет для Linux/Sparc (Sun)
.ppc.rpm Пакет для Linux/PowerPC
.noarch.rpmПакет для всех архитектур (обычно содержит данные — файлы конфигурации, шрифты и т.д.)

Кроме того, само имя пакета состоит из собственно названия и версии. Например, lynx-2.8.2-3.i386.rpm — программа lynx , версия 2.8.2, build 3. К сожалению, формальных правил, позволяющих понять, где кончается имя и начинается версия, нет.

Файлы пакетов обычно расположены в одном из трех мест — в дистрибутиве, в разделе дополнений (updates) или в резделе «пожертвований» (contrib). В ИЯФ для RedHat 5.2/Intel это соответственно

Пакеты с исходными кодами всегда лежат в директориях SRPMS/ , и содержат исходный код для всех архитектур.

Использование rpm

Хотя rpm выполняет все функции работы с пакетами (включая создание .i386.rpm из .src.rpm), сейчас рассмотрим лишь основные действия.

Установка. Для установки пакета используется команда rpm -i (Install), которой указывается полное имя файла, содержащего пакет. Пример:

Если пакет уже установлен, rpm откажется его устанавливать. Если же это новая версия (т.е. делается не установка, а обновление), то надо воспользоваться командой rpm -U (Upgrade); фирма RedHat рекомендует «для красоты» использовать форму rpm -Uvh — при этом «прогресс» в установке показывается индикатором из символов » # «. Пример:

bobby:~# rpm -Uvh wu-ftpd-2.4.2b18-2.1.i386.rpm wu-ftpd ################################################## bobby:~# _

Если требуется установить несколько пакетов, то можно указать их все в одной команде (через пробелы). Иногда это нужно — например, при обновлении программы, состоящей из нескольких пакетов (например, Netscape), чтобы rpm не выдавал ошибок из-за зависимостей пакетов.

Удаление. Для удаления установленного пакета используется команда rpm -e (Erase). Ей указывается имя пакета (можно без версии), и без суффикса «.i386.rpm» . Пример:

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

Информация. Чтобы узнать, установлен ли некий пакет, служит команда rpm -q (Query). Ей также указывается имя пакета, а она выдает его полное имя, если он установлен. Примеры:

bobby:~# rpm -q lynx lynx-2.8.1-5 bobby:~# rpm -q seyon package seyon is not installed bobby:~# _

Маленькие и заглавные буквы в именах пакетов различаются. Поскольку часто не помнишь точное имя пакета (и уж тем более, какие буквы там на каком регистре), можно воспользоваться командой rpm -qa (Query All packages — показать все пакеты) в сочетании с командой grep :

bobby:~# rpm -qa | grep -i after AfterStep-1.5-0.7 AfterStep-APPS-1.5-0.3 bobby:~# _

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *