вівторок, 3 вересня 2019 р.

Борьба за мегабайты. Очистка, часть 1

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

Очистка.

Небольшое замечание перед рассмотрением способов очистки: чаще всего проблема нехватки места на системном разделе возникает из-за неправильного разбиения жёсткого диска на разделы. Например, если для Windows XP достаточно было выделить 10-15 Гб на системный раздел, то для Windows 10 лучше всего зарезервировать 70-80 Гб.

1. Первое, с чего нужно начать, — просмотреть свои рабочие папки на системном диске (по умолчанию — С:). Чаще всего информация скапливается в папке "Загрузки". Стоит заглянуть также в "Документы", "Изображения", "Видео", "Музыку", просмотреть, что хранится на Рабочем столе. Некоторые программы создают папки в корне системного диска (например, Download Master (для загружаемых файлов), установщики драйверов, карантин некоторых антивирусных утилит). Стоит переместить их на другой диск или удалить. Также, при наличии дистрибутива, можно удалить временную папку установщика MS Office — C:\MSOcache (чтобы её увидеть, нужно включить отображение скрытых и системных файлов).

2. Удаляем ненужные программы — либо через стандартный апплет Панели управления, либо при помощи специализированных программ, наподобие Revo Uninstaller. Также стоит заменить раздутые программы "всё-в-одном" (например, Nero) на несколько более простых аналогов (можно подобрать на сайте alternativeto.net). А пакет Microsoft Office можно значительно облегчить, оставив только нужные компоненты (Word, Excel). Сделать это можно из того же апплета Панели управления, выбрав в списке установленных программ Microsoft Office и нажав кнопку "Изменить". Также после удаления ненужной программы имеет смысл вручную удалить её данные из папок %AppData% и %LocalAppData%.

3. Теперь можно приступать к очистке всевозможного программного "мусора". Программ для этого существует огромное количество и останавливаться на какой-то конкретной из них смысла нет, каждый подберёт себе по вкусу. Стоит, однако, заметить, что подавляющее большинство профессионалов негативно относятся к программам подобного рода, а особенно — к чистильщикам реестра (политика Microsoft по этому вопросу также довольно однозначна).
Вместо этого я немного подробнее остановлюсь на стандартной утилите Windows — "Очистка диска". В различных версиях Windows эта утилита располагается в разных местах главного меню, но есть несколько универсальных способ её запуска для любой версии системы:
  1. Через оснастку "Выполнить":
      • Нажмите комбинацию клавиш Win+R.
      • В появившемся окне введите команду cleanmgr.exe.
  2. При помощи Проводника:
      • Нажмите комбинацию клавиш Win+Е.
      • В появившемся окне найдите на панели слева системный диск (помечен специальным значком).
      • Щёлкните на нём правой кнопкой мыши и выберите пункт Свойства
      • В появившемся окне на вкладке Общие нажмите кнопку Очистка (или Очистка диска в Windows 7).
