yum + как удалить неиспользуемый rpm / patch на linux redhat

Я использую yum для установки обновления исправления на моей машине RedHat Linux,

Можно ли использовать yum по-разному, чтобы удалить неиспользуемые rpms / patches?

Моя цель – удалить ненужные rpm / patches, чтобы освободить место в моем разделе

пример

Я нашел следующую команду для удаления старого ядра rpm

(package-cleanup) from - yum install yum-utils package-cleanup --oldkernels --count=1 

4 Solutions collect form web for “yum + как удалить неиспользуемый rpm / patch на linux redhat”

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

Вы можете использовать различные параметры yum clean , чтобы yum clean некоторые собственные файлы кэша yum .

Например, yum clean packages удалит кэшированные пакеты, которые были загружены, некоторые из других вариантов могут быть полезными, но часто yum просто перестраивает данные при следующем выполнении.

man yum предоставит вам информацию о других чистых опциях.

Я бы предложил два подхода, чтобы определить, какие пакеты можно удалить:

  • выполните минимальную установку с выпуском RedHat (кстати, вы не упомянули) и добавьте только пакеты сверху, которые обязательно необходимы для того, что предполагается этой машине.
    Затем получите список всех пакетов по имени (так что вы можете легко сравнить с пакетами со слегка более новыми / более старыми версиями) через rpm -qa --qf="%{N} \n" | sort > minimal_install rpm -qa --qf="%{N} \n" | sort > minimal_install Затем создайте резервную копию своего компьютера, которую вы хотите «очистить», и удалите все пакеты, которые не находятся в списке minimal_install после тщательного анализа.

  • сортируйте свои пакеты по размеру и попытайтесь удалить некоторые из пакетов в верхней части списка, чтобы получить максимальную экономию дискового пространства с наименьшими пакетами. Получите список, например, rpm -qa --qf '%{size} \t%{name}\n' | sort -n > packages_sorted_by_size rpm -qa --qf '%{size} \t%{name}\n' | sort -n > packages_sorted_by_size

  • на самом деле проверить, что используется на большинстве дисковых пространств, можно легко проверить, например, du -mx /|sort -rn|head -35 и если / usr не во всех верхних строках списка, тогда пакеты rpm не должны быть ваш приоритет для очистки.

Выполнение операции «yum update» будет обновлять любые пакеты, находящиеся в системе.

В частности, это означает: Загрузка новой версии Проверка загрузки новой версии. Установка / обновление новой версии Проверка установки новой версии

Старый пакет не установлен больше, просто новый. В зависимости от того, какие расширения у вас есть, у вас, скорее всего, будет только файл rpm на диске, а «yum clean all» удалит их вместе с метаданными репозитория, которые будут восстановлены при следующей операции yum.

Кроме того, если вас интересует только обновление firefox (например), вы можете выпустить команду «yum update firefox», которая будет ограничивать обновления firefox и любые зависимости, необходимые для установки нового обновления в firefox.

Что касается вышеупомянутого инкрементного обновления, то это drpms (дельта-пакеты), и именно так: изменение содержимого пакета из установленной вами версии и обновление должно быть включено в RHEL7 / Fedora для любого репозитория, который их предлагает. RHEL6 нуждается в плагине yum «presto», который будет установлен, чтобы воспользоваться им, снова с любыми репозициями, которые его поддерживают.

Пакеты RPM не содержат инкрементных обновлений (в отличие от, например, Solaris). Таким образом, каждый пакет содержит все необходимое для обновления и чистой установки.

Когда вы звоните

 yum install firefox 

И firefox уже установлен, тогда yum должен отказаться, даже если есть более новая версия. Вы должны позвонить:

 yum upgrade firefox 

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

Хотя вы можете позвонить:

 yum install http://foo.bar/firefox-40-1.rpm 

и если он является более новым, а затем установленным пакетом, тогда yum автоматически преобразует его в команду yum upgrade .

И есть еще одно исключение – ядро.

 yum install kernel 

установит новое ядро ​​(если доступно), но не удалит старый (так что вы можете загрузиться до старого, если новый не работает). На самом деле это относится и к нескольким другим пакетам. Я приведу цитату из man страницы yum.conf :

installonlypkgs Список пакетов, которые должны устанавливаться, никогда не обновляться. Ядра, в частности, попадают в эту категорию. По умолчанию используется ядро, kernel-bigmem, kernel-enterprise, kernel-smp, kernel-modules, kernel-debug, kernel-unsupported, kernel-source, kernel-devel, kernel-PAE, kernel-PAE-debug.

Обратите внимание, что поскольку они предоставляют, а не только имена пакетов, kernel-devel будет также применяться к kernel-debug-devel и т. Д.

installonly_limit Количество пакетов, перечисленных в installonlypkgs для установки одновременно. Установка в 0 отключает эту функцию. Значение по умолчанию – «3». Обратите внимание, что эта функция использовалась в плагине «installonlyn», где эта опция была изменена с помощью tokeep. Обратите внимание, что начиная с версии 3.2.2 yum теперь будет выглядеть в yumdb для атрибута installonly на установленных пакетах. Если этот атрибут «сохранить», они никогда не будут удалены.

Таким образом, вы можете одновременно установить до 3 пакетов ядра. Но не 4, поскольку yum начнет их автоматически удалять. Как вы заявили, вы можете удалить старые ядра с помощью package-cleanup --oldkernels если вы действительно этого хотите.

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

Вы можете проверить его, выполнив:

 rpm -q kernel 

который, скорее всего, перечислит 3 пакета. В то время как

 rpm -q httpd 

Должен перечислять только один пакет. А также

 rpm -q glibc 

скорее всего, перечислит 2 пакета на 64-битной машине – один x86_64 и другой i686 если у вас есть пакеты, требующие multilib (например, wine ).

  • Установка нескольких пакетов с помощью одной команды yum
  • CentOS - Yum - Несколько URL-адресов
  • Можно ли установить все доступные пакеты TexLive в Fedora?
  • CentOS: установить пакеты, перечисленные в текстовом файле?
  • Как заставить rpm и yum терпеть неудачу, если отсутствует подпись GPG или в противном случае не может быть проверена?
  • Какие проблемы следует ожидать при добавлении репозитория CentOS yum в RHEL?
  • Yum fail: Требует установленные пакеты
  • Есть ли хранилища для Fedora 3?
  • «Не удалось разрешить хост» при установке / обновлении пакетов yum
  • Как установить Chromium на F17?
  • Почему у Linux так много проблем с зависимостями при установке программного обеспечения, в то время как Windows не только немногие, как VC ++?
  • Linux и Unix - лучшая ОС в мире.