Se un supporto usb memory contiene solo file di documenti, il modo più semplice è quello di copiarli dal primo al secondo dispositivo.
Tuttavia se la usb memory è bootable o comunque contiene codice nel settore di avvio MBR, la soluzione precedente sarà insufficiente.
Duplicare con Linux
- identifica la posizione di montaggio della usb memory.
- collega la usb memory al pc
- da terminale lancia il comando:
- lsblk
- il risultato sarà qualcosa di simile a questo:
- user:~$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 450G 0 disk
├─sda1 8:1 0 100M 0 part
├─sda2 8:2 0 50G 0 part
├─sda3 8:3 0 300G 0 part /media/Doc
sdb 8:16 0 931,5G 0 disk
└─sdb1 8:17 0 931,5G 0 part
sdc 8:32 1 28,7G 0 disk
└─sdc1 8:33 1 28,7G 0 part /media/user/ZiS32GBboot
sr0 11:0 1 1024M 0 rom
- user:~$ lsblk
- il nome della usb memory e le sue dimensioni ti aiuteranno a identificarla; in questo caso il dispositivo è stato montato in sdc.
- crea una immagine della usb memory.
- da terminale lancia il comando:
- sudo ddrescue -d if=/dev/sdx of=/percorso/nome_immagine.img img.logfile bs=4M status=progress
sdx = il punto di montaggio del supporto usb.
/percorso/ = il percorso dove vuoi salvare l’immagine; verifica che ci sia spazio a sufficienza.
nome_immagine = il nome che vuoi dare all’immagine.
-d = obbliga ad usare accesso diretto al disco e ignorare la cache del kernel.
img.logfile = il nome del file di log; avere un file di log consente di far ripartire la copia in caso di interruzione, o riprovare a recuperare settori danneggiati.
di seguito il comando come da esempio: - sudo ddrescue -d if=/dev/sdc of=/media/Doc/Desktop/usbmem.img img.logfile bs=4M status=progress
- sudo ddrescue -d if=/dev/sdx of=/percorso/nome_immagine.img img.logfile bs=4M status=progress
- attendi fino alla fine della creazione dell’immagine.
- 30744248320 bytes (31 GB, 29 GiB) copied, 1037 s, 29,6 MB/s
7331+1 records in
7331+1 records out
30752000000 bytes (31 GB, 29 GiB) copied, 1037,27 s, 29,6 MB/s
- 30744248320 bytes (31 GB, 29 GiB) copied, 1037 s, 29,6 MB/s
- da terminale lancia il comando:
- smonta la usb memory originale e scollegala dal pc.
- verifica la presenta del file immagine appena creato.
- installa ddrescue, home page quì: https://www.gnu.org/software/ddrescue/
- da terminale lancia il comando:
- sudo apt install gddrescue
- da terminale lancia il comando:
- monta la nuova usb memory; è sempre preferibile formattare prima la usb memory per ripulirla dai dati.
- come per il punto 1. identifica la posizione di montaggio della usb memory.
- da terminale lancia il comando:
- lsblk
- il risultato sarà qualcosa di simile a questo:
- user:~$ lsblk
sdb 8:16 0 931,5G 0 disk
└─sdb1 8:17 0 931,5G 0 part
sdc 8:32 1 58,6G 0 disk
└─sdc1 8:33 1 58,6G 0 part /media/user-zis/ZIS64GBBOOT
sr0 11:0 1 1024M 0 rom
- user:~$ lsblk
- il nome della usb memory e le sue dimensioni ti aiuteranno a identificarla; in questo caso il dispositivo è stato montato nuovamente in sdc.
- da terminale lancia il comando:
- copia l’immagine sulla nuova usb memory; attenzione! se sbagli il punto di mount sovrascriverai un’altra partizione con la conseguente perdita dei dati.
- da terminale lancia il comando:
- sudo ddrescue -f /percorso/nome_immagine.img /dev/sdx restore.logfile
/percorso/ = il percorso dove hai salvato l’immagine.
nome_immagine = il nome che hai dato all’immagine.
sdx = il punto di montaggio del supporto usb.
-f = indica che la destinazione è un block device piuttosto che un file.
restore.logfile = il nome del file di log.
di seguito il comando come da esempio: - sudo ddrescue -f /media/Doc/Desktop/usbmem.img /dev/sdc restore.logfile
- sudo ddrescue -f /percorso/nome_immagine.img /dev/sdx restore.logfile
- attendi fino alla fine della creazione dell’immagine.
- GNU ddrescue 1.23
Press Ctrl-C to interrupt
ipos: 30751 MB, non-trimmed: 0 B, current rate: 10700 kB/s
opos: 30751 MB, non-scraped: 0 B, average rate: 16878 kB/s
non-tried: 0 B, bad-sector: 0 B, error rate: 0 B/s
rescued: 30752 MB, bad areas: 0, run time: 30m 21s
pct rescued: 100.00%, read errors: 0, remaining time: n/a
time since last successful read: n/a
Finished
- GNU ddrescue 1.23
- da terminale lancia il comando:
Sarebbe possibile copiare direttamente un device su un’altro, ma devi fare bene attenzione ad individuare i punti di montaggio che potresti sovrascrivere inavvertitamente con conseguente perdita dei dati.
-
- da terminale lancia il comando:
- ddrescue -d -f -r3 /dev/sdx /dev/sdy /media/Doc/Desktop/usbmem.img/restore.logfile
sdx = il punto di montaggio del supporto usb memory di partenza.
sdy = il punto di montaggio del supporto usb memory di arrivo.
restore.logfile = il nome del file di log che deve essere in una terza posizione di mount.
-d = obbliga ad usare accesso diretto al disco e ignorare la cache del kernel.
-f = indica che la destinazione è un block device piuttosto che un file.
di seguito il comando come da esempio: - ddrescue -d -f /dev/sdc /dev/sdd /media/Doc/Desktop/usbmem.img/restore.logfile
- ddrescue -d -f -r3 /dev/sdx /dev/sdy /media/Doc/Desktop/usbmem.img/restore.logfile
- da terminale lancia il comando: