У цій статті ми покажемо, як зробити так, щоб USB флешка или SD карта визначалася в системі Windows як звичайний локальний жорсткий диск. Ви, напевно, запитаєте, а навіщо це потрібно? Справа в тому, що Windows за замовчуванням визначає USB флешки і карти пам’яті як змінні накопичувачі, які стандартами засобами Windows не можна розбити на кілька розділів. І навіть якщо розбити флешку на двох чи більше розділів за допомогою сторонніх утиліт (в тій же Linux), то в ОС сімейства Windows буде доступний тільки перший з них (до речі кажучи, в Windows 10 1703 з’явилася вбудована можливість розбити USB накопичувач на кількох розділів) . Тобто Windows підтримує нормальну роботи з мультіразделамі тільки для HDD дисків, які в системі визначаються як локальні (тобто незнімні).

RMB біт і USB носії

ОС сімейства Windows розпізнають USB флешки як знімні / видобувні (removable) пристрої через наявність на кожному пристрої спеціального битового дескриптора Юанів (знімний ЗМІ біт). Якщо при опитуванні підключеного пристрою через функцію StorageDeviceProperty, система визначає, що RMB = 1, вона робить висновок, що підключений пристрій є змінним накопичувачем. Таким чином, щоб з точки зору системи перетворити USB-Флеку в жорсткий диск, досить модифікувати цей дескриптор. Це можна зробити безпосередньо (що досить ризиковано через відмінності в апаратних реалізаціях конкретних пристроїв, та й не завжди можливо), або побічно, підмінивши відповідь USB пристрою за допомогою спеціального драйвера, що дозволяє відфільтрувати інформацію у відповіді пристрою.

Порада. Деякі виробники випускають спеціальні утиліти для перепрошивки контролера своїх флешок. В першу чергу спробуйте на сайті виробника знайти таку утиліту і / або прошивку. Це найправильніший шлях. Якщо такої утиліти не знайдеться, дотримуйтесь рекомендацій з цієї статті.

Підключимо в будь-який вільний порт комп’ютера USB флешку, потім відкриємо диспетчер управління дисків (diskmgmt.msc) І переконався, що її тип визначається в системі як Знімний (Знімний пристрій).Змінний (removable) диск в диспетчері дисків

Також тип пристрою можна подивитися на вкладці Volumes у властивостях диска (як ми бачимо і тут Тип: знімний). Знімний том - USB-диск

Або за допомогою команди diskpart:

list volume

diskpart: знімний пристрій

У цій статті ми розглянемо два способи зміни RMB біта на USB флешці – за допомогою використання фільтр-драйвера Hitachi (зміни вносяться тільки на рівні драйверв конкретного комп’ютера) і зміна біта в прошивці контролера за допомогою утиліти BootIt від Lexar (більш універсальний спосіб, але є ряд обмежень і можна застосувати не до всіх моделей флешок і SD карт). Хоча обидва ці способи досить старі і спочатку я тестував їх в Windows 7, вони продовжують бути актуальними і однаково добре працюють і в сучасній Windows 10.

Утиліта Lexar BootIt

Нещодавно мені на очі потрапила досить цікава утиліта – Лексар BootIt. Це безкоштовна портабельная програма, яка може змінити RMB знімного накопичувача, зробивши знімне USB-пристрій фіксованим (або навпаки). Незважаючи на те, що утиліта Lexar BootIt розроблена для пристроїв Lexar (Micron, Crucial), вона може працювати і з флешками інших виробників. Утиліта BootIt підтримує всі версії Windows, починаючи з Windows XP і закінчуючи Windows 10.

важливо. Утиліта гарантовано працює для накопичувачів Lexar. Судячи з відгуків, функція «Flip removable bit» не працює на швидких USB 3.0 флешках. Крім того, при перепрошивки контролера ви втрачаєте гарантії на флешку і можете зробити її непрацездатною.

