Безопасно ли вручную удалить содержимое / var / cache / apt?

20

На встроенной системе с очень ограниченным дисковым пространством у меня есть папка /var/cache/apt , полная с 700 МБ srcpkgcache.bin.* и несколько больших% файлов co_de%.

Выполнение *.bin не имело заметной разницы.

Безопасно ли вручную удалить эти файлы sudo apt-get clean ?

    
задан ysap 28.11.2012 в 17:11
источник

4 ответа

11

Не совсем. Эти файлы помогают вашей системе определить, что доступно, а что нет. Опорожнение этого каталога приведет к сломанной системе apt-get. Вот несколько советов.

Сначала автоматическая очистка

добавить

DPkg::Post-Invoke { "apt-get clean"; };

до конца /etc/apt/apt.conf . Это заставит процессы apt и dpkg занять больше времени, но сделает так, чтобы ваш каталог кеша всегда был чистым.

Далее, Удалить архивы

Начните с удаления и отключения всех исходных архивов (которые не используются). На встроенной системе вам, скорее всего, не понадобятся. Затем удалите все архивы, которые не используются. Вы можете запустить apt-cache policy , чтобы выяснить, из какого репо будет поступать пакет, если вы не уверены.

Подробнее Удаление архивов

Некоторые PPAs ужасно относятся к тому, что в них огромное количество пакетов, когда вам нужно только 1 или 2. Попробуйте отключить эти PPA и просто установить файлы deb вручную. Вы сохраняете место в тех случаях, но вы потеряете автоматическое обновление. Имейте в виду, что dpkg будет обрабатывать зависимости, поэтому вы все равно можете установить thing-with-tons-of-deps.deb, затем запустите apt-get -f install , чтобы получить зависимости.

Полностью экстремальный ответ 1

Поскольку речь шла о встроенной системе, 90% основных репозиториев не принесет вам никакой пользы. Чтобы передать это, вы можете запустить свой собственный сервер repo-сервера apt-get См. эта ссылка . Это непросто, и это PIA только для одной машины. Но если у вас есть несколько таких машин, это того стоит. (Вы можете использовать сервер repo только подмножество пакетов, которые вы фактически используете. Вам не нужно отражать все это)

Полностью экстремальный ответ 2

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

ответ дан coteyr 28.11.2012 в 17:29
2

Конечно, вы можете удалить pkgcache.bin и srcpkgcache.bin , ничего не происходит. Просто запустите apt-get update , чтобы повторно создать их.

    
ответ дан Tomas M 16.10.2017 в 10:26
1

Сохраняйте pkgcache.bin и srcpkgcache.bin , вы можете безопасно удалить остальные. Не прикасайтесь к каталогам!

    
ответ дан Frantique 28.11.2012 в 17:12
0

Вы можете, конечно, создать для них NFS-ресурс (сетевая файловая система). Оставьте эти файлы на сервере и смонтируйте общий ресурс только в том случае, если вы хотите обновлять / устанавливать пакеты. Во встроенных средах установка обычно будет относительно статической.

sshfs - еще один хороший вариант, гораздо проще настроить (в основном требуется только SSH, который является стандартным), но у него больше накладных расходов (медленнее).     

ответ дан jippie 28.11.2012 в 19:28