setara jendela untuk dd

40

Saya perlu membaca dan menulis berbagai gambar kartu flash. Cara saya selalu melakukan ini di linux adalah dengan dd, dan itu berhasil. Apakah yang dimaksud dengan jendela yang baik?

Sederhananya, saya harus bisa membaca seluruh kartu menjadi file dan sebaliknya. Saya mencoba WinDD , tetapi yang tampaknya beroperasi pada partisi daripada seluruh perangkat, tetapi saya harus dapat membuang seluruh disk / kartu dan tabel partisi terlepas dari isinya.

Menggunakan Windows 7 64bit, dengan card reader pada port USB3.

Jarmund
sumber

Jawaban:

20

Coba Win32DiskImager , ia dapat menulis gambar ke disk.

Logern
sumber
5
Di-host di SourceForge, yang memiliki sejarah termasuk malware dalam distribusi, bertentangan dengan keinginan pemilik proyek. Sumber: notepad-plus-plus.org/news/notepad-plus-plus-leaves-sf.html
Scott Stevens
4
@AnthonyLozano Saya mengunduh win32diskimager dari sourceforge, ia tidak memiliki malware dan ini banyak digunakan dan bahkan direkomendasikan untuk hal-hal seperti Raspberry Pi untuk menulis gambar disk. Ada garpu pada github tetapi Anda harus mengompilasinya sendiri github.com/bizplay/win32-disk-imager
Logern
2
Saya sudah mulai menggunakan Chocolatey untuk semua utilitas saya. Pikirkan apt-get untuk Windows menggunakan kerangka kerja NuGet. Ada paket win32diskimager di sana yang menginstal tanpa masalah. Portable, juga. chocolatey.org
Mike Loux
4
Ini tidak berfungsi untuk perangkat tanpa huruf partisi yang ditetapkan untuknya, sehingga tidak berguna untuk perangkat dengan partisi yang tidak dikenal atau tanpa partisi sama sekali. Tidak setara dengan dd.
Xerz
1
Itu tidak membuat file gambar yang kompatibel dengan dd, bahkan mencoba memahami tata letak disk dan menghasilkan file zip dengan setiap partisi yang dikenali dalam file terpisah. Dan dalam kasus saya memiliki masalah mengembalikan file kembali ke partisi lagi
user230910
20

Cukup gunakan dd untuk WIndows ... ini berfungsi dengan baik meskipun itu adalah proyek yang cukup lama.

Eugen Rieck
sumber
Tampaknya memiliki masalah di bawah windows 10. Adakah yang mengalami masalah dengan .6 beta 3?
TravisWhidden
@ TravisWhidden masalah apa? Saya mengalami beberapa kesalahan "tidak dapat menulis", tetapi tidak yakin apakah itu masalah yang sama.
Scott Stevens
Ini tidak berfungsi untuk saya di mesin Win7 saya
Aaron
Ini sepertinya berhasil, tetapi sepertinya slooooow ...
user230910
Terima kasih, bekerja dengan baik untuk saya.
Jesse Busman
14

Rufus bekerja seperti yang diharapkan. Pilih 'Gambar DD' untuk 'Buat bootable disk menggunakan'.

Sumber diterbitkan di GitHub: https://github.com/pbatard/rufus .

Pengalaman saya: Win32DiskImager tidak mendeteksi u-SD melalui pembaca USB-3; dd untuk Windows, MinGW yang dikompilasi dd, Unix Utils dd, dan Linux dd VIA VirtualBox VM USB3 pass-through semuanya sangat lambat; Saya belum menemukan setara baris perintah Windows yang dapat mengalahkan kecepatan tulis 50MB / s yang saya lihat dengan Rufus.

mstrthealias
sumber
Pilihan saya untuk Rufus juga. Tak satu pun dari jawaban yang diusulkan lainnya bekerja untuk saya di Windows 10 Pro v1703 Oke ... mari kita jujur ​​... Saya tidak mencoba solusi Python.
Doug Wilson
3
Ini benar-benar baik untuk preloading gambar pada stik USB, tetapi tidak melakukan setengah dari apa yang dapat dilakukan, jadi itu tidak benar-benar "setara"
Rolf
3
Ini tidak valid karena hanya memungkinkan untuk menulis gambar pada disk, tidak membaca disk tersebut.
Xerz
2
Rufus menghasilkan disk dengan checksum berbeda dari gambar, bagi saya.
fuzzyTew
1
Sangat jarang melihat aplikasi yang bermanfaat saat ini yang hanya berukuran 1mb. Alat yang luar biasa!
Gareth Davidson
9

Pertama saya juga mencoba Win32DiskImager, yang saya pikir hanya melakukan copy partisi berdasarkan tampilannya (tidak, ini dapat membuat cadangan seluruh kartu SD), jadi saya terus mencari.

Favorit saya saat ini adalah HDDRawCopy . Ini menyalin ke / dari file seluruh gambar disk, tetapi tidak partisi secara terpisah. Ini menciptakan gambar yang kompatibel atau dikompresi dd dengan cepat - tidak seefisien 7zip (bahkan tidak mencapai kinerja ZIP) tetapi Anda tidak perlu menyentuh gambar lagi.

