Я могу безопасно удалить/var/cache?

Я буду брать на себя смелость добавления одного различия:

tmux является ncurses, базирующимся, в то время как экран не тянет дополнительные элементы. Если кто-то будет использовать эмулятор терминала, который поддерживает прокрутку, то он получит прокрутку с экраном, но не с tmux (по крайней мере, в конфигурации по умолчанию). То же самое относится к поиску и подобным функциям.

84
23.10.2011, 22:34
6 ответов

Нет.

Для одного я верю этому /var/cache/bind/ каталог по умолчанию, где bind9 ожидает, что его зональные файлы будут сохранены (по крайней мере, на Debian; я не знаю бесцеремонно, если другие дистрибутивы следуют примеру),

Для другого, согласно этой документации, pacman (диспетчер пакетов, используемый Arch Linux), хранит его кэш пакета под /var/cache/pacman/pkg/ и это, скорее всего, ожидает только, что себя изменит содержание.

Я рекомендую, чтобы Вы прочитали документацию более тесно и решили, является ли это хорошим временем для очистки кэша пакета.

30
27.01.2020, 19:30
  • 1
    Да, не удаляйте/var/cache/apt/archives dir, но можно удалить файлы:/var/cache/apt/pkgcache.bin и/var/cache/apt/srcpkgcache.bin, но они будут воссозданы "Кв. - получают обновление". –  diyism 24.06.2013, 15:03
  • 2
    На Debian, /var/cache/bind содержит зональные файлы, переданные от других серверов имен — это не должно содержать основные зоны. Debian следует за FHS, и FHS требует этого файлы под /var/cache будьте удаляемыми. Конечно, вопрос о Arch, и дальнейший не должен удалять файлы без первого, по крайней мере, выяснение, каковы они. –  derobert 13.11.2013, 00:32
  • 3
    , Это похоже на высказывание, что Вы не должны удалять файлы во временном каталоге в окнах, не зная, каковы они. Если папка предназначается для временных файлов, и Ваша программа помещает невременные данные там, то это - огромная проблема для Вашей программы, не для/var/cache –  Tor Valamo 18.02.2015, 03:27

Из http://www.lindevdoc.org/wiki//var/cache

Извините за (очень) последний ответ, но я полагаю, что важно включать этот бит для дальнейшего использования.

Выделенный бит, который действительно отвечает на этот вопрос.

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

Любое приложение может создать файл или каталог здесь. Предполагается, что файлы, хранившие здесь, не очень важны, таким образом, система может удалить содержание/var/cache или периодически, или когда его содержание становится слишком большим.

Любое приложение должно принять во внимание, что файл, хранивший здесь, может исчезнуть любое время и быть готов повторно вычислить свое содержание (со штрафом некоторого времени).

Таким образом да, можно удалить эти файлы, не ожидая, что что-либо плохо произойдет.

83
27.01.2020, 19:30

Можно сделать это определение сами с помощью lsof.

Выполненный lsof -Pn +D /var/cache/ | awk '{print $1}' | sort | uniq видеть, какое программное обеспечение в настоящее время имеет любые открытые файлы в том каталоге. Если что-нибудь выглядит умеренно важным (или Вы не знаете то, что это), затем не удаляют его.

Кроме того, Вы не должны просто сдувать каталоги без резервных копий так или иначе; это даже относится /tmp. Если файл будет использоваться в настоящее время, то Ваше удаление не зарегистрируется, пока обработчик не закрывается (Вы будете видеть, в который входят файловая система). Больше удаление может вызвать другие программы, которые в настоящее время работают (см. lsof команда выше) отказать, если ожидаемый файл это, там отсутствует.

В основном только удалите файлы, которые Вы знаете, безопасны удалить и в настоящее время не используются другим под управлением программным обеспечением.

1
27.01.2020, 19:30

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

Из вики Arch Linux :

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

pacman -Sc

Однако , если пространство для хранения не является безнадежной проблемой, чтобы спасти головную боль позже, из-за будущей несовместимости; следует использовать один из этих других инструментов: paccache , pkgcacheclean или pacleaner .


Для другой системы:

На основе Redhat (Fedora, CentOS, SL, ...)

yum clean all
# or
dnf clean all

На основе Debian (Ubuntu, ...)

apt-get autoclean

На основе SUSE

zypper clean
14
27.01.2020, 19:30

Этот пост был интересен тем, что я хотел удалить его из / var / cache в Ubuntu 15.10 для улучшения дискового пространства, вот что я нашел:

/ var / cache / apt файлы кеша удаляются после запуска sudo apt-get clean, однако структура каталогов остается, что не проблема, если вы ищете улучшения дискового пространства; 'apt-get clean' следует запускать в последнюю очередь, если вы хотите улучшить дисковое пространство с помощью apt-get [auto] remove / [auto] clean и т. Д.

Что касается всего остального в каталоге, я не мог Я больше не согласен с «Тор Валамо» и его объяснением.Это кеш, система и приложения, использующие кеш, должны иметь возможность регенерировать все, что они там создали. У вас просто незначительные накладные расходы на производительность, так как кеш регенерируется из приложения в приложение

. Говоря, что каждая система может не соответствовать этому принципу, проведите некоторое тестирование, попробуйте переместить все в каталоге кеша в новое место и проверьте, и все ваши приложения работают до окончательного удаления кеша.

9
27.01.2020, 19:30

Насколько я понял, удаление/var/cache(не в середине, например. команда apt install )влияет только на следующее:/var/cache/manне воссоздается (и без cacheпапка mandbручной запуск также не воссоздавал ее ), и в результате apropos/ man -k-, то есть перестает работать поиск man-страниц.

TL;DR
Я попытался удалить все /var(, переименовав его, /var_onв приведенном ниже примере ). Вот что я пока нашел :Мне нужны были следующие папки, присутствующие при загрузке в /varи следующие только для того, чтобы система работала как раньше:

ln -s /var_on/lib /var/lib
ln -s /var_on/spool/cron /var/spool/cron
ln -s /var_on/cache/man /var/cache/man
ln -s /run/lock /var/lock
ln -s /run /var/run

Пожалуйста, прокомментируйте, нужно ли что-то еще и почему.

0
04.11.2021, 09:54

Теги

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