Удаление старых версий драйверов из хранилища Windows

В Windows при установке или обновлении драйверов устройств, старые версии драйверов сохраняются в системе. Тем самым пользователю предоставляется возможность в любой момент вернуть старую версию драйвера, если  новый драйвер работает нестабильно (полезная возможность, как показал кейс с в которой пришлось окатить версию драйвера Wi-Fi).  Однако Windows автоматически не чистит и не удаляет старые версии драйверов, поэтому со временем, размер места, занимаемого драйверами на системном диске становится довольно большим. В этой статье мы поговорим о способах удаления старых версий драйверов (дубликатов) с помощью внутренних средств системы (без использования стороннего ПО).

 

Windows хранит все файлы в драйверов в своем репозитории драйверов (Driver Store), находящемся в каталоге %WINDIR%\System32\DriverStore\FileRepository.

В моем случае на домашнем ноутбуке с Windows 7 (дата установки системы почти 8 лет назад), каталог FileRepository  занимает на диске около 11 Гб и содержит >5000 файлов. Немало!  В частности в этом каталоге хранится более 20 различных версий видеодрайвера Nvidia.

Размер каталог DriverStore FileRepository в Windows

Содержание:
  • Поиск и удаление старых версий драйверов в Windows 7
  • Удаление старых драйверов в Windows 10/8 с помощью утилиты очистки диска

Важно!

  1. Ни в коем случае нельзя удалять файлы  драйверов из каталога DriverStore вручную.
  2. Перед очисткой драйверов настоятельно рекомендуется создать точку восстановления системы (Checkpoint-Computer -Description «BeforeDriversDelete») или резервную копию образа системы.
  3. После очистки хранилища, при подключении новых устройств возможно придется качать и устанавливать драйвера вручную.

Поиск и удаление старых версий драйверов в Windows 7

Рассмотрим способ поиска и удаления устаревших драйверов для Windows 7 (в Windows 8 и Windows 10 есть более простые методы удаления старых драйверов, о них написано ниже).

Получим список всех сторонних драйверов, имеющихся в системе, и выгрузим их в текстовый файл. Для этого в командной строке с правами администратора выполним команду:

dism /online /get-drivers /format:table > c:\tmp\drivers.txt

Выгрузка списка дрйверов в системе с помощью dism /online /get-drivers Полученный файл импортируем в Excel и удаляем все лишние данные так, чтобы осталась только таблица со списков драйверов репозитория в формате: номер драйвера в системе (oemXXX.inf), имя оригинального inf файла, класса устройства, производителя, даты установки и версии драйвера.

Полученную таблицу отсортируем по столбцу B (содержит имя оригинального inf файл) и столбцу F (дата установки драйвера). Среди групп одноименных драйверов помечаем для удаления все версии драйверов, кроме последней. В моем случае видно, что большинство старых версий драйверов принадлежит NVIDIA.

Для удаления драйвера можно использовать команду pnputil:

pnputil.exe -d oemxxx.inf

Примечание. В некоторых случаях удалить драйвер можно только с ключом –f: pnputil -f -d oemxxx.inf

Для удобства сформируем в пустом столбце команды для удаления каждого драйвера с помощью формулы =CONCATENATE("pnputil.exe -d ";A21)

списки драйверов с версиями в ExcelОсталось сформированные команды скопировать и выполнить в командной строке или bat файле.

pnputil.exe d oemxxx.inf - удаление драйвераТаким образом, я удалил из системы порядка 40 старых версий драйверов, освободив тем самым около 8 Гб места (в основном за счет видеодрайверов NVIDEA).

Удаление старых драйверов в Windows 10/8 с помощью утилиты очистки диска

В Windows 10 / 8.1 есть более удобный инструмент для удаления старых версий драйверов  — всем знакомая утилита очистки диска cleanmgr.exe, позволяющая в том числе очистить диск от уставших обновлений.

Примечание. В Windows 10 и Windows 8 Upd 1 и есть возможность экспортировать средствами PowerShell  все сторонние драйвера, имеющиеся в системе в отдельный каталог.

  1. Запустите утилиту «Очистка диска»: Win+R -> cleanmgr
  2. Выберите системный дискdisk cleanup: cleanmgr.exe
  3. Нажмите на кнопку Clean up system files Очистка системных файлов
  4. Отметьте в списке Device driver packages (Пакеты драйверов устройств)Удаление старых пакетов драйверов в Windows 10
    Примечание. На моем ПК размер хранимых копий драйверов равен 0. На реальных систем это значение скорее всего будет отличаться
  5. Нажмите ОК.

Утилита cleanmgr удалит все старые неиспользуемые версии драйверов. Однако при этом, нужно понимать, что в свойствах драйверов в диспетчере устройств кнопка «Откатить драйвер» станет неактивной.

(Пока оценок нет)
Подписаться
Уведомить о
guest
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x