Andris
sumber
2
HDD Raw Copy dapat mendeteksi drive SCSI kosong yang "dd for windows" tidak bisa. Itu memungkinkan saya untuk menduplikasi disk HFS dari Windows! Terima kasih!
HackSlash
2
Perhatikan bahwa untuk beberapa alasan, HDD RAW COPY memiliki batas 50MB / s
Gizmo
9

terkejut tidak ada yang menyebutkan utilitas inti GNU untuk Windows , saya telah menggunakannya selama bertahun-tahun. mereka biner 32-bit tetapi tampaknya, kecuali untuk less, mereka masih bekerja di bawah Windows 7 64-bit .

contoh penggunaan:

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

waktu yang dilaporkan agak aneh tetapi sebaliknya tampaknya bekerja dengan baik.

jcomeau_ictx
sumber
1
Apakah ini menyalin dengan benar konten lebih dari 4 gibibytes? Terakhir kali saya memeriksa (lama) itu dikompilasi dengan runtime Microsoft di mana off_ta long, maka offset dibatasi hingga 31 atau 32 bit ... yang merupakan penipuan besar saat menggunakan dd.
AntoineL
Saya tidak pernah mencoba, maaf.
jcomeau_ictx
Git untuk Windows hadir (pada saat penulisan) dengan versi dd 8.30, dikompilasi pada tahun 2018. Tampaknya bekerja dengan baik dengan /dev/sdXnama, setidaknya dari Git Bash berjalan sebagai Administrator. Mungkin kehilangan batasan 32-bit beberapa waktu lalu.
mwfearnley
8

Saya hanya mencoba memverifikasi drive dihapus, jadi semua yang saya pedulikan adalah membaca, tetapi skrip python ini dapat dimodifikasi untuk melakukan hal seperti ini jika Anda tidak mempercayai executable tersebut seperti saya tidak. Buka Windows Partition Manager untuk mendapatkan nomor drive yang Anda inginkan, dan cukup ubah 2 ke nomor itu. Anda kemudian dapat menuliskannya, atau jika Anda melakukan wb bukannya rb Anda bisa menulis. Semoga berhasil

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')
seseorang yang menghabiskan waktu lama
sumber
3
Sebagai catatan, saya pikir akan jauh lebih cepat untuk melakukan lebih dari satu byte pada suatu waktu. Dan tidak ada kondisi kesalahan, skrip bergantung pada byte non-nol yang terjadi sejak awal dan Anda mengetahui bahwa itu dicetak "selesai" sejak awal.
Luc
2
Bagaimana Anda tahu apa yang mendorong target?
HackSlash
Python adalah alat yang salah yaitu loop ketat seperti itu. Anda akan lebih baik membuat buffer 256 ribu semua nol dan membandingkannya dengan 256 ribu yang ditarik dari disk sekaligus. Plus memiliki beberapa penanganan pengecualian.
Gareth Davidson
3

Untuk padanan sesungguhnya ddpada Windows, jangan mencari alternatif yang setengah matang - cukup instal GNU yang sebenarnya dd. Cara terbaik untuk melakukan ini mungkin adalah Cygwin , distribusi GNU yang cukup lengkap dan alat FOSS lainnya. Anggap saja menginstal "Linux" (atau lebih tepatnya, distribusi Linux (GNU)) di atas Windows, tanpa lapisan emulasi atau kotak hitam terbatas seperti Subsistem Windows untuk Linux. Ini asli seperti yang didapat.

Untuk menggunakannya, Anda harus:

  1. Instal lingkungan Cygwin dasar. Lakukan seperti yang diinstruksikan di situs web , tinggalkan default jika Anda hanya perlu dd- tetapi Anda juga bisa bersenang-senang dan mendapatkan petunjuk tentang apa yang ditawarkan.
  2. Buka terminal Cygwin sebagai administrator , lalu periksa di perangkat / partisi mana Anda ingin bekerja cat /proc/partitions.
  3. Gunakan ddseperti yang Anda lakukan pada Linux (GNU) apa pun.
Xerz
sumber
Anda bahkan dapat menggunakan cygwin dari prompt perintah DOS ... (saya menggunakan semua waktu untuk cat / grep / tail / ...) dan bahkan di konsol DOS / Windows "ls -la / proc" berfungsi dengan baik ... salah satu keuntungan saya ...
ZEE
3

wow semua tanggapan itu dan DISM sudah ada berapa lama? cukup yakin itu dibangun ke windows 7 dari awal.

DISM / capture-image /image-file:d:backback.wim / captureir: c: \ / name: simpleback

ada banyak pengaturan yang dapat Anda atur. setelah Anda menangkap - gunakan ke media penyimpanan baru menggunakan alat pembongkaran juga.

Jonathan Warren
sumber
Tidak bekerja: The /image-file option is not recognized in this context.. Seharusnya/imagefile
yahol
1

Setelah mencoba beberapa alat yang direkomendasikan di sini, saya akhirnya menggunakan balena Etcher pada Windows 10. (Rufus memberi saya hasil dengan checksum yang salah. HDDRawCopy memberi saya kesalahan penulisan.)

fuzzyTew
sumber
1

rawcopydari http://www.ltr-data.se/opencode.html/ . rawcopy -hmenunjukkan manual.

Jika Anda perlu /dev/zerodan /dev/random, ada "Zero and Random device driver" dari situs yang sama.

fau
sumber