{"id":809,"date":"2010-02-12T17:07:48","date_gmt":"2010-02-12T15:07:48","guid":{"rendered":"http:\/\/linux.leunen.com\/?p=809"},"modified":"2012-08-19T11:20:31","modified_gmt":"2012-08-19T09:20:31","slug":"sauvegarder-une-partition-entiere-avec-dd","status":"publish","type":"post","link":"https:\/\/www.leunen.com\/linux\/2010\/02\/sauvegarder-une-partition-entiere-avec-dd\/","title":{"rendered":"Sauvegarder une partition enti\u00e8re avec dd"},"content":{"rendered":"<p>La commande <em>dd<\/em> permet de sauvegarder un disque entier ou une partition sans devoir faire attention \u00e0 ce qu&rsquo;il y a effectivement sur le disque, \u00e0 sa structure. Il copie les donn\u00e9es se trouvant sur le disque physique sans se pr\u00e9occuper de savoir si il y a une ou plusieurs partitions ni comment elles sont format\u00e9es. De plus <em>dd<\/em> peut copier des secteurs du disque qui ne se trouvent pas sur une partition comme le <em>MBR<\/em> par exemple.<\/p>\n<p>Il est donc possible de sauvegarder un disque entier ou simplement une partition et donc, m\u00eame une partition Windows Vista par exemple. Et comme je suis un peu comme Saint Thomas, je ne crois que ce que j&rsquo;ai pu exp\u00e9rimenter, je me suis lanc\u00e9 dans la sauvegarde et la restauration d&rsquo;une partition contenant un Windows Vista en parfait \u00e9tat de marche. <\/p>\n<p>La premi\u00e8re chose que j&rsquo;ai faite, c&rsquo;est monter un disque dur externe sur <em>\/media\/disk<\/em>. Ce disque va servir \u00e0 recevoir la sauvegarde de ma partition. Ensuite j&rsquo;ai fait une sauvegarde du <em>MBR<\/em> parce qu&rsquo;on ne sait jamais! Si quelque chose se passe mal, je suis s\u00fbr d&rsquo;au moins pouvoir restaurer le <em>MBR<\/em> du disque avec la table des partitions:<\/p>\n<pre class=\"codesource\">\r\n$ sudo dd if=\/dev\/sda of=\/media\/disk\/mbr.bin bs=512 count=1\r\n<\/pre>\n<p>La commande <em>dd<\/em> permet de sauvegarder les donn\u00e9es par blocs. La taille du bloc est d\u00e9termin\u00e9e par le param\u00e8tre <em>bs<\/em> dans la commande. Dans le cas du <em>MBR<\/em>, celui-ci correspond au premier secteur du disque et fait 512 octets. On donnera donc au bloc la taille de 512. Par contre, lors de la sauvegarde d&rsquo;une partition ou d&rsquo;un disque entier, il peut \u00eatre int\u00e9ressant de donner au bloc une taille multiple de celle des blocs sur le disque. La plupart des disques sont constitu\u00e9s de blocs de 512 octets. D\u00e9finir une taille de 1024 ou 2048 permet d&rsquo;acc\u00e9l\u00e9rer la sauvegarde. Cr\u00e9er des blocs de taille plus grande ne sert \u00e0 rien d&rsquo;apr\u00e8s mes essais. <\/p>\n<p>L&rsquo;inconv\u00e9nient de <em>dd<\/em>, c&rsquo;est qu&rsquo;il copie absolument tout. M\u00eame les parties du disque non-utilis\u00e9es. Si votre partition fait 250GB, la sauvegarde fera aussi 250GB. Pour diminuer cette taille, nous pouvons compresser avec <em>gzip<\/em> les donn\u00e9es. Les essais que j&rsquo;ai fait sur une partition de 25GB donnaient une sauvegarde de 18GB. C&rsquo;est d\u00e9j\u00e0 mieux. Il peut \u00eatre aussi int\u00e9ressant de s&rsquo;assurer avant de formater le disque qu&rsquo;il contient bien des z\u00e9ros partout. De cette fa\u00e7on, les zones inutilis\u00e9es sont constitu\u00e9es de z\u00e9ros qui se compressent tr\u00e8s bien. D&rsquo;apr\u00e8s ce que j&rsquo;ai pu voir, c&rsquo;est d\u00e9j\u00e0 le cas des partitions NTFS et mes partitions ext3\/ext4 contenaient aussi des z\u00e9ros dans les zones inutilis\u00e9es. Mais pour \u00eatre s\u00fbr, remplissez le disque de z\u00e9ro avant tout formatage, cela diminuera la taille de la sauvegarde plus tard si cela s&rsquo;av\u00e8re n\u00e9cessaire. La commande suivante remplit le disque sda de z\u00e9ros:<\/p>\n<pre class=\"codesource\">\r\n$ sudo dd if=\/dev\/zero of=\/dev\/sda bs=1024k conv=noerror,sync\r\n<\/pre>\n<p><font color=\"#ff0000\"><strong>Attention: n&rsquo;utilisez la commande ci-dessus que si vous savez ce que vous faites. L&rsquo;utiliser sur un disque en utilisation, le remplira de z\u00e9ro et effacera toutes les donn\u00e9es du disque.<\/strong><\/font><\/p>\n<p>Autre inconv\u00e9nient de <em>dd<\/em>, \u00e7a prend du temps! Comme il copie tout, cela prend m\u00eame un temps fou. Trois quarts d&rsquo;heure pour ma partition de 25GB sur mon (vieux) syst\u00e8me.<\/p>\n<p>Passons maintenant \u00e0 la sauvegarde proprement dite. Je veux donc sauvegarder ma partition Vista se trouvant sur le disque <em>sda1<\/em>.<\/p>\n<pre class=\"codesource\">\r\n$ sudo dd if=\/dev\/sda1 bs=2048 conv=noerror,sync | pv | gzip -c > \/media\/disk\/sda1_backup.gz\r\n<\/pre>\n<p>La commande <em>pv<\/em> permet d&rsquo;avoir une indication de ce qui est d\u00e9j\u00e0 fait et de ce qui reste \u00e0 faire. La commande gzip avec l&rsquo;option -c envoie le r\u00e9sultat vers la sortie standard qui est redirig\u00e9e vers un fichier sur le disque externe mont\u00e9 dans <em>\/media\/disk<\/em>.<\/p>\n<p>Si par malheur un jour, vous devez restaurer la partition, il suffit de faire l&rsquo;op\u00e9ration inverse:<\/p>\n<pre class=\"codesource\">\r\n$ gunzip -c \/media\/disk\/sda1_backup.gz | pv | sudo dd of=\/dev\/sda1 bs=2048\r\n<\/pre>\n<p>Je vous l&rsquo;ai dit, cette commande <em>dd<\/em> permet tout aussi bien de sauvegarder un disque en entier. Il suffit dans les commandes ci-dessus de remplacer <em>\/dev\/sda1<\/em> par <em>\/dev\/sda<\/em>.<br \/>\nPour installer <em>pv<\/em> qui ne l&rsquo;est pas par d\u00e9faut, tapez:<\/p>\n<pre class=\"codesource\">\r\n$ sudo aptitude install pv\r\n<\/pre>\n<p>La commande <em>dd<\/em> copie \u00e0 l&rsquo;identique. Il faut donc, lors de la restauration, que le disque ou la partition soit d&rsquo;une taille suffisante pour recevoir l&rsquo;image du disque ou de la partition qui a \u00e9t\u00e9 sauvegard\u00e9e. <\/p>\n<p>Pour info, il existe une multitude d&rsquo;outils permettant de sauvegarder ou de cloner une partition ou un disque dur autre que <em>dd<\/em>. Les plus connus sont <em>PartImage<\/em> et <em>Clonezilla<\/em>. <\/p>\n","protected":false},"excerpt":{"rendered":"<p>La commande dd permet de sauvegarder un disque entier ou une partition sans devoir faire attention \u00e0 ce qu&rsquo;il y a effectivement sur le disque, \u00e0 sa structure. Il copie les donn\u00e9es se trouvant sur le disque physique sans se pr\u00e9occuper de savoir si il y a une ou plusieurs partitions ni comment elles sont [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[5],"tags":[],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.leunen.com\/linux\/wp-json\/wp\/v2\/posts\/809"}],"collection":[{"href":"https:\/\/www.leunen.com\/linux\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.leunen.com\/linux\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.leunen.com\/linux\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.leunen.com\/linux\/wp-json\/wp\/v2\/comments?post=809"}],"version-history":[{"count":6,"href":"https:\/\/www.leunen.com\/linux\/wp-json\/wp\/v2\/posts\/809\/revisions"}],"predecessor-version":[{"id":1285,"href":"https:\/\/www.leunen.com\/linux\/wp-json\/wp\/v2\/posts\/809\/revisions\/1285"}],"wp:attachment":[{"href":"https:\/\/www.leunen.com\/linux\/wp-json\/wp\/v2\/media?parent=809"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.leunen.com\/linux\/wp-json\/wp\/v2\/categories?post=809"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.leunen.com\/linux\/wp-json\/wp\/v2\/tags?post=809"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}