- Можно ли безопасно удалить / var / cache?
- Можно ли удалить папку
- Как освободить память Linux
- Как освободить кэш память в Linux
- Виды кэша в Linux
- Нужно ли очищать кэш вообще?
- Автоматическая очистка кэша
- Настройка размера кэша памяти
- Как очистить память подкачки
- Как освободить память занимаемую процессами
- Выводы
Можно ли безопасно удалить / var / cache?
Я исчерпал дисковое пространство и отметил, что у меня большой /var/cache каталог. Могу ли я безопасно удалить это? (используя Arch Linux, BTW).
Нет .
Во-первых, я считаю, что /var/cache/bind/ это каталог по умолчанию, в котором bind9 ожидает сохранения файлов своих зон (по крайней мере, в Debian; я не знаю, если другие дистрибутивы следуют этому примеру)
Для другой, в соответствии с этой документацией , pacman (менеджер пакетов, используемый Arch linux) хранит свой кеш пакетов, /var/cache/pacman/pkg/ и он, скорее всего, не ожидает ничего, кроме самого себя, для изменения содержимого.
Я рекомендую вам внимательно прочитать документацию и решить, подходит ли это время для очистки кэша пакетов.
Извините за (очень) поздний ответ, но я считаю, что важно включить этот бит для дальнейшего использования.
Выделил бит, который отвечает на этот вопрос.
Каталог / var / cache содержит кэшированные файлы, то есть файлы, которые были сгенерированы и могут быть сгенерированы заново в любое время, но их стоит хранить, чтобы сэкономить время их повторного вычисления.
Любое приложение может создать файл или каталог здесь. Предполагается, что файлы, хранящиеся здесь, не являются критическими, поэтому система может удалять содержимое / var / cache либо периодически, либо когда его содержимое становится слишком большим.
Любое приложение должно учитывать, что файл, хранящийся здесь, может исчезнуть в любое время, и быть готовым пересчитать его содержимое (с некоторым временным штрафом).
Так что да, вы можете удалить эти файлы, не ожидая ничего плохого.
Как уже говорили другие , /var/cache/ может использоваться любым приложением для хранения информации, чтобы сэкономить на времени поиска. Однако, по моему опыту, большая часть занимаемого там места занимает менеджер пакетов системы.
pacman сохраняет свои загруженные пакеты /var/cache/pacman/pkg/ и не удаляет старые или неустановленные версии автоматически, поэтому необходимо периодически намеренно очищать эту папку, чтобы предотвратить ее бесконечный рост.
Однако , если место для хранения не является отчаянной проблемой, чтобы сохранить головную боль позже, из-за будущей несовместимости; один из этих инструментов следует использовать: paccache , pkgcacheclean или pacleaner .
Для другой системы:
На основе Redhat (Fedora, CentOS, SL, . )
На основе Debian (Ubuntu, . )
Основанный на SUSE
Этот пост показался мне интересным тем, что я искал удаление из / var / cache в Ubuntu 15.10 для улучшения дискового пространства, вот что я нашел:
/ var / cache / apt файлы кеша удаляются после запуска ‘sudo apt-get clean’, однако структура каталогов остается, что не проблема, если вы ищете улучшения дискового пространства; ‘apt-get clean’ должен запускаться последним, если вы хотите улучшить дисковое пространство с помощью apt-get [auto] remove / [auto] clean и т. д.
Что касается всего остального в каталоге, я не мог согласиться с «Tor Valamo» и его объяснением. Это кеш, система и приложения, которые используют кеш, должны иметь возможность восстанавливать все, что они там создали. У вас просто незначительные потери производительности, так как кэш восстанавливается из приложения в приложение
Говоря, что каждая система может не соответствовать этому принципу, проведите некоторое тестирование, попробуйте переместить все в вашем каталоге кеша в новое место и проверьте, что ваша система и все ваши приложения работают перед окончательным удалением кеша.
Вы можете сделать это определение самостоятельно, используя lsof .
Запустите, lsof -Pn +D /var/cache/ | awk ‘
Кроме того, в любом случае вы не должны просто выбрасывать каталоги без резервных копий; это даже относится к /tmp . Если файл используется в настоящее время, ваше удаление не будет зарегистрировано до тех пор, пока обработчик не будет закрыт (вы увидите, что он исчез в файловой системе). Более того, удаление может привести lsof к аварийному завершению работы других программ (см. Приведенную выше команду), если ожидаемый файл отсутствует.
По сути, удаляйте только те файлы, которые, как вы знаете , безопасны для удаления и в настоящее время не используются другими работающими программами.
Источник
Можно ли удалить папку
Когда я использую анализатор использования диска и сканирую свою домашнюю папку, .cache папка в моем домашнем каталоге всегда обнаруживается с приличным количеством вещей в нем.
Было бы хорошо для меня, чтобы удалить содержимое этой папки или это повредит что-то?
Чтобы ответить на вопрос, ИМО вы можете удалить все .cache без долгосрочных негативных последствий.
Если ваш .cache размер становится большим, может быть лучше посмотреть содержимое и определить, какое приложение делает его большим, и перенастроить плохо работающее приложение (а не просто удалять, .cache когда оно становится слишком большим).
Другой каталог, который может занимать много места (и / или сохранять неловкое доказательство), — это .thumbs каталог. Многие файлы .thumbs кажутся дубликатами.
Для очистки (просто позаботьтесь о -rf флаге и других каталогах;)
Когда вы новичок в Ubuntu / Linux, трудно понять, что вы можете и не можете удалить в своем домашнем каталоге. По большей части вы можете удалить почти все что угодно в вашем домашнем каталоге, программы или приложения, которые требуют .cache (или другие точечные файлы, такие как .local ), воссоздают их.
В большинстве случаев, в худшем случае, вы потеряете пользовательские конфигурации, но не нанесете реального вреда системе.
Я бы не советовал вам заводить привычку удалять вещи, которые вы не понимаете, в своем домашнем каталоге, создавать резервные копии или использовать тестовую учетную запись. Если вы сомневаетесь, безопаснее всего сделать резервную копию или переместить файл.
Затем вы можете восстановить из резервной копии, если это необходимо.
Определенно НЕ начинайте удалять вещи, которые вы не понимаете, за пределами вашей домашней директории.
Обычно это безопасно удалить . Возможно, вы захотите закрыть все графические приложения (например, banshee, rhythmbox, vlc, software-center, . ), чтобы не допустить путаницы в программах, обращающихся к кешу (куда вдруг попал мой файл !?).
Он может легко иметь размер более 100 МБ, поэтому, если вы хотите освободить место на диске, сделайте это.
Как уже указывалось BretD и Dylan McCall , типы файлов — это частичные загрузки, кэш браузера, мультимедийные файлы, такие как значки и т. Д., Используемые для ускорения будущего доступа к тем же файлам.
Следует помнить еще одну вещь: удаление приложения не обязательно приводит к удалению соответствующей папки
/ .cache / remove_prog; в этом случае эти файлы просто занимают место и не используются. Те, безусловно, могут быть удалены.
/ .cache, лучше всего стереть все сразу (чтобы не перепутать любое приложение с несовместимым / частичным состоянием), а затем сразу же перезапустить (на случай, если какое-то приложение использует файлы в
/ .cache все еще работает в фоновом режиме).
Я только что обнаружил, что мой резервный диск заполняется данными из .cache (я полагаю, приложения очищают свой собственный кэш, но я не удаляю резервные копии, поэтому он становится огромным). Поэтому я исключаю .cache из своего списка резервных копий, но я заметил, что .cache содержит материал из TEN YEARS AGO, программное обеспечение, которое я забыл, когда-либо использовал!
Это удалит все в вашем .cache, к которому последний раз обращались более года назад
Если вы нервничаете из-за его запуска, это покажет вам, что будет удалено:
Для этого я использую «время доступа», вы также можете попробовать «время создания», используя -ctime (хотя я нашел много файлов кеша, которым несколько лет, но к которым все еще обращаются). Спасибо @ n33rma за предложение по редактированию.
1,7 ГБ. Теперь, когда я удалил
/.cache , они только
0,1 ГБ! Хорошее предложение: -atime флаг тоже. Что я делаю, так это помещаю подобную команду find в мою crontab, также для моей /tmp/ папки; Я использую -atime +1 без проблем.
/ .cache | сортировать -n, чтобы увидеть сортировку по размеру dir
Я бы порекомендовал не удалять его. Я не эксперт по Linux (хотя надеюсь!) И не знаю специфики структуры файловой системы, но вы можете проверить, что именно находится в папке, перейдя в свою домашнюю папку и нажав Ctrl + H, чтобы показать скрытые папки. Затем вы можете зайти в папку .cache и посмотреть, что там.
Просто из быстрого просмотра моей системы я знаю, что Banshee хранит обложки альбомов в папке кеша (не знаю почему), Chrome хранит данные в папке кеша, многие программы ведут журналы в папке .cache и другие вещи.
Я не уверен, что все эти файлы просто временно присутствуют в целях увеличения скорости (например, кеш браузера) или этот «кеш» содержит файлы для каких-то других целей (поскольку увеличение скорости кеша браузера должно противодействовать чрезмерному использованию пропускной способности путем — доступ к файлам на сервере, в то время как не должно быть заметной разницы во времени чтения / записи для другого расположения файла на жестком диске).
Я надеюсь, что кто-то знает об этом больше, чем я, и может дать вам лучший ответ.
/.cache > cachefolders_size . Что он делает, это дает вам список с размерами каждой папки в .cache . Вы можете вставить информацию из файла, сгенерированного в электронную таблицу, а затем отсортировать ее по своему вкусу. Я читал об этом здесь .
удаление .cache приведет к удалению большинства параметров конфигурации в веб-приложениях. Прежде всего, обратите внимание на веб-браузеры и почтовые клиенты.
То же самое относится и к папке .mozilla . Например, он удалит все учетные записи из Thunderbird, и вам придется заново их создавать. Что касается веб-браузеров, он удалит историю и некоторые из content settings
Кроме этого нет проблем с удалением этих файлов.
Я использую Debian. Просто откройте свою домашнюю папку. Сделать это, чтобы показать скрытые файлы. Вы увидите .cache в папке. Откройте его и удалите все файлы, которые вам не нужны. Иногда вредоносное ПО может оказаться в .cache и заставить ваше приложение работать беспорядочно. Это не принесет никакого вреда вашей системе Debian / Ubuntu, но может создать впечатление, что с вашей системой что-то не так, если вы новичок. Если вы обнаружите, что что-то подобное происходит, вы должны остановить все приложения, удалить содержимое .cache, а затем перезапустить ваши приложения.
Источник
Как освободить память Linux
Как и любая другая операционная система, Linux очень эффективно работает с оперативной памятью. Доступная память свободно распространяется между процессами, неиспользуемые страницы сбрасываются в раздел подкачки на диске, а в случае переполнения памяти, срабатывает специальный механизм, встроенный в ядро, который анализирует все процессы и уничтожает виновника.
Когда любой процесс пишет данные на диск, они сохраняются ядром в отдельном кэше. Очень часто этот кэш занимает достаточно много места. В этой статье мы рассмотрим как освободить память в Linux, а точнее, как очистить созданный программами кэш, а также как вычислить и завершить процессы, которые потребляют больше всего памяти.
Как освободить кэш память в Linux
В каждом дистрибутиве Linux можно использовать три команды чтобы очистить кэш памяти linux. Причем вам не придется завершать никаких процессов. Сначала войдите в консоль от имени суперпользователя:
Затем выполните одну из команд. Очистка кэша PageCache:
sync; echo 1 > /proc/sys/vm/drop_caches
Очистка inode и dentrie:
sync; echo 2 > /proc/sys/vm/drop_caches
Очистка inode и dentrie и PageCache:
sync; echo 3 > /proc/sys/vm/drop_caches
А теперь давайте рассмотрим что происходит при выполнении этих команд.
Утилита sync заставляет систему записать все кэшированные, но еще не записанные данные на диск. Это нужно чтобы освободить как можно больше памяти. По умолчанию данные после записи на диск не удаляются из кэша, это нужно для того, чтобы программа могла быстрее их считать при необходимости.
Если не выполнить команду sync мы тоже освободим немного места, но после ее выполнения результат будет лучше.
Символ разделения ; дает знать оболочке, что перед тем как выполнить другую команду, нужно дождаться завершения работы первой. Последняя команда echo 1 > /proc/sys/vm/drop_caches записывает значение 1 в файл /proc/sys/vm/drop_caches. Это дает сигнал ядру, что нужно очистить выбранный нами вид кэша.
Виды кэша в Linux
А теперь давайте рассмотрим виды кэша, которые позволяют очищать эти команды, а также как все это работает.
PageCache или страничный кэш — это место, куда ядро складывает все данные, которые вы записывали или читали из диска. Это очень сильно ускоряет работу системы, так как если программе во второй раз понадобятся те же данные, они просто будут взяты из оперативной памяти. Но по этой причине этот кэш занимает больше всего места.
Посмотреть размер страничного кэша можно с помощью утилиты free. Здесь он показан в последней колонке — cached:
Такой кэш чистить эффективнее и безопаснее всего.
Кэш inode и dentrie тоже относится к файловой системе. Только в него записываются не сами данные, а структура файловой системы, расположение файлов и папок. При запросе расположения файла или содержимого папки ядро формирует специальные структуры, в которых есть вся эта информация. При следующем запросе структуры будут уже сохранены в памяти. Для каждой файловой системы существует свой кэш inode и общий кэш dentrie.
Этот кэш занимает очень мало памяти. Данные представлены в байтах, и как видите, это очень мало. Посмотреть его можно командой:
cat /proc/slabinfo | egrep dentry\|inode
Очищать его чтобы освободить память linux не рекомендуется, так как памяти потребляется немного, а на новое сканирование файловой системы идет относительно много времени.
Нужно ли очищать кэш вообще?
Во-первых, если занято очень много памяти, вы можете очистить страничный кэш, особенно если это он занимает много памяти. Во-вторых, очистить кэш памяти linux может понадобиться, если вы изменяли какие-либо настройки файловой системы или ядра, а теперь хотите проверить как это отразилось на скорости операций чтения/записи. В таком случае можно очистить все кэши и сделать это без перезагрузки, что очень удобно.
Операционная система Linux разработана таким образом, что перед тем как обратиться к диску, будет просмотрен кэш диска, и если там есть нужные данные, к диску обращений не будет. Если очистить кэш Linux то операционная система будет работать немного медленнее, поскольку ей придется искать данные на диске.
Автоматическая очистка кэша
Давайте рассмотрим как автоматически очистить кэш памяти ежедневно в два часа ночи с помощью планировщика заданий cron.
Сначала создадим bash скрипт со следующим содержимым:
sudo vi /usr/local/bin/clearcache.sh
!/bin/bash
sync ; echo 1 > /proc/sys/vm/drop_caches
Очищать будем только страничный кэш, так как он занимает больше всего. Другие виды трогать не будем, чтобы зря не понижать производительность системы.
Дальше сделайте скрипт исполняемым:
sudo chmod 755 /usr/local/bin/clearcache.sh
Осталось добавить задание в планировщик cron. Для этого выполните команду:
И в открывшемся редакторе добавьте строчку:
0 2 * * * /usr/local/bin/clearcache.sh
Теперь этот скрипт будет выполняться каждую ночь и выполнять очистку памяти, чтобы сервер мог работать нормально.
Настройка размера кэша памяти
Куда удобнее не очищать кэш каждый раз, а настроить ограничение, при превышении которого система сама будет удалять лишние страницы. Вы не можете явно ограничить сколько мегабайт может система использовать под кэш. Будет использоваться вся доступная память по мере необходимости, но можно настроить скорость удаления просроченных страниц из кэша.
За это отвечает файл /proc/sys/vm/vfs_cache_pressure. Он содержит относительный показатель, насколько агрессивно нужно удалять страницы из кэша. По умолчанию установлен параметр 100. Если его уменьшить ядро будет реже удалять страницы и это приведет к очень быстрому увеличению кэша. При нуле страницы вообще не будут удаляться. Если значение больше 100, размер кэша будет увеличиваться медленнее и неиспользуемые страницы будут сразу удаляться.
Например, сделаем минимальный размер кэша:
echo 1000 > /proc/sys/vm/vfs_cache_pressure
Не забудьте, что это очень сильно снизит производительность вашей системы, потому что вместо кэша данные будут читаться из диска.
Как очистить память подкачки
Пространство подкачки очистить очень просто. Для этого выполните:
swapoff -a && swapon -a
Имейте в виду, что при очистке swap, все данные будут перенесены обратно в оперативную память.
Как освободить память занимаемую процессами
Если в вашей системе нет памяти и кэш здесь ни при чём, следует завершить несколько процессов, потребляющих больше всего памяти. Для этого сначала надо вычислить такие процессы. Чтобы это сделать можно воспользоваться утилитой ps:
ps -e -o pid,user,%mem,command —sort %mem
Как видите, больше всего здесь памяти занимает chromium. Теперь вам надо его завершить. Идентификатор процесса, по которому его можно завершить отображается в первой колонке. Поэтому:
Более подробно о том как завершить процесс читайте в этой статье. Таким образом, вы можете освободить память от процессов, которые занимают больше всего памяти, а потом уже настроить zram или swap для того, чтобы память не переполнялась.
Выводы
Вот и все. Вы уже знаете очистить кэш linux и освободить память. Не забудьте, что все команды, приведенные в этой статье нужно выполнять от имени суперпользователя, иначе ничего работать не будет. Если остались вопросы, спрашивайте в комментариях!
Источник