Завантажити BootIt можна на сайті Lexar (lexar_usb_tool) Або з нашого сайту (BootIt_usb_rmb.zip).

  • Запустіть BootIt.exe з правами адміністратора
  • У списку пристроїв виберіть свою флешку
  • Натисніть на кнопку Знімний біт
  • Збережіть зміни, натиснувши ОК.

утиліта Lexar BootIt

Під’єднайте пристрій і за допомогою диспетчера пристроїв переконайтеся, що його тип змінився з Removable на Basic.

usb флешка як жорсткий диск

У тому випадку, якщо утиліта BootIt не допомогла змінити RMB біт на знімному накопичувачі, спробуйте скористатися наступним способом, заснованому на фільтр драйвері Hitachi Microdrive

Фільтр-драйвер для флешок Hitachi Microdrive

Щоб USB флеш накопичувач або SD карта розпізнав в системі як жорсткий диск, нам знадобиться спеціальний фільтр-драйвер, що дозволяє модифікувати дані передаються через системний стек чинного драйвера пристрою. Ми скористаємося фільтр-драйвером для USB флешок від Hitachi (драйвер Hitachi Microdrive), Який на рівні драйвера ОС дозволяє змінити тип пристрою флешки зі знімного на фіксований (USB-ZIP -> USB-HDD). Завдяки використанню даного драйвера, можна приховати від системи, що підключений пристрій з’являться знімним. В результаті чого, система буде вважати, що вона працює зі звичайним жорстким диском, який можна розбити на розділи, які одночасно будуть доступні в системі.

Архіви з драйвером Hitachi Microdrive:

  • версія Hitachi Microdrive для 32 бітних систем — Hitachi Microdrive (3,0 Кб)
  • версія Hitachi Microdrive для 64 бітних систем – Hitachi Microdrive x64 (3,8 КБ)

Необхідно завантажити версію драйвера для вашої системи відповідно до її розрядністю. Обидва архіву мають однакову структуру і складаються з двох файлів:

  • cfadisk.inf – інсталяційний файл, з настройками драйвера
  • cfadisk.sys – файл драйвера Hitachi

Наступний етап – ідентифікація коду устрою нашої флешки. Для цього у властивостях диска на вкладці Деталі в параметрі Шлях екземпляра пристрою виберіть і скопіюйте (Ctrl + C) Код екземпляра пристрою. Визначаємо ідентифікатор пристрою usb флешки

У нашому прикладі це буде:

USBSTORDisk&Ven_Linux&Prod_File-CD_Gadget&Rev_0000123456789ABCDEF&0

Припустимо, ми плануємо встановити драйвер на 64 бітної системі. За допомогою будь-якого тестового редактора відкриваємо на редагування файл cfadisk.inf. Нас цікавлять розділи cfadisk_device і cfadisk_device.NTamd64.

[cfadisk_device]
%Microdrive_devdesc% = cfadisk_install,IDEDiskTS64GCF400______________________________20101008
[cfadisk_device.NTamd64]
%Microdrive_devdesc% = cfadisk_install,IDEDiskTS64GCF400______________________________20101008

міняємо значення DiskTS64GCF400______________________________20101008 на код нашого пристрою.

Важливо! У коді екземпляра пристрою необхідно відкинути частину після другого «» (в нашому прикладі відкидаємо 0123456789ABCDEF & 0).

отримуємо:

[cfadisk_device]
%Microdrive_devdesc% = cfadisk_install,IDEUSBSTORDisk&Ven_Linux&Prod_File-CD_Gadget&Rev_0000
[cfadisk_device.NTamd64]
%Microdrive_devdesc% = cfadisk_install,IDEUSBSTORDisk&Ven_Linux&Prod_File-CD_Gadget&Rev_0000

Зберігаємо файл.

Якщо драйвер встановлюється на 32 бітної системі, Потрібно завантажити радить архів, розпакувати його і відкрити на редагування файл cfadisk.inf. знайдемо розділ [cfadisk_device]:

