Je voulais dd
une image de sdb
à sdc
, mais parce qu'une heure avant d'avoir configuré les choses différemment, je viens de copier la même commande:
dd if=/home/user/Downloads/ubuntu.iso of=/dev/rsdb bs=2M; sync
sDA = disque dur interne
SDB = disque dur USB (démarré en maintenant)
SDC = bâton USB
Il y a 3 partitions sur le disque dur que j'ai démarré, je suppose que les 2 autres sont en lecture en lecture seule et l'erreur dans Shell comme j'ai essayé deux fois:
568328192 bytes (568 MB) copied, 38,5818 s, 14,7 MB/s
dd: error writing ‘/dev/rsdb’: No space left on device
715128832 bytes (715 MB) copied, 17,1752 s, 41,6 MB/s
Maintenant, j'ai réalisé que j'ai écrasé 1 Go sur le disque dur que je suis démarré (en utilisant rsdb
). Je n'ai pas éteint mon ordinateur. Vraiment toutes les données sur ce lecteur? Puis-je récupérer quelque chose maintenant?
Voici mon /proc/partitions
:
8 0 156290904 sda
8 1 154218496 sda1
8 2 1 sda2
8 5 2069504 sda5
8 16 244198582 sdb
8 17 31457280 sdb1
8 18 20971520 sdb2
8 19 191768576 sdb3
8 32 2011136 sdc
8 33 2011135 sdc1
Vous avez détruit le premier ~ 1 Go, qui couvre la table de partition et la première liste de fichiers/répertoires de la partition. Vous pouvez toujours reconstruire la table de partition et trouver le SDB2 & SDB3 intact, cependant.
Exécutez ce script à partir d'un terminal et écrivez les rapports de début/de taille/de fin IT (juste au cas où):
for part in /sys/class/block/sdb[0-9]*; do
num=$(<$part/partition)
start=$(<$part/start)
size=$(<$part/size)
end=$((start+size-1))
echo "partition $num: start $start, size $size, end $end"
done
Ensuite, utilisez parted /dev/sdb
ou fdisk /dev/sdb
Pour créer manuellement les partitions correspondantes. Par exemple, si elle imprime:
partition 1: start 2048, size 204800, end 206847
ensuite, vous pouvez utiliser:
parted /dev/sdb mkpart primary 2048s 206847s
(Notez l'unité s
à la fin