В появившемся окне выберите системный диск и нажмите ОК. После сканирования диска утилита предложит удалить ненужную более информацию. К тому же, в отличие от сторонних программ, она может корректно удалить папку Windows.old и старые драйвера, очистить папку WinSxS и выполнить сжатие неиспользуемых системных файлов (в Windows 8 и новее). В Windows 8 и более новых версиях очистка старых обновлений (т.е. папки WinSxS) доступна сразу же. Чтобы удалить старые обновления в Windows 7 SP1:
  1. установите обновление KB2852386 (лучше — через Windows Update);
  2. запустите от имени Администратора утилиту очистки диска;
  3. поставьте галочку напротив пункта "Очистка обновлений Windows" (если такого пункта нет, значит очищать нечего) и нажмите ОК.
    Количество удалённой информации при этом зависит от того, как давно была установлена система и как часто устанавливались обновления. После очистки нужно обязательно перезагрузиться!

    В Windows 10 кроме классической утилиты "Очистка диска" появились и свои собственные инструменты, отсутствующие в других версиях системы. В актуальной (на момент написания статьи) версии 1803 эти инструменты находятся по такому пути: Параметры → Система → Память устройства. Здесь, в разделе Контроль памяти, нужно перейти по ссылке Освободить место сейчас и выбрать  необходимые пункты. Кроме временных файлов, здесь присутствует и пункт Предыдущие установки Windows, активация которого даст наибольший эффект в плане освобождения места на диске. Но стоит иметь ввиду, что после этой операции будет невозможно откатиться на предыдущую версию Windows. Также можно позволить системе самой контролировать очистку диска, установив во включённое положение переключатель в секции Контроль памяти.

    4. Очистите карантин антивируса. В зависимости от многих факторов (уровень защиты системы, Интернет-активность пользователя, использование пиратских копий программ) в карантине антивирусной программы может скапливаться значительное количество данных. Как очистить карантин можно прочитать во внутренней справке установленной у вас программы или на сайте производителя.

    5. Настройте параметры защиты системы. По умолчанию под теневые копии резервируется от 3% до 5% (но не более 10 Гб) логического раздела. Настроить объём под свои нужды можно по адресу Панель управления → Система → Защита системы.  Совсем отключать эту полезную функцию (как и выделять слишком мало места) строго не рекомендуется, иначе восстановить работоспособность системы после сбоя будет значительно сложнее, если вообще возможно. В окне с настройками также можно удалить все старые точки восстановления.

    6. Отключите гибернацию. В принципе, гибернация  довольно полезная функция, так как позволяет не дожидаться загрузки ОС и фоновых программ, а практически сразу приступить к работе. Особенно это может пригодиться на ноутбуках, позволяя экономить заряд батареи. Однако, размер файла hiberfil.sys по умолчанию составляет 0.75 от объёма оперативной памяти. Поэтому, если вопрос экономии места на диске стоит острее экономии заряда батареи, то гибернацию можно отключить:
    1. Войдите в Windows с правами администратора.
    2. Откройте Панель управления  Электропитание  Настройка перехода в спящий режим.
    3. В раскрывающемся списке "Переводить компьютер в спящий режим" выберите "Никогда" и сохраните изменения.
    4. Нажмите сочетание клавиш Win+R.
    5. Введите команду powercfg -h off и нажмите ОК.
    7. Папка C:\Windows\Logs\CBS. Иногда при сбое службы обновления Windows в этой папке могут формироваться файлы журналов (*.log) размером до нескольких гигабайт. В обычной ситуации их удалять не следует, так как в них может содержаться полезная информация для диагностики системы в случае её сбоя. Если же файлы бесконтрольно растут, то поможет следующая процедура:
    1. Запустите оснастку управления службами: нажмите Win+R и введите services.msc.
    2. Отключите службу "Установщик модулей Windows" (тип запуска — "Отключена") и перезагрузитесь.
    3. Очистите папку C:\Windows\Logs\CBS.
    4. Установите службе "Установщик модулей Windows" тип запуска "Автоматически" и нажмите кнопку "Запустить".
    8. Папка C:\Windows\Installer. Это системная папка, где хранятся необходимые для удаления или обновления программ их инсталляторы, инсталляторы различных программных компонентов, патчи, файлы не установившихся системных обновлений и прочие данные, которые необходимы системе и установленным программам для определённых процессов. При активной установке/удалении программ размер этой папки может достигать нескольких десятков гигабайт. Тем не менее, Microsoft не рекомендует удалять её и содержащиеся в ней файлы, так как после этого будет невозможно корректно удалить или изменить установленные программы, также могут оказаться повреждены ярлыки программ и перестать корректно работать функция обновления системы. Следует заметить, что официально поддерживаемых методов очистки этой папки НЕТ. Но есть несколько сравнительно безопасных способов, которые я рассмотрю ниже. Итак:
    1. Если есть место на другом логическом диске, можно создать символическую ссылку. То есть, физически папка Installer будет располагаться на другом разделе или диске, но система и программы будут продолжать "думать", что папка находится в C:\Windows. Делается это так:
        • Скопируйте папку Installer на другой диск. Например, на D:\.
        • Удалите исходную папку.
        • Запустите командную строку с правами администратора.
        • В появившемся окне введите команду:
    mklink /j "c:\windows\installer" "d:\Installer"
      После всех выполненных действий в папке C:\Windows появится папка с именем Installer, но со стрелкой в углу, как у ярлыков.

    1. Можно использовать утилиту PatchCleaner. Программа предельно проста в использовании: после запуска она самостоятельно просканирует папку Installer и выдаст сведения о количестве и размере файлов, которые можно удалить (что не желательно) или переместить. Если вы решили переместить, а не удалить файлы, то после сканирования можно задать путь, по которому будут перемещены ненужные файлы. В случае неполадок во время удаления или изменения программ, можно будет переместить из этой папки файлы обратно в папку Installer.
      9. Папка C:\Windows\SoftwareDistribution. Сюда сохраняются загруженные обновления. Обычно эта папка не занимает много места, так как Windows периодически самостоятельно удаляет старые файлы, но в случае каких-либо системных проблем её размер может достигать нескольких гигабайт. В таком случае нужно будет её очистить:
      1. Запустите оснастку управления службами: нажмите Win+R и введите services.msc.
      2. Остановите службы "Службы криптографии", "Центр обновления Windows" и "Фоновая интеллектуальная служба передачи (BITS)".
      3. Переименуйте папку SoftwareDistribution (например, в SoftwareDistribution.old).
      4. Запустите ранее остановленные службы.
      5. Если создалась новая пустая папка SoftwareDistribution, то старую можно будет удалить.
      То же самое можно сделать и через командную строку:
      1. Запустите командную строку с правами администратора.
      2. Последовательно введите:
      3. net stop wuauserv
        net stop BITS
        net stop CryptSvc
        cd %systemroot%
        ren SoftwareDistribution SoftwareDistribution.old
        net start wuauserv
        net start bits
        net start CryptSvc
        rd /s /q SoftwareDistribution.old
      10. Папка C:\Windows\WinSxS. В п.3 был рассмотрен способ очистки этой папки при помощи стандартной системной утилиты "Очистка диска". Но, начиная с Windows 8, появились способы очистить папку WinSxS и через командную строку, используя утилиту dism. В командной строке, запущенной от имени администратора, нужно ввести:

      Dism.exe /Online /Cleanup-Image /StartComponentCleanup

      Действие этой команды полностью аналогично эффекту после применения утилиты "Очистка диска".

      Начиная с Windows 8.1 появилась возможность удалить не только промежуточные, но и исходные файлы, чьи новые версии были загружены системой обновления:

      Dism.exe /Online /Cleanup-Image /StartComponentCleanup /ResetBase

      ВНИМАНИЕ! После выполнения этой команды будет невозможно удалить никакие из существующих обновлений и пакетов обновления. Следующие обновления и пакеты обновления можно будет удалять.
      Также при помощи утилиты dism можно удалить резервные компоненты, необходимые для удаления пакета обновления (только для Windows 10):

      Dism.exe /online /Cleanup-Image /SPSuperseded
      ВНИМАНИЕ! После выполнения этой команды будет невозможно удалить пакет обновления.
      В серверных версиях Windows, начиная с Windows Server 2012, утилита "Очистка диска" (cleanmgr.exe) отсутствует. Можно установить её, добавив компонент "Возможности рабочего стола" (из группы "Пользовательские интерфейсы и инфраструктура"), но кроме этого добавится ещё множество не нужных на сервере утилит, поэтому использование консольных команд для очистки WinSxS на сервере является предпочтительным.

      Немає коментарів:

      Дописати коментар