Как удалить старые пакеты, установленные pacman в Дуге Linux?

У меня есть следующая установка, работающая здесь над Archlinux 64 бита:

в моем .xinitrc Я выполняюсь xbindkeys как первая команда (нет &). Выполнение ps -aux |grep xbindkeys также возвращает процесс соответствия. Используя xbindkeys --show возвратит установленную xbindkeys конфигурацию, если там будет неудивительно, что она не будет работать. При выполнении xbindkeys не запустит процесс, Вы могли бы хотеть проверить который код выхода выполнение xbindkeys имеет. Поэтому выполненный strace xbindkeys, и последняя строка должна распечатать что-то как +++ exited with 0 +++. Если это не имеет место существует проблема с Вашим xbindkeys. Для более ссылочного на xbindkeys проверьте дугу Linux Wiki

53
16.09.2019, 22:20
3 ответа

Нет, pacman не удаляет старые пакеты из кэша (/var/cache/pacman/pkg), так что со временем он может заполняться.

Для очистки кэша можно использовать два подхода: подход грубой силы с помощью pacman -Sc:

-c, --clean
. Удалите пакеты, которые больше не устанавливаются, из кэша, а также неиспользуемые в настоящее время базы синхронизации, чтобы освободить место на диске. Когда pacman загружает пакеты, он сохраняет их в каталоге кэша. Кроме того, базы данных сохраняются для каждой синхронизируемой БД, которую вы загружаются и не удаляются, даже если они удалены из конфигурационного файла pacman.conf(5). Использовать один - чистый переключатель чтобы удалить только те пакеты, которые больше не установлены; используйте два для удаления всех файлов из кэша. В обоих случаях у вас будет вариант "да" или "нет" для удаления пакетов и/или неиспользованных загруженных баз данных.

Или, для более нюансированного подхода, вы можете использовать одну из утилит, которая поставляется с pacman-contrib, paccache:

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

paccachepaccache удалит все, кроме трех последних версий установленного пакета, но вы можете изменить этот номер с помощью переключателя -k, --keep. Также имеется переключатель -d, --dryrun для предварительного просмотра изменений. Смотрите paccache --help для всех переключателей.

В пакете pacman-pacman-prib есть несколько утилит для помощи в управлении пакетами, стоит посмотреть их все и получить представление о том, как они работают и могут сделать запуск Arch намного проще. Полный список можно посмотреть с:

pacman -Ql pacman-contrib | awk -F"[/ ]" '/\/usr\/bin/ {print $NF}'
63
27.01.2020, 19:33

pacman -Scc делает то, что вы просите, но это не рекомендуется. Из Wiki

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

В стороне, когда я удаляю пакеты, я предпочитаю использовать pacman -Rnsc, так как он также удаляет зависимости от пакетов, а также пакеты, которые зависят от этого. Как всегда, внимательно прочитайте, какие пакеты удаляются, так как вы очень легко можете оставить нашу систему в непригодном для использования состоянии.

.
7
27.01.2020, 19:33

Кэш вашего пакета находится в /var/cache/pacman/pkg/.

ПРИМЕЧАНИЕ: пакеты pacman были обновлены в 2018 году и дополнительно требуют установки pacman-prorib для использования таких скриптов/инструментов, как paccache, описанных ниже.

Do:

paccache -d

To do a -dryrun and see what a run of that utility might remove when you next do:

paccache -r

To remove cached packages. 17gbs действительно звучит круто. Убедитесь, что у вас нет каких-нибудь исполняемых логов. Do:

du -h /var/log

Или даже:

du -h /var

Для более общего представления о том, что происходит.

13
27.01.2020, 19:33

Теги

Похожие вопросы