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

Shell et commandes GNU Discussion :

Commande dd : problème avec count


Sujet :

Shell et commandes GNU

  1. #1
    Membre très actif
    Homme Profil pro
    Inscrit en
    Février 2013
    Messages
    371
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2013
    Messages : 371
    Par défaut Commande dd : problème avec count
    bonjour,

    1)Plusieurs fois j'ai vu utilser cette commande dd suivante (e):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    sudo dd if=/dev/zero   of=/dev/sda  bs=512  count=20
    seulement la documentation de man dd mentionne que:
    count= copy only N input blocks

    et aussi parce que d'après cette page:
    https://blog.desdelinux.net/en/compl...h-dd-examples/

    2 commandes linux me posaient un léger problème:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
     
    (f) dd if = / dev / zero count = 1 bs = 1024 seek = 1 of = / dev / sda6 - » Destroy the superblock
     
    dd if = / dev / zero count = 1 bs = 4096 seek = 0 of = / dev / sda5 - » Another way to destroy the superblock


    problème résolu car d'après (f)

    count=1 signifie que 0 prend 1 bloc donc là count est bien le nombre de bloc d'entrée et non le nombre de blocs de sortie.

    oui mais si (f) écrit 1 bloc de taille bs de zéros sur /dev/sda6 à partir du 1er bloc(seek=1),les blocs suivants le 2nd bloc de /dev/sda6 ne seront pas détruits ! Donc en quoi le superblock est-t-il détruit?

    Donc pour être plus précis,cette commande (e) écrit 20 blocs de 512 octets de zéros sur sda
    Est-ce bien cela?

    Il n'y a pas dans la doc de count pour output blocks
    Devons-nous en déduire que :
    count=input count=outpout count?

    2)si on écrit:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    sudo dd if=/dev/zero   of=/dev/sda1  bs=512  conv=notrunc
    le MBR de sda est-il préservé?(pas détruit par les zéros) car je n'ai touché que la partition sda1

    ce qui sous-entend que si j'écris:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    sudo dd if=/dev/zero   of=/dev/sda  bs=512  conv=notrunc

    tout est mis à zéros y compris le MBR du secteur initial


    merci de votre aide

  2. #2
    Responsable Systèmes


    Homme Profil pro
    Gestion de parcs informatique
    Inscrit en
    Août 2011
    Messages
    18 258
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Gestion de parcs informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Août 2011
    Messages : 18 258
    Par défaut
    Il n'y a pas dans la doc de count pour output blocks
    Normal, il y a autant d'octets écrits que d'octets lus. Ce nombre dépendant de count multiplié par bs. Sans prendre en compte les options de décalage skip en entrée seek en sortie.

    sda représente tout le disque, sda1 la 1ère partition, donc oui faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sudo dd if=/dev/zero   of=/dev/sda1  bs=512  conv=notrunc
    va effacer sda1 mais ne pas toucher le MBR

    Par contre, je ferais attention si il y a un sda2, normalement dd devrait s'arrêter à la fin de sda1, mais prudence.

    Et attention, maintenant on utilise GPT.
    Ma page sur developpez.com : http://chrtophe.developpez.com/ (avec mes articles)
    Mon article sur le P2V, mon article sur le cloud
    Consultez nos FAQ : Windows, Linux, Virtualisation

  3. #3
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 657
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 657
    Par défaut
    j'avais une machine, qui intervertissait les disques selon son bon plaisir, sous SysVinit.
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  4. #4
    Membre très actif
    Homme Profil pro
    Inscrit en
    Février 2013
    Messages
    371
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2013
    Messages : 371
    Par défaut
    "oui mais si (f) écrit 1 bloc de taille bs de zéros sur /dev/sda6 à partir du 1er bloc(seek=1),les blocs suivants le 2nd bloc de /dev/sda6 ne seront pas détruits ! Donc en quoi le superblock est-t-il détruit?"

  5. #5
    Expert confirmé
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    11 123
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 11 123
    Par défaut
    Citation Envoyé par tabkelm Voir le message
    "oui mais si (f) écrit 1 bloc de taille bs de zéros sur /dev/sda6 à partir du 1er bloc (seek=1), les blocs suivant le 2nd bloc de /dev/sda1 ne seront pas détruits !"
    Encore heureux ! Manquerait plus que ça... Et puis d'abord, pourquoi le seraient-ils ? Comment pourraient-ils l'être ?
    Est-ce que tu comprends ce que tu as écrit ?


    Citation Envoyé par N_BaH Voir le message
    j'avais une machine, qui intervertissait les disques selon son bon plaisir, sous SysVinit.
    Jamais connu ça en 20 ans de SysVinit, il suffit que je découvre systemd opérationnel pour que les ennuis commencent. Oui je sais, la coïncidence est le pire ennemi de la vérité. Et pourtant, c'est ce que j'ai vécu au démarrage de la nouvelle machine.
    Pour me sortir de cet enfer il m'a fallu créer un nouveau noyau où les pilotes disque sont compilés en dur et non pas en modules.

  6. #6
    Membre très actif
    Homme Profil pro
    Inscrit en
    Février 2013
    Messages
    371
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2013
    Messages : 371
    Par défaut
    je me suis trompé:
    "oui mais si (f) écrit 1 bloc de taille bs de zéros sur /dev/sda6 à partir du 1er bloc(seek=1),les blocs suivants le 2nd bloc de /dev/sda6 ne seront pas détruits ! Donc en quoi le superblock est-t-il détruit?"

Discussions similaires

  1. [commande ls] Problème avec tri
    Par Orlyn dans le forum Débuter
    Réponses: 2
    Dernier message: 03/07/2008, 10h32
  2. Problème avec COUNT
    Par knoodrake dans le forum Langage SQL
    Réponses: 2
    Dernier message: 18/04/2008, 09h56
  3. Problème avec COUNT() et la récupération des valeurs..
    Par Marshall_Mathers dans le forum Outils
    Réponses: 4
    Dernier message: 25/06/2007, 12h26
  4. Problème avec COUNT
    Par LhIaScZkTer dans le forum Requêtes
    Réponses: 2
    Dernier message: 22/01/2006, 02h16
  5. Access/SQL : Problème avec Count
    Par Taurëndil dans le forum Langage SQL
    Réponses: 2
    Dernier message: 13/01/2005, 15h49

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