Очищення каталогу System Volume Information

На одному з серверів (під управлінням Windows Server 2012 R2) зіткнувся з вичерпанням місця на системному диску C: \. Перебрав основні місця, в яких зазвичай накопичується різне сміття (WinSxS, очищення каталогів TEMP, профілів користувачів і видалення застарілих оновлень і ін.), Але помітного ефекту це не дало. Місця на диску все також не вистачало. В результаті знайшов, що більшу частину системного диска займала папка System Volume Information. У цій статті я спробую розповісти, навіщо потрібен каталог System Volume Information в Windows системах, що в ньому зберігається, і як його очистити.

Примітка. Інструкції, наведені в цій статті можна застосувати й до інших версіях Windows: Windows 10, Windows 7, Windows 8, Windows 2008 R2, Windows 2016/2012 R2.

зміст:

  • Як відкрити папку System Volume Information?
  • Що зберігається в каталозі System Volume Information?
  • Як очистити системні файли в каталозі System Volume Information

Як відкрити папку System Volume Information?

Каталог System Volume Information знаходиться в корені кожного диска (будь то локальний HDD, SSD диск або знімний накопичувач USB-флешка). У ньому зберігаються системні дані, що відносяться до служби відновлення системою, індексування, ведення історії файлів і т.д.

За замовчуванням папка System Volume Information прихована і доступ до неї є тільки у системи (обліковий запис NT AUTHORITY \ SYSTEM). Навіть адміністратор не може відкрити його і переглянути вміст папки. Якщо спробувати відкрити папку System Volume Information в провіднику, під будь-яким користувачем (навіть адміністратором), з'явиться помилка доступу:

Розташування недоступно
Немає доступу до C: \ System Volume Information
Відмовлено в доступі

Щоб переглянути вміст каталогу, доведеться спочатку призначити себе власником каталогу і надати свого облікового запису права доступу на нього на рівні файлової системи NTFS (це можна зробити за допомогою графічного інтерфейсу Безпека у властивостях папки). Але набагато швидше ви можете надати свого облікового запису (наприклад username) права доступу на папку з допомогою команди:

icacls "C: \ System Volume Information" / grant username: F / t

Перевірте у властивостях папки на вкладці Безпека, що у вашій учеткі з'явилися повні права доступу до папки.

Щоб відключити доступ до папки System Volume Information, виконайте:

icacls "C: \ System Volume Information" / remove username / t

Що зберігається в каталозі System Volume Information?

Що ж зберігається в каталозі System Volume Information? Мені вдалося знайти інформацію про наступних службах, що зберігають свої файли в цій папці (список не є вичерпним):

  • Дані контрольних точок відновлення системи на клієнтських системах або резервні копії System State, зроблені через Windows Server Backup (wbadmin), на серверних ОС;
  • Вміст бази служби індексації (Indexing Service), що використовується для швидкого пошуку файлів;
  • База даних служби Distributed Link Tracking Service;
  • Дані снапшотов дисків (тіньових копій), що створюються службою Volume Shadow Copy, які можна використовувати для відновлення старих версій файлів;
  • Налаштування дискових квот;
  • База сервісу дедуплікаціі файлів;
  • База групи реплікації DFS (dfsr.db).

Якщо ви використовуєте на своєму комп'ютері або сервері тіньові копій для можливості відкату до старих версій файлів / станів системи, майте на увазі: кожен новий VSS снапшот (знімок) зберігає дані в каталог System Volume Information, збільшуючи його розмір. Чим частіше створюються тіньові копії і чим частіше змінюються файли на диску, тим швидше зростає розмір цього каталогу.

На скріншоті нижче видно, що в папці System Volume Information є системний файл розміром більше 120 Гб.

Як очистити системні файли в каталозі System Volume Information

Примітка. Не рекомендується вручну видаляти файли в каталозі System Volume Information, тому що в ньому зберігається важлива інформація, необхідна для відновлення системи і інша важлива інформація.

