Заметки о Windows и других программных продуктах Microsoft...

Зачем нужна папка Windows.old и как ее удалить

Зачем нужна папка Windows.old и как ее удалить

Если вы нашли у себя на диске папку с названием Windows.old и размером несколько десятков гигабайт, не стоит сразу подозревать вирусы и прочее нежелательное ПО. Папка Windows.old вполне безобидна, она создается в следующих ситуациях:

• При обновлении версии операционной системы (Inplace Upgrade), например с Windows 8.1 до Windows 10;
• При переустановке операционной системы в режиме обновления;
• При использовании функции Refresh (обновление).

Обычно Windows.old находится в корне системного диска. Если же на момент обновления папка с таким именем уже есть (напр. при повторном обновлении), то создаются папки с именем Windows.old.000, Windows.old.001 и т.д.

свойства папки Windows.old

 

Папка Windows.old предназначена для того, чтобы при необходимости иметь возможность восстановить отдельные файлы и даже полностью откатиться до ранее установленной системы. Она представляет из себя архивную копию, в которой система сохраняет файлы предыдущей установки. При установке в нее сохраняется практически все содержимое системного диска — системные файлы, установленные программы и пользовательские файлы.

содержимое папки Windows.old

 

Примечание. Процедура отката а к предыдущей установке из папки Windows.old описана здесь. Сразу скажу, что процедура достаточно сложна и требует определенного опыта, кроме того, при ее использовании есть шанс получить неработоспособную систему без шансов на восстановление.

Если после обновления ваша система работает стабильно и все файлы на месте, то папку Windows.old вполне можно удалить. Однако сделать это не совсем просто, т.к. система устанавливает на нее специальные права и при попытке удаления вы получите отказ в доступе.

ошибка при попытке удаления папки windows.old

Но не все так страшно и для удаления папки Windows.old все же есть несколько способов, о которых и пойдет речь дальше. Итак, способ первый…

Удаление с помощью утилиты «Очистка диска»

Переходим в каталог C:\Windows\System32, находим файл cleanmgr.exe и запускаем его от имени администратора.

запуск cleanmgr с правами администратора

 

В списке компонентов отмечаем ″Предыдущие установки Windows″ и жмем OK. Подтверждаем удаление выбранных файлов и через пару минут папка Windows.old со всем содержимым будет безвозвратно удалена.

выбор компонентов для удаления

Удаление вручную

В некоторых случаях нет возможности воспользоваться утилитой очистки диска, например в серверных ОС она просто отсутствует. Здесь для удаления придется изменить разрешения файловой системы на папку. Открываем свойства папки, идем на вкладку «Безопасность» и жмем кнопку «Дополнительно» для перехода к расширенным настройкам безопасности.

свойства папки windows.old, вкладка безопасность

 

Как видите, владельцем папки является система, и первое, что необходимо сделать для успешного удаления  — это сменить владельца. Жмем «Изменить» и в открывшемся окне выбираем себя (текущего пользователя, под которым вы зашли в систему).

выбор нового владельца папки

 

Затем отмечаем чекбокс «Заменить владельца подконтейнеров и объектов» и жмем кнопку «Применить».

смена владельца папки и всех подпапок

 

После смены пользователя надо будет заново открыть окно свойств безопасности. Следующим шагом необходимо выдать себе разрешение на папку. Жмем кнопку «Добавить»

добавление разрешений для папки

 

Выбираем в качестве субъекта свою учетную запись, в поле «Тип» выбираем «Разрешить», в поле «Применяется» — «Для этой папки, ее подпапок и файлов». Ставим разрешение «Полный доступ».

выбор пользователя, для которого добавляются разрешения

 

Теперь отмечаем чекбокс «Заменить все записи разрешений дочернего объекта наследуемыми от этого объекта» и жмем на «Отключение наследования».

отключение наследования для папки

 

В диалоговом окне выбираем «Удалить все унаследованные разрешения из этого объекта».

удаление всех унаследованных разрешений

 

В результате мы становимся владельцем и единственным пользователем, имеющим права на папку. И теперь ничто не помешает ее удалить 🙂

результат

Удаление из командной строки

Все то же самое можно проделать из командной строки. Для этого надо запустить командную строку с правами администратора и сменить владельца папки:

takeown /F C:\Windows.old /R /D y

Затем получить права на папку и отключить наследование:

icacls C:\Windows.old\*.* /T /grant WKS1\Kirill:F /inheritance:r

И удалить папку:

rmdir C:\Windows.old /S /Q

Удаление с помощью планировщика

И еще один способ, который теоретически можно использовать для удаления папки Windows.old.

По информации от Microsoft папка Windows.old должна автоматически удаляться по истечении 28 дней после обновления с помощью запланированного задания. И действительно, в планировщике, в папке \Microsoft\Windows\Setup можно найти задание с именем SetupCleanupTask, которое должно произвести необходимые действия.

Примечание. Задание SetupCleanupTask можно найти только в клиентских операционных системах. В серверных ОС в планировщике вообще нет папки Setup.

задание на очистку в Планировщике задач

 

А теперь о странном 🙂

Если присмотреться, то можно увидеть, что задание почему-то запланировано на 6 часов утра 2 января 2004 года, поэтому автоматически отработать у него нет шансов. Поскольку тестирование проводилось на Windows 10, то я подумал на недоработки новой системы, но на всякий случай решил перепроверить на другой ОС.  Для проверки я произвел тестовое обновление Windows 8 до 8.1,  но и там задание SetupCleanupTask присутствовало в планировщике и для него было указано точно такое же расписание.

Поскольку автоматический запуск не сработает, то попробуем запустить его вручную. Однако и тут не все гладко. Если запустить это задание на Windows 8.1, то оно удаляет папку Windows.old, после чего удаляется из планировщика. При запуске в Windows 10 задание вполне успешно отрабатывает, но при этом с папкой ничего не происходит. А поскольку в качестве исполняемого действия указан настраиваемый обработчик, то выяснить причину такого поведения не представляется возможным.

Такие вот дела. Впрочем, для удаления папки Windows.old вполне хватит и первых двух способов, этот способ я описал лишь для общего развития.

 
 
Комментарии
Денис

Спасибо. Инструкция очень выручила

Роман

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

Михаил

Роман, Вам удалось решить проблему? У меня тоже самое.

Спасибо!Благодарен

Мне всё лень ее удалить. Вроде надо, а руки не доходят. Попробую вашим способом.

все получилось супер!!! была папка IOB немог удалить никак!! прочитал статью скачал унлокер все получилось спасибо!!!

Александр.

Спасибо. Ничего не помогало. Только ваша инструкция спасла все подробно. Сменил права папки и удалилась в безопасном режиме. Класс!

Вадим

Описание не полное. Не сказано самое главное.
Вы пишите:»Жмем «Изменить» и в открывшемся окне выбираем себя (текущего пользователя, под которым вы зашли в систему)». Я выбора не нашел. Можно только набить свое имя. И тогда надо писать не «выбрать», а «набить». А если выбор есть, то надо указать как выбрать.
А если выбора нет, то надо написать не «выбрать», а «набить»