Після перевстановлення або чистої установки Windows користувач стикається з необхідністю установки актуальних версій драйверів для пристроїв, встановлених в комп’ютері. Відразу після переустановлення системи користувачеві доводиться вручну качати драйвера з сайту виробника або використовувати різні драйвер-паки (в комплекті з якими як правило йде різне сміття і рекламне ПО). Однак є більш простий спосіб перевстановлення драйверів в Windows. Не всі знають, що перед перевстановлення Windows ви можете створити резервну копію всіх драйверів, встановлених в системі. Надалі за допомогою резервної копії ви зможете швидко встановити всі необхідні драйвера вже в чистій системі.

У цій статті ми покажемо вам основні способи створення бекапа (резервної копії) всіх драйверів, встановлених в Windows і способи відновлення драйверів з резервної копії без використання сторонніх інструментів.

Експорт драйверів за допомогою командлета Export-WindowsDriver

У Windows 8.1 Update 1 з’явився новий Powershell командлет Експорт-WindowsDriver, Що дозволяє експортувати всі встановлені в системі сторонні драйвера (маються на увазі не рідні драйвера Microsoft) безпосередньо зі сховища драйверів (Driver Store). У всіх версіях Windows 10 командлет Export-WindowsDriver вже є в системі. Даний командлет дозволять істотно полегшити і прискорити процес перевстановлення Windows, тому що раніше для створення резервної копії драйверів, встановлених в системі, доводилося використовувати стороннє ПО, наприклад, DoubleDriver, DriverMax тощо.

Отже, щоб в Windows 10 або 8.1 безпосередньо у встановленій системі витягти з поточного способу всі встановлені драйвера сторонніх виробників, відкрийте консоль PowerShell з правами адміністратора і виконайте команду:

Export-WindowsDriver –Online -Destination c:drivers

Примітка. c: drivers – каталог, в який потрібно зберегти файли драйверів, повинен бути створений заздалегідь.

Якщо потрібно витягти драйвера з офлайн образу Windows, змонтованого, наприклад, в каталог c: win_image, команда повинна виглядати так.

Export-WindowsDriver -Path c:win_image -Destination c:drivers

Після запуску командлета на екрані з’явиться інформація про всіх експортованих драйвери, які не є частиною ОС.

Export-WindowsDriver - бекап встановлених драйверів в каталог на диску

В результаті виконання команди PowerShell ви отримаєте каталог з резервною копією всіх драйверів, встановлених в Windows. Кожен драйвер і всі пов’язані з ним файли зберігається в власний каталог, який називається по імені inf-файлу драйвера. каталог з inf файлами всіх драйверів

У кожному каталозі присутні всі файли, необхідний для установки драйвера в системі (не тільки inf файли, але і всі пов’язані sys, dll, exe і інші типи файлів). командлет Експорт-WindowsDriver будує список файлів, які необхідні для установки драйвера відповідно до списку файлів, зазначених в секції CopyFiles inf-файлу драйвера.

inf файл драйвера

Щоб відобразити список усіх експортованих драйверів в зручному вигляді із зазначенням класу, виробника і версії драйвера, здійснимо експорт драйверів двома командами:

$BackupDrv = Export-WindowsDriver -Online -Destination c:drivers

Після чого відобразимо результати виконання команди в табличній формі:

$BackupDrv | Select-Object ClassName, ProviderName, Date, Version | Sort-Object ClassName

Як ви бачите, в вийшла таблиці вказаний клас драйвера, виробник, версія і дата.

таблиця зі списком сторонніх драйверів, встановлених в Windows

Ви можете вивантажити інформацію про експортованих драйвери в CSV файл:

$BackupDrv| Select-Object ClassName, ProviderName, Date, Version |Export-Csv c:psdrivers_list.txt

Можна вивести список драйверів певного класу пристроїв за допомогою атрибута класу ClassName. Наприклад, щоб вивести тільки драйвера принтерів, виконайте команду:

