Что такое кэш миниатюр Windows, и зачем его удалять?
В операционной системе Windows кэш миниатюр используется как хранилище миниатюр рисунков для внутреннего/системного проводника. Это значительно ускоряет отображение каждого из рисунков/изображений, так как системе нет необходимости пересчитывать свойства рисунка всякий раз, когда пользователь хочет на него взглянуть. Таким образом Windows работает с изображениями практически любого формата: от фотографий (jpeg) до гифок (gif) и видео (avi). Если вы храните в компьютере большое количество таких, вы даже и не подозреваете, как здорово кэш миниатюр экономит системные возможности Windows, ограждая процессор и RAM от постоянных вычислений и перезаписей на диски во время просмотра фотографий и видео.
Казалось бы вопрос с необходимостью кэша миниатюр рисунков закрывается. Однако, как и многое в Windows, это не саморегуляторный механизм, попадающий под присмотр системы. Если это кэш, значит он имеет конкретную папку. С момента появления Windows Vista это путь (к скрытой настройками области):
И чем больше изображений вы через систему “пропускаете”, тем “богаче” папка становится, разрастаясь со временем до неприличных размеров. Причём кэш будет накапливать в себе эти миниатюры ВНЕ ЗАВИСИМОСТИ от того, вернётесь ли вы к просмотренным файлам или они пропадут из системы раз и навсегда. Кэш будет содержать в себе миниатюры рисунков даже после их удаления (североамериканское ФБР однажды воспользовалось этим фактом для предъявления обвинений некоторым любителям “весёленьких” картинок с участием несовершеннолетних).
Файл миниатюры легко распознаваем: .db (файл базы данных) в расширении файла и часто цифро-сочетание, обозначающее его физический размер. Однако искать системные файлы с помощью системного ЖЕ проводника – есть mauvais ton, и если вы собираетесь взглянуть на накопившиеся в системе эскизы изображений, вам в помощь командная консоль и команды поиска файлов через cmd. Откройте её от имени админа и введите пару команд:
После исполнения команды консоль выдаст все пути, которые в конечном итоге содержат эскизы изображений, в том числе и у сторонних программ:
Кэш миниатюр: что в нём хорошего и что плохого?
ПЛЮСЫ КЭША
- ускорение загрузки системы в принципе
- ускорение открытия папок, содержащих большое количество изображений и видеофайлов
МИНУСЫ КЭША
- нерегулируемое накапливание кэша, отнимающее свободное пространство диска
- хранимая история просматриваемых медиафайлов (системе наплевать, каким образом файл попал на компьютер и как часто вы его просматривали: взглянули единожды, ошибившись, или любуетесь ежечасно – рисунок уже в кэше)
- невозможность удалить некоторые пустые папки или целые директории из-за хранимого локального кэша миниатюр
После того, как мы разобрались с понятием и содержимым этого кэша, посмотрим на инструменты с ним работы.
Кэш миниатюр: чистим, удаляем, запрещаем
Отключить кэширование в системах от Windows Vista можно через редактор групповой политики. Быстрой командой
попадаем в редактор и обнаруживаем настройку:
Конфигурация пользователя-Административные шаблоны-Компоненты Windows-Проводник
Если редактор недоступен, для отключения кэширования воспользуйтесь возможностью редактора реестра. Эти настройки находятся по пути:
Значение параметра DisableThumbnailCache уберите в 1. Если таковой не обнаружен, создайте его как двоичный DWORD параметр и, назвав DisableThumbnailCache, присвойте значение 1.
Почистить содержимое системного кэша можно:
- при помощи утилиты Очистки диска Windows в опции:
- скачав, распаковав и запустив вот этот батник:
- воспользовавшись специальными программами. Никогда этого не делал, но вот вам список названий, если захотите попробовать:
Кэш миниатюр: замеченные проблемы
Среди наиболее встречающихся вопросов к хранилищам эскизов можно выделить:
- неправильное отображение иконок к некоторым программам (в том числе и самодельных или вручную установленных) ярлычков
- вмешательство сторонних программ, в результате чего очистка кэша не приносит результата, и только что удалённые эскизы/миниатюры предательски появляются вновь
К традиционным ошибкам – традиционный подход решения проблем:
Периодическое удаление кэша эскизов
Проблема, по всей видимости зависит от каких-то специфических обстоятельств. В Windows XP кэш эскизов хранился в скрытых файлах thumbs.db в каждом каталоге. Начиная с Vista по каким-то причинам кэш сделали централизованным — теперь все эскизы хранятся в каталоге c:\Users\имя_пользователя\AppData\Local\Microsoft\Windows\Explorer в файлах (число означает размер эскиза)
thumbcache_1024.db
thumbcache_256.db
thumbcache_96.db
и других. В этом же каталоге хранится кэш иконок приложений. Периодически этот кэш сбрасывается и все эскизы генерируются заново при открытии каждого из каталогов. Если в каталог с фотографиями через проводник не заходить вообще, а просматривать только через просмотрщик изображений, тогда эскизы не удаляются, но это дает всего лишь небольшую отсрочку от очередного сброса. Единственное, что более-менее ясно — очищение происходит при достижении размера кэша до какого-то значения, и скорее всего не суммарного, а только файла thumbcache_96.db — максимальный размер, которого достигал до сброса — 14
15 Мб (неизвестно, сколько это по количеству файлов, но точно очень мало), а вот размер thumbcache_1024.db варьируется от 40 до 120 Мб. Очищение происходит путем перемещения этих файлов в каталог ThumbCacheToDelete и созданием кэша заново. Причем зачастую создание происходит не сразу и все это время кэш не сохраняется вообще. То есть, заходишь в каталог с фотографиями, проводник генерирует эскизы, выходишь и заходишь снова — эскизы генерируются заново. Было подозрение, что это каким-то образом связано со свободным местом на разделе (системный — 102 Гб, свободно стабильно 19
21 Гб), но после перемещения местоположения кэша на другой раздел (363 Гб, свободно в разное время от 20 до 100 Гб) ничего не изменилось.
К остыльный способ в вариантах для Windows 7 и 8, заключается в установки запрета на удаление файлов и папок в каталоге кэша для всех пользователей, в том числе System. Данный способ более-менее работал в Windows 7, в 8 как бы работает, вот только при очередной попытке сброса кэша загрузка диска прыгала до 100%, а Process Monitor показывал постоянные обращения к каталогу, это не прекращалось, пока не убрал запрет на удаление. В Windows 8.1, такой способ не работает вообще.
A Vista thumbnail extractor — список ключей реестра, которые вроде как влияют на работу кэша. Пробовал все возможные варианты, но они не устраняют проблему.
Тонкая настройка кэша эскизов страниц Windows 7 и . — здесь есть что-то по некоторым ключам, но толку нет.
На каком-то форуме встретилось предположение, что на самом деле проблема не в размере кэша, а в том, что каким-то образом нарушается целостность его индекса thumbcache_idx.db, но у меня автоматическая очистка диска отключена. Проводил опыт — запускал очистку диска вручную, очищал кэш, перезагружался и целенаправленно открывал все папки с фотографиями, следя при этом за размером thumbcache_96.db, который доходил до 50-60 Mb. Вот только максимум на полчаса.
В общем, решения нет. Я просто установил флажок «Всегда отображать значки, а не эскизы» в параметрах папки — вкладка Вид.
Предотвращение в Windows 7 от удаления кэша эскизов.
В предыдущей статье Ускорение времени загрузки папок в Windows 7. мы обсуждали, как раздражает , что Windows 7 удаляет и заново создаёт кэш эскизов каждый раз, таким образом делая его одной из самых больших проблем в последней ОС от Microsoft. Я описал быстрое решение этой проблемы, но все же Microsoft должна предпринять серьезные уведомления об этой проблеме и выпустить обновление в следующих пакетах обновления.
Предотвращение в Windows 7 от удаления кэша эскизов, фотографий, видео, музыки и документов будет быстрее, так как Windows, не нужно будет удалять и заново создавать кэш-памяти.Фокус в том, чтобы запретить доступ для всех пользователей, чтобы удалить кэши эскизов. Позвольте мне подробнее написать как это сделать, зайдите в папку кэша эскизов, который расположен в C: Users <имя пользователя>AppData Local Microsoft Windows где <имя пользователя>является имя любого пользователя, например, в моем случае это Viktor. Теперь щелкните правой кнопкой мыши на папке кэша эскизов, которая нахожится в «Проводник» и выберите Свойства. Зайдите на вкладку Безопасность и нажмите кнопку Дополнительно.
Нажмите кнопку Изменить разрешения, и вы найдете в этом списке всех пользователей, имеющих доступ к этой папке.
Для каждого пользователя, нажмите кнопку Изменить и установите флажок Запретить для: `Удалить подпапки и файлы «и» Удалить «, как показано на рисунке ниже.
Выполнение этого создаст три новых специальных записи разрешений, как показано на рисунке ниже. Это совершенно нормально, поскольку вы всегда можете удалить их позже.
Эта процедура будет отрицать пользователей (включая System) от удаления любых файлов в эту папку, таким образом, кэш останется сохранённым, а также ускориться загрузка папок, содержащих видео, музыку, фотографии и документы.Обратите внимание, что как только вы предотвратите операцию удаления этих файлов в эту папку, миниатюры не будут удалены, если вы запустите Очистка диска или любые третьи средства очистки.