Радикально очистити каталог System Volume Information можна, відключивши ведення контрольних точок відновлення системи і історії файлів. Але це не завжди допустимо.

Подивимося спершу, чому ж зайнятий каталог. Виведемо статистику використання тіньових копій:

vssadmin list shadowstorage

vssadmin 1.1 - Програма командного рядка для адміністрування служби тіньового копіювання томів
(C) Корпорація Майкрософт (Microsoft Corportion), 2001-2013.
Зіставлення сховища тіньової копії
Для томи: (C:) \\? \ Volume 9a9e5a02-db8e-447d-9fef-6029dc4f7f10 \
Том сховища тіньової копії: (C:) \\? \ Volume 9a9e5a02-db8e-447d-9fef-6029dc4f7f10 \
Використаний обсяг сховища тіньової копії: 4,69 ГБ (2%)
Виділений обсяг сховища тіньової копії: 5,17 ГБ (2%)
Максимальний обсяг сховища тіньової копії: 23,3 ГБ (10%)

Як ми бачимо, для даних тіньових снаншотов на диску C: \ виділено 10% місця на диску, з яких зайнято 2%. У тому випадку якщо Максимальний обсяг сховища тіньової копії(Maximum Shadow Copy Storage space) дорівнює UNBOUNDED, це означає, що ліміт для тіньових копій не заданий і вони потенційно можуть зайняти весь доступний вільне місце на диску. Windows за замовчуванням відводить під зберігання даних тіньових знімків 10% від загального розміру диска.

Зменшіть ліміт використання дискового простору службою VSS до 2 гб за допомогою команди vssadmin. Команда має наступний синтаксис:

vssadmin resize shadowstorage / on = [drive letter]: / For = [drive letter]: / MaxSize = [maximum size]

У нашому прикладі вона буде виглядати так:

vssadmin resize shadowstorage / on = c: / for = c: / maxsize = 2GB

vssadmin 1.1 - Програма командного рядка для адміністрування служби тіньового копіювання томів
(C) Корпорація Майкрософт (Microsoft Corportion), 2001-2013.
Успішно змінено розмір для відповідності сховища тіньової копії

Якщо ви створюєте резервні копії стану системи за допомогою Windows Server Backup, видалити старі версії копій system state можна за допомогою команди (в редакціях Windows Server):

wbadmin delete systemstatebackup -keepversions: 0

При запуску команди wbadmin delete systemstatebackup в Windows 10 з'являється помилка - "Команда DELETE SYSTEMSTATEBACKUP не підтримуються в цій версії ОС Windows". Справа в тому, що в клієнтських системах (Windows 10 / 8.1 / 7) управління точками відновлення і лімітами можливо тільки з графічного інтерфейсу. У властивостях системи (System) Перейдіть на вкладку System Protection (Захист системи).

Виберіть системний диск і натисніть на кнопку Configure (Налаштувати). Відкриється діалогове вікно настройки квот для зберігання контрольних точок відновлення системи. Ви можете зменшити розмір диска під зберігання тіньових копій. Тут же можна видалити всі мають точки відновлення (кнопка вилучити), Або зовсім відключити створення контрольних точок відновлення, вибравши Відключити захист системи.

Також зменшення розміру каталогу System Volume Information ви можете:

  • Перенести дані VSS на інший NTFS диск (vssadmin add shadowstorage / for = c: / on = d: / maxsize = 30%);
  • Відключити / переналаштувати функцію Історія файлів Windows;
  • Виконати очищення системних файлів на диску за допомогою вбудованої утиліти cleanmgr.exe (Властивості диска -> Очищення диска).
  • Якщо ви використовуєте функцію дедуплікаціі даних, необхідно відключити дедублікация і виконати команду деоптімізаціі файлів Start-DedupJob -Volume D: -Type Unoptimization (Виконання команди може зайняти досить багато часу, також стежте за тим, щоб на диску було достатньо вільного місця).