$BackupDrv | where { $_.classname -like "printer" }

Щоб вивести список драйверів певного виробника, скористайтеся командою:

$BackupDrv | Where{ $_.ProviderName -Match "NVIDIA"}

вибір драйверів за різними класами

Бекап драйверів за допомогою DISM

Утиліта DISM також надає можливість як створення резервної копії драйверів, так і їх імпорту в образ Windows.

Щоб експортувати всі драйвера в каталог C: Drivers, відкрийте командний рядок з правами адміністратора і виконайте команду:

dism /online /export-driver /destination:C:Drivers

Експорт 1 з 27 – oem0.inf: Пакет драйверів успішно експортований.

бекап драйверів за допомогою dism / online / export-driver

Як ви бачите, в нашому прикладі утиліта DISM успішно експортувала в зазначений каталог 27 драйверів.

Використовуємо утиліту PNPUtil для створення резервну копії встановлених драйверів

До складу всіх версій Windows, починаючи c Windows 7, входить утиліта PNPUtil, яка зазвичай використовується для додавання або видалення драйверів в Windows (раніше ми показували як видалити старі версії драйверів зі сховища драйверів Windows для економії місця на диску).

Відкрийте командний рядок з підвищеними правами і виконайте команду:

pnputil.exe /export-driver * c:drivers

pnputil.exe export-driver (зберегти всі драйвера в каталог drivers)

Драйвера з отриманого каталогу з драйверами можна поширити на інші системи вручну за допомогою PowerShell або DISM (Як інтегрувати драйвера в образ Windows), або автоматизовано за допомогою скриптів на основі PNPUtil, DISM, PowerShell, MDT, SCCM і т.п.

Відновлення драйверів з резервної копії

Після переустановлення системи ви можете використовувати каталог з резервною копією драйверів для установки в чистій системі.

Ви можете встановити конкретний драйвер, клацнувши правою кнопкою по INF файлу і вибравши пункт меню «встановити».

встановити драйвер з inf файлу

Також можна встановити драйвер конкретного пристрою через диспетчер обладнання. У диспетчері пристроїв виберіть пристрій, драйвер якого ви хочете замінити, виберіть пункт «оновити драйвер»->«Виконати пошук драйверів на цьому комп’ютері». Вкажіть шлях до каталогу з резервною копією драйверів. Щоб автоматично просканувати на відповідні драйвера всі вкладені папки, виберіть відповідну опцію.

ручна установка драйвера з резервних копії

Однак є більш простий спосіб установки відразу всіх драйверів, які присутні в резервної копії. Для цього скористайтеся наступним PowerShell скриптом:

$driver_inf_files = Get-ChildItem -Path "C:Drivers" -Filter "*.inf" -Recurse -File
foreach($driver_inf_file in $driver_inf_files){
$driver_inf_file.FullName
pnputil.exe -i -a "$driver_inf_file.FullName"
}

Даний PoSh скрипт послідовно обходить всі папки в зазначеному каталозі, шукає все inf файли і встановлює драйвера в сховище драйверів за допомогою утиліти PNPUtil.

Також можна імпортувати все драйвера з каталогу з резервною копією в образ Windows за допомогою параметра Add-Driver утиліти DISM:

DISM /online /Add-Driver /Driver:C:Drivers /Recurse

Можна додати драйвер як в онлайн, так і в офлайн образ Windows (див. Приклад Інтеграція драйверів USB 3.0 в дистрибутив Windows 7).

Отже, в цій статті ми розглянули різні способи експорт і імпорту драйверів в Windows. Також ми познайомилися з новим Командлети Експорт-WindowsDriver в Windows 10 і Windows 8.1 Update 1, що дозволяє створити резервну копію всіх сторонніх драйверів, встановлені в системі, і експортувати їх в окрему папку.

Leave a Reply

Your email address will not be published. Required fields are marked *