Если у вас небольшой жесткий диск и вы используете Arch Linux, может быть хорошей идеей очистить системный кеш pkg.

Очистить кэш пакетов Pacman

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

Пока твердотельные накопители не станут такими дешевыми, как когда-либо, если это время когда-нибудь придет, жесткие диски могут быть одним из трех вариантов: большие и дорогие; маленький и дешевый; или гибрид, где есть часть SSD и часть HDD. Во втором и третьем варианте у нас может быть та же проблема, поскольку жесткий диск, который предлагает больше места для хранения, мы обычно оставляем для данных и мы используем SSD для операционной системы. Именно в этих случаях нам нужно следить за кешем пакетов Arch Linux. И, при необходимости, очистить его.

Очистите кеш пакетов Arch, удалите его или оставьте как есть

Этот кеш сохранит последние три версии каждого пакета в /var/cache/pacman/pkg. Вы должны следить за этим, потому что даже при ограничении трех папка может расти и расти, пока не достигнет или не превысит 10 ГБ хранилища, в зависимости от количества установленного программного обеспечения. И, помните, речь идет о кеше, то есть о том, что есть на всякий случай, но может и не понадобиться.

В Pacman есть возможность удалять старые версии из кеша. судо пакман -Sc удалит только старые версии и он оставит последний установленный нами пакет, то есть пакет того, который мы установили. Хотя это вариант Pacman, говорят, что это не то, что рекомендуется, но аргумент будет заключаться в том, что мы не можем сделать даунгрейд, как предполагалось. В этом случае нам придется зайти в официальные репозитории и выбрать предыдущую версию.

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

Первым делом нужно посмотреть, сколько пакетов мы установили, и посмотреть, что они занимают, в моем случае всего 1981 пакет общим весом 13 ГБ:

sudo ls /var/cache/pacman/pkg/ | wc -l
du -sh /var/cache/pacman/pkg/

Посмотреть количество упаковок и их вес

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

sudo paccache -r

Если вы понимаете, для меня он восстановил немного (1.52 ГБ), и я не беспокоюсь о том, что не смогу вернуться к предыдущей версии, поэтому я использовал судо пакман -Sc:

судо пакман -Sc

С последним из 13 ГБ, которые у меня были в кеше пакетов Arch, Manjaro в моем случае, у меня осталось только 4 ГБ. Он задаст нам два вопроса: в первом он спросит нас, хотим ли мы удалить пакеты, и здесь мы должны сказать «да»; во втором говорит удалить репозитории, а там лучше сказать нет.

ВАЖНО: все, что здесь описано, работает как есть, но не удаляйте папку /pkg, иначе системе некуда будет поместить новые установки. Это "друг сказал мне" много лет назад.

Все еще хотите удалить больше?

Жесткий диск должен быть очень плохим или у вас должно быть много увлечений для более глубокой очистки, но это можно сделать. Команда будет пакет sudo -rk 1где k указывает количество сохраняемых пакетов. Если вы хотите удалить все уже удаленные пакеты, вы можете сделать это с помощью команды пакет sudo -ruk0. Из вышеизложенного следует u указывает на удаленные пакеты.

Если вы хотите удалить весь кеш и оставить его равным 0 ГБ, команда будет судо пакман -Scc, но это я бы порекомендовал только в крайних случаях где у нас больше нет места на жестком диске. Все, что было удалено с помощью представленных здесь команд, не может быть восстановлено..

Автоматизируйте процесс

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

  1. Открываем терминал и пишем:
sudo mkdir /etc/pacman.d/hooks
  1. Теперь мы пишем эту другую команду:
sudo nano /etc/pacman.d/hooks/clean_package_cache.hook
  1. Внутри редактора мы добавляем эти строки:
[Триггер] Операция = Операция обновления = Операция установки = Удалить Тип = Целевой пакет = * [Действие] Описание = Очистка кеша pacman... Когда = PostTransaction Exec = /usr/bin/paccache -r
  1. Мы экономим и экономим. Отныне кеш пакетов будет автоматически очищаться каждый раз, когда Pacman обновляет, устанавливает или удаляет пакеты.

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


Содержание статьи соответствует нашим принципам редакционная этика. Чтобы сообщить об ошибке, нажмите здесь.

Будьте первым, чтобы комментировать

Оставьте свой комментарий

Ваш электронный адрес не будет опубликован.

*

*

  1. Ответственный за данные: AB Internet Networks 2008 SL
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.