Во встроенной системе с очень ограниченным дисковым пространством у меня есть папка, /var/cache/apt
заполненная примерно 700 МБ srcpkgcache.bin.*
и парой больших *.bin
файлов.
Выполнение sudo apt-get clean
не имело видимого различия.
Безопасно ли удалять эти *.bin*
файлы вручную ?
*.bin
файлы в указанной папке совершенно безопасно удалять, если в данный момент не запущен процесс, связанный с apt. Следующееapt-get update
восстановит*.bin
файлы. Этот вопрос решительно не о файлах в/var/cache/apt/archives
, а о файлах/var/cache/apt/*.bin
. Большая разница. Первый может быть очищен путем выдачиapt-get clean
, последний должен быть удален вручную. Очевидно, что те, кто голосовал за закрытие вопроса, не прочитали вопрос должным образом. К сожалению, я не могу голосовать, чтобы вновь открыться после присуждения некоторых из моих представителей в награды.archives
внутри/var/cache/apt/
, этот о*.bin*
файлах.Ответы:
На самом деле, нет. Эти файлы помогают вашей системе определить, что доступно, а что нет. Очистка этого каталога приведет к поломке системы apt-get. Вот пара советов.
Во-первых, авто чистить
добавить
до конца
/etc/apt/apt.conf
. Это сделает процессы apt и dpkg более длительными, но сделает так, чтобы каталог кеша всегда был чистым.Далее удалите архивы
Начните с удаления и отключения всех исходных архивов (которые вы не используете). Во встроенной системе они, скорее всего, вам не нужны. Далее удалите все архивы, которые не используются. Вы можете запустить,
apt-cache policy
чтобы выяснить, из какого репозитория приходит пакет, если вы не уверены.Подробнее Удаление архивов
Некоторые PPA ужасны из-за огромного количества пакетов в них, когда вам нужен только 1 или 2. Попробуйте отключить эти PPA и просто установить файлы deb вручную. В этих случаях вы экономите место, но теряете автоматическое обновление. Имейте в виду, что dpkg будет обрабатывать зависимости, так что вы все равно можете установить вещь-с-тоннами-deps.deb, а затем запустить
apt-get -f install
для получения зависимостей.Полностью экстремальный ответ 1
Поскольку речь шла о встроенной системе, 90% основных репозиториев не принесут вам никакой пользы. Для этого вы можете запустить свой собственный сервер репозитория apt-get. Посмотрите эту ссылку . Это не легко, и это PIA только для одной машины. Но если у вас есть несколько таких машин, это того стоит. (Ваш сервер репо может содержать только подмножество пакетов, которые вы фактически используете. Вам не нужно отражать все это)
Полностью экстремальный ответ 2
Если пространство действительно так велико, вы можете отключить apt все вместе и вернуться к ручной установке через dpkg. Я должен был сделать это на нескольких встроенных системах. Это работает, но это кошмар админа.
источник
*.bin
файлы? Любой запускapt-get update
восстановит эти файлы с нуля (проверено). Например, мой вариант использования заключается в том, что я хочу создать шаблоны контейнеров LXC и хочу сократить архив как можно больше. Я не вижу никакой причины, как это небезопасно. И ваш ответ не указывает на причину, просто утверждает, что это небезопасно. Проверено, что это совершенно безопасно на Ubuntu 14.04.apt-cache clean
в вызов dpkg приведет к более чистому кешу, но пользователь говорит, чтоapt-cache clean
ничего не очистил для них. Также ваш ответ совершенно неправильный, потому что dpkg не использует/var/cache/apt/*
контент для получения информации о статистике пакетов.clean
as * clean, которая очищает локальный репозиторий от полученных файлов пакетов. Он удаляет все, кроме файла блокировки, из / var / cache / apt / archives / и /var/cache/apt/archives/partial/.* Если это опасно, не будет такой функции для очистки.Можно конечно удалить
pkgcache.bin
иsrcpkgcache.bin
ничего не происходит. Просто беги,apt-get update
чтобы воссоздать их.источник
.deb
файлов?Сохраните
pkgcache.bin
иsrcpkgcache.bin
, вы можете безопасно удалить остальные. Не трогайте каталоги!источник
*bin.*
файлы в резервную папку. Однако почему apt-get управляет кешем внутри кеша? Каталог кэша должен быть временным хранилищем по своей природе.Конечно, вы можете создать NFS-ресурс (сетевую файловую систему) для этого. Оставьте эти файлы на сервере и подключайте общий ресурс только тогда, когда вы хотите обновить / установить пакеты. Во встроенных средах установка в любом случае обычно будет относительно статичной.
sshfs - еще один хороший вариант, его гораздо проще настроить (в основном требуется только SSH, который является стандартным), но он требует больше ресурсов (медленнее).
источник