Msocache перенести на другой диск
Мне нужно больше места на моем SSD-диске, и я обнаружил, что MSOCache занимает 1,3 ГБ. У меня установлен Microsoft Office 2010.
Могу ли я безопасно удалить MSOCache?
Краткий ответ: нет. Скорее всего, вы больше не сможете выполнять ремонт или устанавливать дополнительные компоненты.
Я пробовал сам на виртуальной машине под управлением Windows 7 с Office 2007 - я думаю, что это будет иметь тот же эффект на Office 2010.
Более безопасный вариант (как предлагается здесь) - записать саму папку на DVD-диск или переместить ее на USB-накопитель и изменить все ссылки на нее в реестре Windows.
С этой страницы:
- Запишите всю эту папку на CD-R или DVD (размер файла этой папки зависит от вашей версии Office).
- Удалить эту папку.
- Найдите в реестре в RegEdit файл C:\MSOCache и измените все ссылки, чтобы они указывали на ваш привод CD/DVD, например: E:\MSOCache (конечно, потребуется диск, когда что-то связанное с Office нуждается в этих файлах кэша.)
Путь к этому будет Джанкшн-Пойнт.
Например, если у вас SSD-накопитель на 120 ГБ в качестве C: и жесткий диск на 3 ТБ (магнитный) в качестве D: ::
- на диске D: создать подпапку с именем C
- вырезать и вставить папку MSOCache в подпапку C расположенную на диске D:
- запустить CMD
- Тип: CD \
- тип: MKLINK /J MSOCache D:\C\MSOCache
- Тип: EXIT
После этого у вас будет все содержимое MSOCache по пути C:\MSOCache , но физически файлы будут находиться в папке D:\C\MSOCache .
Это был ответ о папке MSOCache на диске C Теперь давайте поговорим о реальной проблеме, той же, с которой я столкнулся несколько часов назад.
НЕ достаточно места на SSD-диске как C: DRIVE
Основной проблемой здесь является установщик Windows и их дрянная система кэширования всех старых установочных файлов. Каждая старая версия некоторого программного обеспечения, которая когда-то существовала на вашем ПК, установщик Windows хранит в своей папке кеша. Глупо, не правда ли (только потому, что кто-то может удалить приложение Windows Installer сохраняет все файлы, чтобы он мог вернуться к предыдущему состоянию - в упрощенной версии - поверьте мне, это намного сложнее, но примите это как есть).
Это не было бы большой проблемой, если бы не было еще большей глупости от Microsoft, конечно, под названием Windows Updates. Это просто наводняет вас обновлениями. А что за обновления !? Никто!? Обновления == Установки == Все больше и больше кэш установки Windows.
В моей ситуации я установил буквально базовый ПК для разработки с минимальным Office + VS2005, VS2008, VS2010 - то есть, я должен иметь. У меня было это на главном диске машины XP с 120 ГБ просто отлично и много места на диске осталось со всеми установленными обновлениями (~ 100 ГБ). Но Windows 7 == 30 ГБ свободного места (представь мое лицо, когда я это увидел). Я знаю, что Windows 7 немного больше, но не на 70 ГБ больше.
. а теперь через 2 часа я вернулся к 70 ГБ;) КАК ты меня спрашиваешь !?
Просто выполните то же самое, что и выше для следующих папок:
- C:\Windows\Installer\
- C:\Windows\SoftwareDistribution\
Команды очень похожи:
- переместить вышеуказанные папки в (например) D:\C\WINDOWS
- запустить CMD повышенными правами администратора
- Тип: CD C:\WINDOWS
- Тип: MKLINK /J Installer D:\C\Windows\Installer
- Тип: MKLINK /J SoftwareDistribution D:\C\Windows\SoftwareDistribution
- Тип: EXIT
Обратите внимание только на то, чтобы останавливать службы Windows Update, Trusted Installer и Windows Installer перед перемещением этих папок, запускать их после, если хотите, или просто перезапускать (10 секунд для перезагрузки на SSD).
Я вернул обратно 40 ГБ (100% бесполезно занятого места, так как я никогда не буду удалять все, что использую). Не нарушил никаких правил Windows, так как они используют для Documents and Settings ту же точку соединения с Users хотя и на одном диске .
Все еще ковыряюсь в том, что еще можно переместить на (магнитный) жесткий диск . Стоит заметить, что в папке Windows у вас будет подпапка winSxS НЕ ПЕРЕМЕЩАЙТЕ эту папку, так как это не отвечает целям Solid State Disk (быстрая загрузка приложений). WinSxS - это папка, в которой расположены все библиотеки Side by Side (и практически все приложения оттуда что-то используют). Это также решение Microsoft для DLL-версии АД, если вам интересно, почему она существует.
Windows 8.1 на двух дисках — как правильно перенести профиль пользователя с SSD на HDD
Конфигурация разделов дисков
Идея конфигурации двухдисковой системы, пригодной для удобного резервного копирования, очень проста. Так как второй диск HDD, на который переносятся профили пользователей и некоторые системные папки с твердотельного накопителя SSD, скорее всего, имеет достаточно большой объем, то почему бы не создать на нем отдельный том (раздел) для перемещенных данных. Это однозначно позволит решить задачу создания полного бекапа системы с помощью Acronis или Clonezilla.
Сам процесс переноса профилей и системных папок в целом не будет отличаться от описанного ранее. Мы пойдем немного дальше и сделаем второй системный том “невидимым”, то есть подключим его не как новый диск, а к пустой папке на диске C:\.
Отключение Prefetch и Superfetch
Задачей Prefetch Service является уменьшение времени запуска приложений и времени загрузки системы. Windows отслеживает порядок загрузки и запуска приложений и записывает сведения в виде файлов небольшого размера в папке %systemroot%\prefetch. Эта информация используется сервисом для ускорения запуска приложений.
Если система расположена на SSD, то использование Prefetch Service никаких преимуществ не дает и даже мешает.
Управление сервисом осуществляется с помощью следующего ключа реестра >
HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PrefetchParameters
Параметр EnablePrefetcher может принимать следующие значения:
0 — отключить сервис;
1 — упреждающая выборка приложений;
2 — упреждающая выборка приложений, запускаемых во время загрузки системы;
3 — включены обе упреждающие выборки (пп. 1 и 2).
Соответственно, нужно запустить редактор реестра regedit и присвоить «EnablePrefetcher» значение «0» >
Superfetch так же предназначен для ускорения загрузки приложений. На основе анализа того, какие приложения наиболее часто используются на компьютере, Superfetch осуществляет их предварительную фоновую загрузку в свободную оперативную память.
Для загрузки приложений с SSD — Superfetch не нужна. Не выходя из редактора реестра присваиваем параметру «EnableSuperfetch» значение «0«.
После выключения служб файлы из папки C:\Windows\prefetch автоматически не удаляются. Для экономии нескольких десятков мегабайт их можно удалить вручную.
3. Перенос профилей пользователей
Создаем, если его еще нет, нового локального “служебного” пользователя, профиль которого останется в исходном расположении на диске C:\, и включаем его в группу Администраторы. Именно в сеансе этого пользователя мы будем делать перенос профилей пользователей.
Сделать это можно непосредственно в “Управление компьютером” или в Windows 8 / 8.1 “Параметры” –> “Изменение параметров компьютера” (правая всплывающая панель) –> “Учетные записи”.
Перезагружаем компьютер и заходим в сеанс нового локального администратора. Как мы уже говорили, процесс переноса профилей пользователей не отличается от описанного ранее для Windows 7.
Предположим, что нужно переместить профиль пользователя “User-3”.
Проблема с использованием команды robocopy для копирования профилей пользователей обсуждалась выше. Команда xcopy с задачей не справилась вовсе. Будем надеяться, что это временные трудности.
Пока вновь воспользуемся для нашей цели замечательной программой FAR. Программа по-прежнему бесплатна и отлично работает в Windows 8.1. Запускать ее надо с правами администратора:
Главное до начала выполнения задания не забыть установить отметку копирования прав доступа.
После того, как копирование будет завершено, нужно убедиться, что скопированы все файлы и удалить исходную папку профиля. В данном случае – “C:\Users\User-3” (Надеюсь, что системный бекап до начала операций переноса сделан).
На всякий случай перед удалением папки перемещенного профиля стоит перезагрузить компьютер – иногда без этого не получается удалить некоторые файлы.
После удаления исходного профиля делаем в каталоге “C:\Users” ссылку на новое местоположение профиля пользователя. Ссылку можно сделать в командной строке:
mklink /D "C:\Users\User-3" "С:\Disk2\Users\User-3"
или в менеджере FAR по “Alt + F6”.
Вопрос по поводу целесообразности изменения путей к пользовательским каталогам в реестре рассматривался в первой статье. Добавить к этому практически нечего, кроме того, что на рабочей машине с Windows 7 я так и не стал ничего менять в реестре и ни к каким отрицательным последствиям за все время эксплуатации это не привело.
На переносе системных папок Installer, MSOCache и Search в новое местоположение я так же останавливаться не буду – тут ничего нового.
2 ответа 2
Самый быстрый способ освободить место - отключить спящий режим и файл подкачки.
Отключение файла подкачки:
- Щелкните правой кнопкой мыши "Мой компьютер" и выберите "Свойства"
- Перейдите на вкладку "Дополнительные параметры системы"
- Нажмите Настройки для "Производительность", затем перейдите на вкладку "Дополнительно"
- Нажмите "Изменить" для "Виртуальная память"
- Нажмите на свой SSD диск, выберите "Нет файла подкачки" и нажмите "Установить"
Отключить спящий режим:
- Откройте командную строку с повышенными правами
- Введите powercfg -h off
- Нажмите ввод, затем перезагрузите
Следуйте советам pcunit, чтобы отключить спящий режим. Также проверьте вашу временную папку (C:\Users\You\AppData\Local\Temp - не то, что AppData скрыта) и удалите все остатки. Точка соединения (mklink /d) для полного перемещения AppData должна хорошо работать, если у вас там много вещей.
Попробуйте переустановить несколько больших приложений и игр на другом диске или создать точки соединения для них, если хотите.
Я бы не стал полностью перемещать папки «Пользователи» или «Мои документы» - есть риск, что что-то пойдет не так, - одна из причин состоит в том, что ваша пользовательская точка соединения может не предоставлять все разрешения безопасности и права собственности, которые ожидают окна. Вместо этого выберите перемещение больших папок не по умолчанию (iTunes и т.д.)
Я рекомендую вам использовать утилиту, такую как TreeSize, чтобы перемещаться по папкам User и Program Files и находить то, что занимает больше всего места.
Наконец, я бы не стал перемещать или удалять что-либо в папках \Windows, поскольку некоторые низкоуровневые компоненты Windows, библиотеки и драйверы могут не получать удовольствие от точки соединения.
Как восстановить права на папку C:\Windows\WinSxS и сделать ее владельцем системный сервис TrustedInstaller
После завершения операций переноса WinSxS\Backup\ на другой диск имеет смысл вернуть прежние разрешения на папки и файлы.
Вернуть TrustedInstaller владение каталогом WinSxS можно следующей командой:
icacls C:\Windows\winsxs /setowner "NT Service\TrustedInstaller" /T /L /C
Для того, чтобы предоставить группе “Администраторы” права только на чтение и выполнение, нужно выполнить такую команду:
icacls C:\Windows\winsxs /T /L /grant:r Администраторы:(RX)
Если на первом шаге работы в командной строке ACL были сохранены, то вместо этой команды можно сделать восстановление разрешений из ранее созданного файла:
icacls C:\Windows /restore C:\Windows\aclwinsxs.txt /L /C
То же самое можно сделать и в Windows Explorer описанным выше путем в следующем порядке.
Сначала заходим в свойства папки WinSxS –> “Безопасность” –> “Дополнительно” –> “Владелец”. Последовательно нажимаем “Изменить” –> “Другие пользователи и группы”:
В поле выбираемых объектов вводим NT SERVICE\TrustedInstaller и нажимаем “OK”.
В окне “Дополнительные параметры безопасности” выделяем появившегося в списке TrustedInstaller ставим галочку в чекбокс “Заменить владельца подконтейнеров и объектов” и нажимаем “OK”. Дожидаемся завершения операции и закрываем все окна.
Переходим на вкладку “Разрешения”. Нажимаем “Изменить разрешения” –> “Изменить”:
Выставляем права как показано на рисунке. Нажимаем “ОК”.
Не забываем поставить галочку в чекбокс “Заменить все разрешения дочернего объекта …“, нажимаем “ОК”. Дожидаемся завершения операции. Если в процессе выполнения появятся ошибки, игнорируем их.
Теперь разрешения на папку WinSxS полностью соответствуют исходным.
Использование программного обеспечения производителей дисков
Не знаю, как обстоят дела с SSD дисками других производителей, но Intel для настройки своих дисков предлагает утилиту Intel SSD Toolbox. С ее помощью можно не только сделать большинство необходимых настроек, но и выполнить немедленно, или запрограммировать на регулярный запуск команду Trim. Зачем нужна команда Trim, мы разбирались в статье, посвященной AHCI.
Дополнительно Intel SSD Toolbox показывает информацию о диске, информацию SMART с расчетом остаточного ресурса, позволяет выполнить диагностику SSD накопителя и стирание с него всей информации.
Зачем переносить профили пользователей на другой диск
Необходимость переноса профилей с загрузочного раздела Windows на другой том может быть продиктована различными причинами. Например, желанием разместить саму операционную систему на быстром рейде с чередованием (RAID 0), а пользовательские данные переместить на отказоустойчивый массив (RAID 1, 5 и др.).
Однако, повышенный интерес к вопросам, связанным с перемещением пользовательских профилей в Windows в последнее время, главным образом обусловлен возросшей популярностью быстрых твердотельных накопителей.
Как уже неоднократно отмечалось ранее, сильно выигрывая в скорости, пока SSD значительно уступают своим механическим собратьям по емкости и цене. Размещение системных файлов Windows 7 – Windows 8.1 и пользовательских данных на одном небольшом SSD делает в перспективе работу на таком компьютере некомфортной и заставляет искать варианты решения проблемы нехватки дискового пространства.
Процесс переноса профилей пользователей с SSD на HDD в Windows 7 достаточно подробно был рассмотрен в предыдущих публикациях блога в цикле статей под общим названием “Перенос Windows 7 на твердотельный диск небольшого объема”.
Во второй части описывалась не очень удачная попытка использовать этих целей стандартное “Средство переноса данных Windows”.
В третье части, которая стала весьма популярной у читателей, описан вариант как раз весьма удачного переноса пользовательских профилей с использованием символьных ссылок.
Сегодня, по прошествии нескольких месяцев активной эксплуатации такой системы, можно с уверенностью сказать, что Windows 7 в двухдисковой конфигурации (SSD + HDD) чувствует себя отлично. Все работает быстро и ни одной проблемы из-за переноса рабочих профилей на второй диск не проявилось.
Некоторые общие соображения по поводу переноса профилей пользователей
Перед тем как приступить непосредственно к описанию нового варианта конфигурации двухдисковой системы, хотелось бы сказать несколько слов о переносе каталогов пользователей в принципе.
В интернет можно найти описание нескольких вариантов переноса профилей:
- Перенос папки профилей Users (Пользователи) целиком на новое место непосредственно в процессе установки операционной системы;
- Перенос профилей пользователей с помощью стандартной программы “Средство переноса данных Windows”;
- Перемещение каталогов пользовательских профилей с использованием символьных ссылок.
Я придерживаюсь мнения, что переносить весь каталог Users в другое место категорически не стоит. Возможно, что как раз после такого переноса возникают обещанные неприятности в Windows 8.
Более того, обязательно нужно сделать учетную запись нового пользователя с правами администратора, профиль которого останется на загрузочном диске C:\.
По поводу программы “Средство переноса данных Windows” добавить пока больше нечего – ей была посвящена отдельная публикация. Как уже упоминалось выше, в целом результат оказался скорее отрицательным.
Кстати, в Windows 8.1 эта программа пока отказалась работать вовсе – при выборе варианта сохранения данных она просто молча закрывается. Видимо в Microsoft считают, что время переноса данных из Windows 8.1 еще не пришло .
Так что будем придерживаться технологии переноса на другой диск рабочих пользовательских каталогов с использованием символьных ссылок. Как показала практика, она оказалась весьма жизнеспособной.
Размер, занимаемый Windows 7 на SSD-диске
Посмотрим на окончательное размещение системных каталогов на двух жестких дисках >
Благодаря переносу части «второстепенных» папок на механический диск, удалось дополнительно уменьшить примерно на 30% занимаемый системой объем на SSD-диске. Файл подкачки (Pagefile.sys), естественно, второстепенным можно назвать с очень большой натяжкой, но, как я уже говорил, если на его счет есть сомнения, то теперь для него хватит места и на твердотельном накопителе.
Настройка Windows 7 для работы с SSD
В заключение перечислю основные настройки Windows 7 для правильной работы SSD накопителя.
Сжатие папки WinSxS
Как я и обещал в самом начале, мы, наконец, добрались до печально известной системной папки C:\Windows\winsxs. Традиционно эта папка доставляет много огорчений пользователям Windows из-за своего сильно увеличивающегося в процессе эксплуатации компьютера размера. Учитывая то обстоятельство, что описание способа безопасного уменьшения объема папки WinSxS может быть интересным не только тем, кто собрался переносить систему на твердотельный диск, я вынес его в отдельный пост.
Причины побудившие вновь обратиться к теме переноса пользовательских профилей
К настоящему моменту времени появилось несколько новых соображений, которыми хотелось бы поделится:
Усложненный процесс создания резервных копий перемещенных папок
При всем том положительном, что было сказано по поводу двухдисковой конфигурации Windows 7, в процессе реальной работы возникло одно существенное неудобств. Оно связано с созданием бекапов.
Многие делают резервные копии системных разделов с помощью загрузочных флешек с Clonezilla Live или Acronis. Такой способ не занимает много времени и гарантирует быстрое восстановление системы в случае аварийной ситуации.
И вот тут возникает проблема – что делать с папками перемещенных пользовательских профилей? К ним добавляются еще системные каталоги, дополнительно перенесенные на SSD для экономии места (Installer, MSOCache, Search).
Делать бекап всего диска, на котором размещены данные каталоги – это совершенно не вариант. Во-первых на диске лежит много такого, причем, преимущественно, что бекапить не нужно. Во-вторых, где взять столько места на целевом носителе?
В Acronis декларирована возможность создания резервных копий отдельных файлов и папок. Однако, воспользоваться этой возможностью для создания бекапа перенесенных пользовательских профилей вряд ли получится, так как справляется Acronis с такой задачей явно не лучшим образом. Даже если программа сумеет выполнить задание до конца и не завершится аварийно, то общее время работы превысит все разумные пределы.
Остается лишь “ручками” копировать перенесенные профили и системные папки. Их объем может составить несколько десятков гигабайт. Соответственно, такое пофайловое копирование занимает достаточно много времени.
Можно попробовать сократить время создания повторных резервных копий с помощью команды robocopy. Ее нужно запускать с повышенными привилегиями (от имени администратора):
robocopy X:\Users\ Y:\Backup\Users\ /COPYALL /MIR /XJ X:\Users\ – диск и папка с перенесенными профилями пользователей компьютера;
Y:\Backup\Users\ – целевой диск и папка на нем в которой будут записаны копии пользовательских профилей.
/MIR – ключ, благодаря которому осуществляется синхронизация исходной и конечной папок.
В процессе выполнения команды в конечную (целевую) папку будут не только добавлены новые и измененные файлы, но из нее также будут удалены файлы уже несуществующие в исходной папке.
Дополнительно, для экономии места на целевом носителе, можно заранее создать пустые конечные папки и задать им атрибут “Сжимать содержимое для экономии места на диске” в “Свойства” / “Дополнительно”:
В моем случае включение сжатия конечных папок позволило уменьшить размер бекапа на 13% (52 вместо 60 ГБ). Как включение сжатия повлияло на среднюю скорость записи и общее время операции сказать, к сожалению, не могу. Думаю, что в данном случае это не очень важно.
Процесс резервного копирования нужно выполнять в сеансе “неперенесенного” пользователя. В противном случае большое количество файлов текущего профиля окажется заблокированными и их скопировать не получится.
Если помимо профилей были перенесены некоторые системные каталоги, например, Installer, MSOCache, Search, то их резервную копию можно так же сделать с помощью robocopy:
robocopy X:\SystemFoldersC\ Y:\Backup\SystemFoldersC\ /COPYALL /MIR /XJ
Для того, чтобы иметь возможность сделать резервную копию содержимого папки Search, до начала копирования нужно остановить службу поиска WSearch.
Это можно сделать в Диспетчере задач, открытом с повышенными привилегиями — команда taskngr в командной строке, запущенной от имени администратора:
Или, что значительно проще, в командной строке с правами администратора выполнить команду:
net stop wsearch
После создания бекапа компьютер нужно перезагрузить или включить службу поиска командой:
net start wsearch
В конечном итоге можно создать командный файл, который будет содержать все перечисленные команды. Это позволит сильно упростить задачу резервного копирования.
Вместе с тем необходимо отметить, что robocopy работает с содержимым профиля пользователя довольно странно. Это проявляется в некорректной обработке ссылок, таких как “Application Data”, “Local Settings” и др. При первом копировании с использованием указанной выше команды они попросту не появляются в целевых папках.
Для решения этой проблемы можно порекомендовать использование файлового менеджера FAR. В отличии от команды robocopy он отлично справляется с задачей копирования содержимого профиля.
Наверное можно разработать некий план совместного использования FAR и robocopy. Например, вначале выполнять консольные команды, а затем “докопировать” с помощью файлового менеджера FAR в варианте “Только новые / обновленные файлы”.
Одним словом, вопросы с резервным копирование профилей есть. К ним добавляется еще и такой – что делать с таким бекапом в случае неполадок со вторым диском? Если, предположим, Windows не запустится без перенесенных папок, то не очень очевидно как их развернуть назад. Решение, конечно, найдется, но не факт, что оно окажется тривиальным.
А вообще, создание бекапов и резервных копий данных совершенно не гарантирует возможность быстрого восстановления работоспособности системы после аварии если до этого ни разу не была проверена сама возможность такого восстановления и нет четкого плана. Например, бекап был сделан Acronis-ом непосредственно из среды Windows, а загрузочный Live-CD отсутствует. В конечном счете Вы его как-то сделаете с помощью другого компьютера, но совершенно не факт, что этот экземпляр увидит свой собственный образ на вашем носителе. Таких примеров можно привести много.
Подводим итог сказанному. Хотелось бы иметь возможность делать бекап перемещенных папок так же, как и системного диска. Этим мы сегодня и займемся.
Перенос папки C:\Windows\WinSxS\Backup на другой диск
Пользователи часто задают вопрос о том, можно ли перенести папку WinSxS на другой диск. Ответ такой – всю папку перенести нельзя. Виной тому все те же жесткие символьные ссылки, которые могут существовать только в пределах одного дискового раздела.
Можно попробовать перенести подпапку Backup из WinSxS, так как она жестких символьных ссылок внутри себя не содержит, а только уникальные файлы. Убедиться в этом можно, например, с помощью файлового менеджера FAR, просмотрев содержимое подпапки в 9-м режиме одной из панелей программы.
Естественно, заниматься этим стоит только в том случае, когда размер подпапки Backup заслуживает внимания в принципе.
На моей рабочей машине с Windows 7 x64 файлы в WinSxS\Backup занимают около 0,6 ГБ. В Windows 8 примерно столько же. Если у вас эта папка имеет аналогичный объем, то, скорее всего, овчинка выделки не стоит. Кроме того, после ntfs-сжатия WinSxS размер этой папки уменьшится до ~0,4 ГБ.
Как выяснилось, после переноса Backup из WinSxS на другой диск отказались устанавливаться некоторые обновления, например KB2849470, KB2862966 и другие. Бороться с этой неприятностью получается пока только временным возвратом папки Backup на исходное место.
Таким образом, на сегодняшний момент времени переносить Backup я не рекомендую и предлагаю сразу перейти к ntfs-сжатию.
Оставлю описание алгоритма переноса для энтузиастов, возможно, кто-то сумеет разобраться в чем тут дело.
До начала переноса WinSxS\Backup нужно установить все текущие системные обновления, так как в противном случае некоторые файлы в WinSxS\Backup окажутся заблокированными. Возможно даже имеет смысл обновления временно отключить.
Выбираем раздел, на который будет переноситься подпапка и создаем корневой каталог.
У меня уже перенесено несколько системных папок на диск D:\. В их число входит Installer, MCOCache, Search. Сделано это было для того, чтобы освободить место на небольшом твердотельном накопителе SSD после установки на него системы Windows 7. Корневую папку для этих целей я назвал “SystemFoldersC”.
Скопируем папку C:\Windows\WinSxS\Backup в новое место с сохранением всех разрешений.
В командной строке для этого целесообразно воспользоваться командой:
xcopy C:\Windows\WinSxS\Backup X:\SystemFoldersC\WinSxS\Backup\ /E /H /O /X Здесь X:\SystemFoldersC\WinSxS\Backup – диск и название нового местоположения файлов из папки Backup.
Если пользоваться xcopy, то конечные папки можно заранее не создавать.
Интересно отметить, что команда “robocopy”, которую я наряду с “xcopy” рекомендовал использовать для переноса профилей пользователей на другой диск, в данном случае отказалась добавлять в разрешения конечной папки системного пользователя «TrustedInstaller», не смотря на указание ключа /COPYALL. Это неправильно и для нашего случая недопустимо.
Из графических утилит для этой цели можно использовать опять же файловый менеджер FAR:
Вместо вложенных каталогов в новом местоположении можно сделать одну папку с названием, например, WinSxSBackup, как показано на рисунке. “Говорящее” имя нужно для того, чтобы в дальнейшем (когда через пару недель забудете что и зачем делали ) вспомнить о ее назначении. Впрочем, это дело вкуса и предпочтений.
После завершения копирования удаляем подпапку Backup из C:\Windows\WinSxS и создаем на ее месте символьную ссылку:
mklink /D C:\Windows\WinSxS\Backup\ X:\SystemFoldersC\WinSxS\Backup\
Символьные ссылки очень удобно делать в FAR по Alt+F6. Если название конечной папки было изменено, то сразу после создания ссылки ее нужно переименовать в “Backup”.
Оптимизация размещения системных папок Windows 7 на SSD
Выравнивание разделов на SSD диске
По-хорошему, об этом надо было бы говорить когда мы занимались переносом системы с механического жесткого диска на SSD. Я как-то упустил этот момент.
В двух словах о проблеме. Смысл заключается в том, чтобы не допустить смещения страниц логической разметки диска, которую делает файловая система, относительно страниц и блоков физической структуры SSD накопителя.
Традиционно на механических дисках первые 63 сектора первого трека используются для размещения служебной и системной информации, такой как параметры диска, MBR и др. Раздел начинается с 64-го сектора. Если использовать такую разметку, то раздел начнется с середины 4-килобайтной страницы SSD. В этом случае на каждой границе страниц SSD будет добавляться лишняя операция ввода/вывода. Это не может не сказаться негативно на скорости дисковых операций и на долговечности SSD накопителя.
Windows 7 отлично разбирается в этой теме и по умолчанию создает раздел на SSD со смещением относительно начала диска равным 1024 KB (1 048 576 Байт). Такое значение является оптимальным и решает все проблемы.
Таким образом, если создавать разделы на SSD диске в Windows 7, то они окажутся выровненными автоматически. Acronis также, начиная с версии 2011, создает разделы с правильным начальным смещением. В пользу этого говорит то обстоятельство, что Intel дает эту программу вместе со своими SSD.
Проверить правильность разметки разделов можно запустив MSInfo32 («Сведения о системе»). Открываем «Запоминающие устройства» -> «Диски». Далее в параметрах SSD диска находим «Начальное смещение раздела». Если оно равно 1 048 576 Байт, то все в порядке.
Можно предложить еще воспользоваться для этой цели бесплатной тестовой утилитой As SSD Benchmark >
Кроме того в Интернет есть онлайн калькулятор выравнивания SSD.
Проверить наличие и удалить файлы отката установки сервисных пакетов
Для начала обратите внимание на размер подпапки Backup в папке C:\Windows\winsxs. Если она занимает заметно больше 0,5 ГБ, то это могут быть файлы, предназначенные для отката установки сервисных пакетов.
Эти файлы появляются в том случае, когда исходная операционная система была обновлена установкой сервисного пакета. Например, SP1 в Windows 7. Удалить эти файлы можно с помощью команды DISM.
DISM перечисляет, устанавливает, удаляет, настраивает и обновляет компоненты и пакеты в образах Windows.
Для этого в командной строке, запущенной от имени администратора, нужно выполнить следующую команду:
dism /online /Cleanup-Image /spsuperseded /hidesp
/online – задает работающую операционную систему как назначение;
/Cleanup-Image — выполняет операции очистки и восстановления;
/spsuperseded /hidesp — удаляет архивные файлы, созданные в ходе установки пакета обновления и скрывает пакет обновления в списке установленных обновлений.
Стало быть, уменьшить размер папки WinSxS и высвободить таким образом место на диске в моем случае не получится – удалять просто нечего. В противном случае можно было бы высвободить несколько гигабайт.
Обязательно читаем об изменениях в обслуживании папки WinSxS в Windows 7 после обновления KB2852386 от 8 октября 2013 года.
До того, как перейти к каким бы то ни было действиям с папкой WinSxS, нужно получить на это права.
Как получить права на папку C:\Windows\WinSxS
Учитывая важность содержимого WinSxS для операционной системы, изначально полный доступ к ней имеет только пользователь TrustedInstaller. Группа «Администраторы» обладает правами исключительно на чтение и выполнение.
Начать надо все же с бекапа системы – мало ли что, вдруг что-то у вас пойдет не так.
Предоставить группе «Администраторы» необходимые для дальнейших манипуляций права можно в командной строке, или с помощью графических утилит Windows. Рассмотрим по очереди оба варианта.
В командной строке с правами администратора нужно последовательно выполнить следующие команды:
Первая сохранит разрешения (ACL) для всех файлов в каталоге C:\Windows\WinSxS и его подкаталогов в ACL-файл:
icacls C:\Windows\winsxs /save C:\Windows\aclwinsxs.txt /T — “C:\Windows\aclwinsxs.txt” – файл, в котором будут записаны ACL. Вы можете выбрать другой путь и название этого файла. В принципе, эту операцию можно и не делать, но хуже не будет.
Вторая принудительно назначит группу «Администраторы» владельцем каталога WinSxS и всех вложенных папок и файлов:
takeown /A /R /F C:\Windows\winsxs
Третья добавит администраторам права на полный доступ ко всем папкам и файлам в этой папке:
icacls C:\Windows\winsxs /T /grant Администраторы:(F)
Так как файлов очень много, выполнение команд займет определенное время. После завершения изменений все пользователи из группы “Администраторы” смогут добавлять, удалять и перемещать файлы в папке WinSxS.
Такой же результата можно получить в Windows Explrer. Для этого его нужно сначала запустить с повышенными привилегиями. В командной строке, запущенной от имени администратора (выбрать в контекстном меню по клику правой кнопкой мыши) нужно набрать “explorer” и нажать “Enter”. Все дальнейшие действия выполняем в открывшемся окне.
Заходим в папку Windows, находим каталог WinSxS и открываем его свойства правой кнопкой мыши. Далее “Безопасность” –> “Дополнительно” –> “Владелец”:
Как и в случае командной строки ждем завершения операции.
Теперь можно назначить группе “Администраторы” полные права на нужную нам папку. Закрываем окно с оповещением о смене владельца и переходим на вкладку “Разрешения” –> “Изменить разрешения”:
Выбираем группу “Администраторы”, отмечаем чекбокс “Заменить все разрешения …”, нажимаем “Изменить”. В открывшемся окне разрешаем полный доступ для группы “Администраторы”:
Нажимаем “ОК” и возвращаемся на предыдущий экран. Проверяем правильность сделанных изменений и нажимаем “Применить” или “ОК”. Соглашаемся с двумя предупреждениями системы, ждем завершения операции.
Теперь мы можем делать с содержимым папки WinSxS все, что захочется, главное не сделать того, что сильно не понравится Windows. Например, можно заняться переносом WinSxS\Backup на другой диск.
Назначение и особенности папки WinSxS в Windows
- Папка WinSxS впервые появилась в Windows Vista. В ней содержится вся информация о конфигурации системы и ее компонентах.
По этой причине она имеет очень большое значение для правильной работы операционной системы. Чем больше программ и обновлений установлено, тем, в общем случае, будет больше объем содержимого WinSxS.
Несистемное удаление файлов из папки WinSxS, как и замена ссылок, которой занимается WinSxSLite, с очень большой вероятностью приведут к нарушению работы Windows. В некоторых случаях такого рода вмешательство будет для системы фатальным.
- Главной особенностью папки WinSxS является присутствие в ней большого числа жестких символьных ссылок (hard links).
Мы уже говорили в прошлый раз о жестких символьных ссылках. Они представляют собой своеобразное раздвоения, растроение и т.д. одного объекта, так как физически, в смысле места, занимаемого на диске, файл один, а совершенно идентичных полноправных ссылок на него в разных местах каталога файловой системы может быть несколько.
Именно поэтому все файловые менеджеры, начиная с Windows Explorer, показывают неправильный, сильно завышенный из-за повторного подсчета занимаемого файлами – жесткими ссылками места, размер папки WinSxS. Иными словами, не верь глазам своим.
По примерным оценкам, которые были сделаны в прошлый раз, жесткие символьные ссылки добавляют к объему этой папки около 40%. Очевидно, что эта цифра может быть различной на разных компьютерах, но суть при этом не меняется. По поводу подпапки “Backup”, расположенной внутри папки WinSxS, чуть ниже.
Таким образом, если Windows Explorer или FAR говорят, что объем папки WinSxS составляет, например, 10 ГБ, то на самом деле уникальных файлов (с которыми теоретически можно попытаться что-то сделать) в этой папке будет только около 6 ГБ. Все остальные – это файлы, разбросанные по другим системным папкам, таким, как Windows, Program Files, , Program Files (x86), ProgramData и так далее.
Это значит, что если даже совсем удалить из WinSxS файлы, представляющие собой ссылки на объекты системных папок, то в смысле места, занимаемого операционной системой Windows на жестком диске, ровным счетом ничего не изменится.
- Системные инженеры Microsoft предприняли адекватные меры для того, чтобы прекратить бесконтрольный рост объема папки WinSxS.
В последних версиях Windows папка WinSxS растет уже совсем не так интенсивно, как когда-то в Windows Vista.
В частности, внутри этой папки есть подпапка Backup. В ней хранится информация для восстановления (откатов) системы. В последних версиях Windows появился механизм обслуживания этой подпапки, который ее периодически очищает.
Для информации: в только что установленной в VirtualBox 64-разрядной Windows 8.1 Preview после первого обновления папка WinSxS заняла 5,44 ГБ, подпапка Backup – 209 МБ. Это значительно меньше, чем в других версиях Windows. Возможно потому, что Preview, а может быть действительно что-то изменилось.
Если кто рискнет, не сочтите потом за труд сообщить о результатах. Моя попытка применения WinSxSLite оказался на 100% отрицательной с последующим восстановлением системы из бекапа.
Перемещаем индексную базу поиска на второй диск
Для ускорения поиска файлов и данных, например, в Outlook, Windows строит индекс. Вы часто что-то ищете на компьютере? Я изредка. Да и поиск по индексным файлам базы данных обычно осуществляется очень быстро. Смело можно переносить индексную базу на второй диск. По умолчанию индекс расположен в C:\ProgramData\Microsoft\Search
Предварительно сделаем на диске X: (X: — буква механического диска) папку с произвольным названием, но так, чтобы впоследствии было понятно ее назначение. Например, X:\SystemFoldersC. В нее мы все и перенесем.
Запускаем «Панель управления» > «Параметры индексирования» > «Дополнительно» >
Нажимаем «Выбрать новое» и находим в открывшемся окне поиска только что сделанную папку X:\SystemFoldersC.
1. Создание раздела на диске для перемещенных профилей пользователей
Раздел, на который планируется перенести профили пользователей, целесообразно расположить в начале диска. С одной стороны это позволит несколько увеличить скорость работы с данными, размещенными в папках профиля, с другой, обеспечит, в случае необходимости, возможность простого изменения размера тома непосредственно в среде Windows.
Как быть тем, кто уже перенес профили и системные папки на большой раздел HDD? Проще всего временно переместить с этого диска все “лишние” данные на другой накопитель и уменьшить размер тома до необходимого значения.
Как сделать сжатие тома подробно описывалось в разделе “Перенос системных разделов на твердотельный накопитель SSD в Clonezilla live” этой статьи.
Далее, на незанятой части диска нужно создать новый раздел и вернуть на него временно убранные данные.
Перенос каталога Installer
Если программ у вас установлено много, то скрытая системная папка C:\Windows\Installer, скорее всего, имеет весьма солидный размер. У меня она занимает около 8 ГБ. Судя по названию, файлы из этой папки используются нечасто, а некоторые, возможно, не будут востребованы уже никогда. Переносим смело.
Используем для этой цели тот же инструментарий, что и для копирования каталогов пользователей: xcopy, robocopy или FAR. Например,
robocopy C:\Windows\Installer\ X:\SystemFoldersC\Installer\ /E /COPYALL /XJ
После завершения копирования удаляем папку Installer с SSD-диска C: и создаем на ее месте символьную ссылку. Например,
mklink /D C:\Windows\Installer\ X:\SystemFoldersC\Installer\
Что реально можно сделать для уменьшения объема папки WinSxS
NTFS-сжатие уникальных файлов в папке C:\Windows\WinSxS
NTFS-сжатие уникальных файлов является весьма эффективным и совершенно безопасным способом уменьшения размера, занимаемого на диске файлами папки WinSxS. По эффективности высвобождения места на жестком диске этот способ точно не уступает WinSxSLite.
Алгоритм сжатия уникальных файлов в папке WinSxS подробно описывался в предыдущей статье.
Сегодня я хочу предложить вам маленький подарок, а именно, готовый командный файл “winsxscompact.cmd”, который выполнит все необходимые операции.
Для того, чтобы скачать скрипт нужно просто подписаться на обновления блога по E-Mail. Ссылка на скачивание будет в почтовом подтверждении подписки.
Командный файл “winsxscompact.cmd” написан для русских версий Windows 7 / 8 /8.1 (В Windows Vista не тестировался, но должен работать).
Наберитесь терпения – на выполнение необходимых операций потребуется заметное время. Дождитесь появления в окне “FINISH — работа командного файла успешно завершена…».
В процессе тестирования скрипта выигрыш места на диске C:\ после сжатия уникальных файлов в WinSxS составил от 1,4 ГБ в только что установленной в VirtualBox системе Windows 8 х64 до 2,3 ГБ на рабочем компьютере с Windows 7 x64. Это больше, чем после WinSxSLite, а главное, совершенно безопасно. Если по какой-то причине полученный результат не удовлетворяет, можно легко вернуть все в исходное состояние.
После завершения сжатия файлов в папке WinSxS сделайте дефрагментацию диска С:.
Надеюсь, что никаких проблем с использованием командного файла не возникнет. Будут вопросы – задавайте. Обязательно сообщите о полученном результате.
У меня есть жесткий диск на 50 Гб с установленной на нем Windows 7. Я сделал это для производительности для моей установки Windows и связанных приложений (Visual Studio и т.д.). В папке проектов я также храню файлы своих решений.
У меня также есть обычный жесткий диск объемом 2 ТБ для хранения и резервного копирования.
Тем не менее, я столкнулся с большим использованием диска. Я решил переместить части моей установки Windows на диск 2TB. Это данные, которые, я думаю, используются редко.
Однако Windows не поддерживает изменение пути к некоторым общим папкам. Поэтому я использовал следующие методы для перемещения редко используемых данных на диск хранения:
- C:\Installer Символическая ссылка на E:\Windows\Installer : перенесено на 10 ГБ
- C:\pagefile.sys настроен для хранения на E:\ disk: перенес 6GB
- C:\MSOCache\ Символическая ссылка на E:\MSOCache : перемещено на 2 ГБ
Кто-нибудь знает еще какие-то части установки Windows, которые редко используются, но не могут быть удалены, которые можно безопасно переместить на другой диск (возможно, с помощью символических ссылок)?
Кто-нибудь знает о каких-либо рисках, которые я принимаю, перенося эти данные на другой диск?
Обратите внимание, что я уже переместил свой файл подкачки и отключил файл гибернации.
Возможно связано, но без ответа:
Включение режима AHCI контроллера жестких дисков
Этой теме была посвящена отдельная статья. В ней рассматривались вопросы, почему режим работы контроллеров жестких дисков Advanced Host Controller Interface (AHCI) так важен для правильной работы SSD накопителей и как его включить в Windows 7.
Тестирование Windows 8.1 с перемещенным профилем пользователя
Тестирование проводилось в виртуальной машине Windows 8.1 х64 в системе Oracle VirtualBox. Гостевой машине было выделено 2,5 ГБ оперативной и 256 МБ видео памяти.
Первый вход в сеанс пользователя “User-3” после переноса профиля прошел совершенно гладко. То есть он ничем не отличался от входа в сеанс до переноса:
Перед перемещением профиля пользователя на рабочем столе и в папке “Документы” было создано несколько файлов. Думаю излишне говорить, что после переноса все эти файлы остались на месте.
Первым делом запускаем “Магазин” с работоспособностью которого были обещаны некие проблемы:
“Магазин” исправно запустился и на первый взгляд успешно работает – можно свободно перемещаться и выбирать приложения.
Запускаем еще несколько “плиточных” приложений:
Никаких проблем с запуском программ не проявилось. Как и с переключениями между ними.
Короткое тестирование работы Windows 8.1 на виртуальной машине в сеансе пользователя с перемещенным на второй диск профилем, конечно, нельзя считать исчерпывающим и полноценным, однако, определенное представление о работоспособности двухдисковой конфигурации Windows 8.1 оно дает. Надеюсь, что через некоторое время получится сделать это на рабочем компьютере.
Надеюсь, что вы поделитесь по этому поводу как своими соображениями, так и результатами работы в двухдисковых конфигурациях Windows.
Перенос Windows 7 на твердотельный диск небольшого объема. Часть 4. Оптимизация размещения системных папок, настройка SSD
Все получилось, и двухдисковая конфигурация себя полностью оправдала. Удалось, во-первых, полноценно задействовать SSD-диск, во-вторых, без ущерба для скорости работы системы сохранить оперативный простор в смысле места для пользовательских данных. Как я уже говорил, опасения по поводу того, не скажется ли негативно перенос профилей пользователей Windows 7 с твердотельного накопителя на обычный механический диск, не подтвердились.
Теперь сделаем дополнительно оптимизацию размещения системных папок Windows 7 и уберем несколько редко используемых гигабайт данных с SSD-диска.
2. Подключение тома в качестве NTFS-папки
На диске C:\ любым привычным способом создаем пустую папку. Назовем ее, например, “Disk2”. Подключить к ней новый том можно непосредственно на стадии его создания:
Если том для размещения перемещаемых пользовательских профилей и, возможно, некоторых системных папок, на втором диске уже существует, то в Windows 8.1 нажимаем Win + X (или “Управление компьютером” –> “Управление дисками”). Выделяем нужный дисковый раздел и через контекстное меню по правой кнопке мыши или через пункт меню “Действие” –> “Все задачи” открываем “Изменить букву диска или путь к диску” –> “Добавить”:
После подключения тома как NTFS-папки букву диска можно удалить. Делать это надо только после того, как на диске не останется связанных с буквой диска ресурсов. К таковым можно отнести, например, файл подкачки, или папку Search. После завершения подключения папки она примет в проводнике вид ссылки. По сути дела это и есть символьная ссылка целиком на весь том:
Перенос каталога MSOCache
Этот пункт актуален для тех, у кого установлен Microsoft Office. Папка эта на диске C: нам точно не нужна. Переносим аналогично предыдущему пункту:
robocopy C:\MSOCache\ X:\SystemFoldersC\MSOCache\ /E /COPYALL /XJ
Удаляем C:\MSOCache и создаем соответствующую символьную ссылку на C:
mklink /D C:\MSOCache\ X:\SystemFoldersC\MSOCache\
Думаю, что на этом надо остановиться. В принципе, процесс перемещения папок на второй (механический) диск при необходимости можно продолжить. Переместить можно все, что угодно, но тут, главное, не забыть, зачем вообще в систему устанавливался твердотельный накопитель .
Релиз Windows 8.1
Следующая причина, побудившая вновь обратить взор на перенос пользовательских профилей, это недавний релиз Windows 8.1. Судя по возросшей популярности публикаций посвященных этой новейшей операционной системе, многие пользователи задумываются о ее установке.
Я так же не являюсь исключением. Если Windows 8 я не планировал устанавливать на рабочий компьютер и посматривал на него как бы “со стороны”, то в отношении Windows 8.1 очень даже может быть.
Покупать одновременно с новой операционной системой и новый SSD большей емкости не хотелось бы. Следовательно надо убедиться, что Windows 8.1, как и Windows 7, будет исправно работать в двухдисковой конфигурации.
Некоторые источники утверждают, что в Windows 8 после переноса профилей начнутся проблемы с магазином Windows и другими “плиточными” приложениями. Проверим, так ли это на самом деле.
Будем решать обе задачи одновременно. То есть создадим несколько видоизмененную конфигурацию перенесенных на второй диск папок и пользовательских профилей сразу в Windows 8.1.
Итоги оптимизации системных папок
Отключение дефрагментации SSD накопителя
В отличие от Windows XP, Windows 7 хорошо умеет работать с SSD накопителями. Она понимает, что накопитель твердотельный и сама отключает ряд ненужных, или даже вредных, функции. К таковым относится, например, дефрагментация SSD диска, которая, в силу особенностей накопителя, скорости дисковым операциям не прибавляет, а вот срок его службы снижает.
Убедиться в том, что SSD не дефрагментируется по расписанию можно запустив dfrgui. В открывшемся окне «Дефрагментация диска» нажимаем «Настроить расписание» > «Выбрать диски».
Убеждаемся, что SSD накопитель в списке не фигурирует.
Как оказалось, в Windows 8 наблюдается баг, благодаря которому система все же выполняет дефрагментацию SSD накопителя. Это не правильно и будем надеяться, что в ближайшее время Microsoft исправит ошибку.
Скорость работы системы Windows 7 на твердотельном накопителе
Если сравнить скорость работы компьютера с Windows 7 на твердотельном накопителе с той, которую он имел с системой, установленной на обычный механический диск, то коротко описать результаты такого сравнения можно так — это два разных компьютера. Время загрузки системы сократилось с, примерно, полутора минут до 18 секунд.
Больше всего впечатляет то, что после входа в пользовательский сеанс больше не надо ничего ждать, и можно сразу начинать работать. Раньше это был долгий и, можно даже сказать, мучительный процесс постепенного появления значков запускаемых при старте программ в трее, гаджетов на рабочем столе и так далее, который сопровождался непрерывным и долгим обращением к жесткому диску. Теперь ничего похожего нет.
Больше всего я опасался, что нечто подобное произойдет из-за переноса профилей пользователей на обычный механический диск. Но, как я уже говорил раньше, общей радостной картины такое вынужденное решение не испортило. Даже наоборот.
Что касается запуска пользовательских программ, то я охарактеризовал бы его одним словом – мгновенный. Преувеличиваю, конечно. Разумеется, какое то время реально он занимает, но по ощущениям именно так.
Желаю всем скорейшего приобретения и установки в компьютер твердотельного SSD накопителя. И ничего страшного, если он будет маленьким.
Назначение и свойства папки WinSxS в Windows, способы очистки и сжатия, перенос подпапки Backup
К сожалению, на поверку причиной этого оказалась не только популярность самой темы, но и то, что народ упорно ищет ресурс, с которого можно скачать скрипт WinSxSLite 1.88, о котором я неосторожно упомянул в той публикации.
Попробую отговорить ищущих WinSxSLite от использования этого не беспроблемного командного файла и, в дополнение к рассмотренному в прошлой публикации способу уменьшения размера папки WinSxS, предложить еще один вариант плюс готовый скрипт “winsxscompact”, выполняющий все необходимые операции.
Во-первых, не ищите версию 1.88 – ее нет и, скорее всего, уже никогда не будет, так как проект некоторое время назад прекратил свое развитие.
Во-вторых, этот командный файл, безответственно рекламируемый как чудодейственное средство борьбы с размером WinSxS, скорее всего, не принесет желаемого результата. Даже если посчастливится довести его четырехпроходную работу до конца, то выигрыш свободного места на диске в результате окажется весьма небольшим.
А вот проблемы на собственную пятую точку и сильную головную боль получить с WinSxSLite очень даже легко. Я уже не говорю о потраченном времени. Почитайте для начала отзывы тех, кто этим скриптом рискнул воспользоваться. Правда, боюсь, что не всем из них удалось написать отзывы с тех компьютеров, на которых они его применили.
Давайте еще раз коротко пробежимся по свойствам и особенностям папки WinSxS.
Читайте также: