2014-11-13 09:52:32 +0000 2014-11-13 09:52:32 +0000
43
43

эквивалент окна dd

Мне нужно читать и писать различные изображения флэш-карт. То, как я всегда делал это в Линуксе, было с dd, и это сделало трюк. Что такое хороший эквивалент окна?

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

Используя Windows 7 64бит, с кардридером на порту USB3.

Ответы (10)

22
22
22
2014-11-13 18:46:50 +0000

Попробуйте Win32DiskImager , он может записывать изображения на диски.

21
21
21
2014-11-13 10:07:28 +0000

Просто используйте dd для WIndows … он отлично работает, даже если это довольно старый проект.

14
14
14
2017-04-11 19:33:30 +0000

Руфус работает, как и ожидалось. Выберите ‘DD образ’ для ‘Создать загрузочный диск с помощью’.

Источник опубликован на GitHub: https://github.com/pbatard/rufus . balenaEtcher - это еще одна совместимая с Windows утилита для записи образов на USB-накопители. Она также быстрая и проще в использовании, чем Rufus.

Мой опыт: Win32DiskImager не обнаружил u-SD через USB-3 ридер; dd для Windows, MinGW скомпилированный dd, Unix Utils dd, и Linux dd VIA VirtualBox VM USB3 прохождение было неприемлемо медленным; мне еще предстоит найти эквивалент командной строки для Windows, который мог бы превзойти скорость записи 50 Мб/с, которую я вижу у Руфуса.

10
10
10
2017-09-22 18:12:46 +0000

Сначала я также попробовал Win32DiskImager, который, как я думал, делает только копирование разделов на основе его дисплея (нет, он может сделать резервную копию всей SD-карты), поэтому я продолжил поиск.

Мой текущий любимый - HDDRawCopy . Он копирует в/из файла весь образ диска, но не разделы по отдельности. Она создает dd-совместимые или сжатые изображения “на лету” - не так эффективно, как 7zip (даже не достигает производительности ZIP), но вам не нужно прикасаться к изображению снова.

10
10
10
2018-02-10 06:37:46 +0000

Удивительно, что никто не упомянул ядро GNU utils для Windows , я пользуюсь ими годами. это 32-битные двоичные файлы, но, по-видимому, за исключением less, они все еще работают под Windows 7 64-битных .

пример использования:

C:\Windows\Temp>dd if="\.\s:" of=sdrive.dat bs=4096
25599+0 records in
25599+0 records out
104853504 bytes (105 MB) copied, 30.3147 seconds, -56145186608800624000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000 MB/s

C:\Windows\Temp>dd if="\.\physicaldrive0" of=mbr.dat bs=512 count=1
1+0 records in
1+0 records out
512 bytes (512 B) copied, 0.0210012 seconds, -891479495977528 kB/s

время сообщений немного странное, но в остальном, похоже, работает хорошо.

8
8
8
2017-03-29 19:19:35 +0000

Я просто пытался проверить, что диск стёрли, так что всё, что меня волновало - это чтение, но этот питоновый сценарий можно было модифицировать, чтобы сделать что-нибудь подобное, если вы не доверяете этим исполняемым файлам, как не доверял я. Откройте диспетчер разделов Windows Partition Manager, чтобы узнать номер диска, который вас волнует, и просто измените этот номер на 2. Затем вы можете записать это, или, если вы сделали wb вместо rb, вы можете записать. Удачи

import sys

f = open('\\.\PhysicalDrive2','rb')
a = f.read(1)
i = 1

kb = 1024
mb = kb*1024

while a == b'\x00':
    i+=1
    if i % mb == 0:
        sys.stdout.write('\r{} MB scanned'.format(i/mb))
    a = f.read(1)

print('done')
3
3
3
2018-12-30 09:00:29 +0000

Вау, все эти ответы и DISM уже давно существуют? Я уверен, что он был встроен в окно 7 с самого начала.

DISM /capture-image /image-file:d:\backup.wim /capturedir:c:\ /name:simpleback

есть множество настроек, которые вы можете изменить. после того, как вы сделаете снимок - установите на новые носители с помощью инструментов демонтажа.

3
3
3
2018-04-14 18:44:56 +0000

Для настоящего эквивалента dd в Windows не ищите полузапеченные альтернативы - просто установите настоящую GNU dd. Лучшим способом сделать это, вероятно, является Cygwin , довольно полный дистрибутив GNU и других инструментов FOSS. Считайте, что это установка “Linux” (а точнее, дистрибутива (GNU)Linux) поверх Windows, без каких-либо слоев эмуляции или ограниченного черного ящика, например, подсистемы Windows для Linux. Это как родной, насколько это возможно.

Для того, чтобы его использовать, необходимо:

  1. Установить базовое окружение Cygwin. Сделайте это как указано на сайте , просто оставьте настройки по умолчанию, если вам нужно только dd - но вы также можете повеселиться и получить подсказку о том, что она может предложить.
  2. Откройте терминал Cygwin в качестве администратора _, затем проверьте, с каким устройством/разделом вы хотите работать с cat /proc/partitions.
  3. Используйте dd, как и в любом (GNU)Linux.
1
1
1
2018-12-25 00:11:36 +0000

После того, как я попробовал некоторые из рекомендуемых здесь инструментов, я закончил использование balena Etcher в Windows 10. (Руфус дал мне результат с неправильной контрольной суммой. HDDRawCopy дал мне ошибку при записи).

1
1
1
2019-08-24 22:00:18 +0000

rawcopy с http://www.ltr-data.se/opencode.html/ . rawcopy -h показывает руководство.

Если вам нужны /dev/zero и /dev/random, есть “Нулевой и случайный драйвер устройства” с того же сайта.

Похожие вопросы

3
19
10
28
14