[cfadisk_device]
%Microdrive_devdesc% = cfadisk_install,USBSTORDisk&Ven_LEXAR&Prod_JD_LIGHTNING_II&Rev_1100
%Microdrive_devdesc% = cfadisk_install,USBSTORDisk&Ven_JetFlash&Prod_TS1GJF110&Rev_0.00
%Microdrive_devdesc% = cfadisk_install,USBSTORDISK&VEN_&PROD_USB_DISK_2.0&REV_P

Потім змінимо дані в останньому рядку, вказавши код примірника нашої флешки, тобто в нашому прикладі отримаємо:

%Microdrive_devdesc% = cfadisk_install,USBSTORDisk&Ven_LEXAR&Prod_JD_LIGHTNING_II&Rev_1100
%Microdrive_devdesc% = cfadisk_install,USBSTORDisk&Ven_JetFlash&Prod_TS1GJF110&Rev_0.00
%Microdrive_devdesc% = cfadisk_install,USBSTORDisk&Ven_Linux&Prod_File-CD_Gadget&Rev_0000

inf файл драйвера - розділ cfadisk_device

Порада. Якщо потрібно, щоб USB флешка в диспетчері пристроїв відображалася з конкретним ім’ям, потрібно відредагувати значення змінної Microdrive_devdesc, наприклад так:
Microdrive_devdesc = "Transcend 64GB DIY SSD"

Установка драйвера Hitachi Microdrive замість рідного драйвера USB накопичувача

Залишилося замінити драйвер, який використовується USB флеш накопичувачем.

Відкриємо вкладку Drivers і натиснемо кнопку Оновлення драйверів. Оновити драйвер usb накопичувача

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

Виберемо новий драйвер. Виберемо драйвер флешки

Ігноруємо попередження про відсутньої цифрового підпису драйвера. Ігноруємо попередження про відсутність цифрового підпису драйвера

Порада. У Windows 10 і Windows 8 при установці драйвера з’являється така помилка:

Система Windows виявила драйвери для цього пристрою, але при спробі установки цих драйверів сталася помилка.
Hitachi Microdrive
Inf стороннього виробника не містить інформації про підписи

Hitachi Microdrive Inf стороннього виробника не містить інформації про підписи

Для відключення перевірки цифрового підпису драйвера, виконайте команди:

bcdedit.exe /set nointegritychecks ON
bcdedit.exe /set TESTSIGNING ON

Перезавантажте комп’ютер і спробуйте знову встановити драйвер.

Залишилося перезавантажити комп’ютер і, відкривши диспетчер дисків, упевниться, що ваша флешка стала визначатися як звичайний жорсткий диск (Тип: Основний), А в якості драйвера використовується драйвер Hitachi.

usb диск як локальний

Відкривши провідник, можна також переконатися, що іконка флешки змінилася вона стала відображатися як жорсткий диск звичайний диск. Як зробити, щоб usb флешка визначалася в системі як жорсткий диск

Тепер з цієї флешкою ​​можна працювати як зі звичайним HDD: створювати розділи, вказувати активний розділ, створювати динамічні диски, встановлювати ПО, яке не працює з флешок і т.д.

важливо. На інших комп’ютерах Windows без цього драйвера другий розділ пристрою доступний не буде.

Як видалити драйвер Hitachi Microdrive

Щоб видалити драйвер Hitachi Microdrive, відкрийте властивості диска і на вкладці драйвер натисніть кнопку Update Driver – система сама встановить рідний драйвер.

Як видалити драйвер Hitachi Microdrive

Порада. Якщо після установки драйвера Hitachi система перестала завантажуватися з BSOD, потрібно завантажити комп’ютер з інсталяційного диска Windows / Live CD і вручну видалити такі файли:

  • cfadisk.sys в каталозі% windir% System32 драйвери
  • Каталог «cfadisk.inf_amd64_…» из% windir% System32 DriverStore FileRepositoty

перезавантажте комп’ютер

Потрібно розуміти, що це рішення буде працювати тільки на тій системі, на якій встановлено відповідний драйвер.

Leave a Reply

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