IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Applications et environnements graphiques Discussion :

dd : continuer après des erreurs


Sujet :

Applications et environnements graphiques

  1. #1
    Membre confirmé Avatar de YuGiOhJCJ
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2005
    Messages
    206
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2005
    Messages : 206
    Par défaut dd : continuer après des erreurs
    Bonjour,

    J'utilise dd (coreutils) 8.11 sur un système d'exploitation GNU/Linux.

    J'essaye de nettoyer un disque dur de 160 Go mais j'obtiens une erreur et dd ne veut pas continuer l'opération :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $ sudo dd if=/dev/zero of=/dev/sdb conv=noerror,sync
    dd: writing to `/dev/sdb': Input/output error
    6160537+0 records in
    6160536+0 records out
    3154194432 bytes (3.2 GB) copied, 209.528 s, 15.1 MB/s
    Seulement 3,2 Go ont été copiés...

    Pourtant, l'option "conv=noerror" utilisée, d'après la description dans le man, devrait être prise en compte...

    Avez-vous une idée sur comment forcer dd à continuer après des erreurs?

    Merci.

  2. #2
    Membre émérite
    Avatar de f-k-z
    Homme Profil pro
    Ingénieur sécurité
    Inscrit en
    Juin 2006
    Messages
    403
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur sécurité
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juin 2006
    Messages : 403
    Par défaut
    Yopyop,

    As-tu testé avec la commande suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dd if=/dev/zero of=/dev/sdb  conv=notrunc,noerror
    Car de mémoire l'option sync est prioritaire sur l'option noerror.

    Cordialement,

    Fiki

  3. #3
    Membre confirmé Avatar de YuGiOhJCJ
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2005
    Messages
    206
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2005
    Messages : 206
    Par défaut
    Même problème :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $ sudo dd if=/dev/zero of=/dev/sdb  conv=notrunc,noerror
    dd: writing to `/dev/sdb': Input/output error
    6160537+0 records in
    6160536+0 records out
    3154194432 bytes (3.2 GB) copied, 197.022 s, 16.0 MB/s
    Sur la mailing-list de coreutils, on m'a dit que continuer après des erreurs est une fonctionnalité qui n'est pas encore implémentée pour dd.

    On m'a donc conseillé d'utiliser l'un de ces outils :
    -shred
    -dd_rescue
    -GNU ddrescue

    Je vais regarder ce qu'il en est...
    Je vous tiens au courant

  4. #4
    Expert confirmé Avatar de frp31
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2006
    Messages
    5 196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juillet 2006
    Messages : 5 196
    Par défaut
    par definition il ne faut JAMAIS quelque soit le domaine, poursuivre sur une erreur, il faut la corriger... (au pire la contourner meme si en informatique ca genere des problemes souvent pires)

    ======================================

    vu ce que tu essayes de faire ça semble logique que ca plante puisque tu n'utilises pas de block size fixe ni de count pour éviter de tomber sur un block incomplet en fin de media...

    tu devrais les forcer

    dd .............. bs=512 count=ce que tu veux comme nombre de blocks de 512

    l'autre probabilité est que ton noyau soit un 32 bits pur
    sans PAE et que donc c'est la mémoire qui manque en allocation à 3.2Go (sur 4G de ram par exemple) et que le dd qui essayes de prendre de l'avance en RAM pour bufferiser finisse donc out-of-memory

    ======================================

    quoi qu'il en soit pour nettoyer un disque il y a beaucoup plus rapide et efficace.

    il s'agit de purger la table de partition et de creer un rawformat sur le disque.

    ou encore d'utiliser disklabel -z media (si dispo) et de créer une table de partition aleatoire et de recommencer 4* cette procedure

    il n'est pas utile de formater les partition crées

    avec ça le disque est plus que néttoyé...

  5. #5
    Membre confirmé Avatar de YuGiOhJCJ
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2005
    Messages
    206
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2005
    Messages : 206
    Par défaut
    Merci pour ces astuces supplémentaires

    J'ai essayé cette solution qui a fonctionné :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $ sudo shred -n0 -z -v /dev/sdb
    [...]
    shred: /dev/sdb: pass 1/1 (000000)...149GiB/150GiB 99%
    shred: /dev/sdb: fdatasync failed: Input/output error
    shred: /dev/sdb: pass 1/1 (000000)...150GiB/150GiB 100%
    shred: /dev/sdb: fdatasync failed: Input/output error
    Même si l'on voit apparaitre le message d'erreur à la fin de l'opération, le nettoyage a été effectué sur tout le disque contrairement à dd.

    Problème résolu.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 29/11/2011, 21h35
  2. Réponses: 26
    Dernier message: 24/02/2010, 17h00
  3. Continuer apres une erreur
    Par wmenant dans le forum VBScript
    Réponses: 8
    Dernier message: 16/09/2008, 21h55
  4. Réponses: 7
    Dernier message: 14/04/2008, 17h13
  5. [Exécution fichier SQL] Continuer après une erreur
    Par banzzai dans le forum Requêtes
    Réponses: 1
    Dernier message: 08/09/2006, 16h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo