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

Administration système Discussion :

repartionner un disque en ligne de commande


Sujet :

Administration système

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de gKsam
    Profil pro
    Inscrit en
    Août 2007
    Messages
    166
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 166
    Par défaut repartionner un disque en ligne de commande
    Je cherche à reparitionner un disque (en fait n'importe quel disque) dans un script bash.

    Le but étant de faire une installation d'un système ubuntu automatisé.

    j'ai donc un disque d'une taille indéfinie que je veux partionner comme ci-dessous.

    1ère partition : swap (taille 1,5*mémoire vive)
    2ème partition (active) : ext3 (taille => la place qu'il reste sur le disque dur)

    j'ai régarder les manpages de fdsik et sfdisk mais cela reste encore flou dans ma petite tete

    (désolé pour les fautes d'accent mais vnc à du mal avec

  2. #2
    Membre confirmé Avatar de gKsam
    Profil pro
    Inscrit en
    Août 2007
    Messages
    166
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 166
    Par défaut la taille de la mémoire
    bon j'avance doucement,

    pour récupérer la taille de la mémoire vive en bytes.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    free -b | grep Mem: | tr -s " " | cut -f2 -d' '
    ici pour l'exemple : j'ai une mémoire vive de 2Gio ce qui donne => 2125307904 bytes

  3. #3
    Membre confirmé Avatar de gKsam
    Profil pro
    Inscrit en
    Août 2007
    Messages
    166
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 166
    Par défaut exemple de table de partition avec fsdisk
    pour ici c'est en sdb. Mais bon ça ce n'est pas le plus compliqué à détecter.

    Pour un disque de 20Gio et 2Go de mémoire. Là je l'ai fait avec qtparted pour voir ce que cela donne. J'ai mis en gras les valeurs qu'il faut trouver en fonction de la taille du disque.

    résultat d'un "sfdisk -d /dev/sdb"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    /dev/sdb1 : start=       63, size=  6329547, Id=82
    /dev/sdb2 : start=  6329610, size= 33511590, Id=83, bootable
    /dev/sdb3 : start=        0, size=        0, Id= 0
    /dev/sdb4 : start=        0, size=        0, Id= 0
    résultat d'un "fdisk -l -u /dev/sdb"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Disque /dev/sdb: 20.4 Go, 20404101120 octets
    255 heads, 63 sectors/track, 2480 cylinders, total 39851760 secteurs
    Units = secteurs of 1 * 512 = 512 bytes
    Disk identifier: 0x1cdb5ef2
     
    Périphérique Amorce    Début         Fin      Blocs    Id  Système
    /dev/sdb1              63     6329609     3164773+  82  Linux swap / Solaris
    /dev/sdb2   *     6329610    39841199    16755795   83  Linux
    hum!hum! ça avance. Mais est-ce dans le bon sens?

  4. #4
    Membre confirmé Avatar de gKsam
    Profil pro
    Inscrit en
    Août 2007
    Messages
    166
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 166
    Par défaut la suite des événements
    ça avance...

    pour trouver le nombre de blocks pour la partition swap:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    2125307904*1,5/512=6226488
    je retrouve bien mes 6329547 blocks. Là c'est de l'a peu prêt car avec qtparted la partition swap fait 3,02 GB

    pour trouver le nombre de block de ma partition principale / :

    39841200-6226488-63=33614649
    le 39841200 est obtenu par Cyl*Head*Sec => 2480*255*63

    Pour touver le début de ma partition principale :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    6226488-63=6226551
    Ce qui donne au final pour ma table de partion à donner à manger à sfdisk :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    /dev/sdb1 : start=       63, size=  6226488, Id=82
    /dev/sdb2 : start=  6226551, size= 33614649, Id=83, bootable
    /dev/sdb3 : start=        0, size=        0, Id= 0
    /dev/sdb4 : start=        0, size=        0, Id= 0
    Et bien maintenant il n'y a plus qu'a tester. On va tester!!!

  5. #5
    Membre confirmé Avatar de gKsam
    Profil pro
    Inscrit en
    Août 2007
    Messages
    166
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 166
    Par défaut bon ben c'est tout faut...
    comment calculer la taille de ces foutues partitions???

    Il faut que je tombe sur la fin d'un cylindre et impossible de trouver la formule...

    Je continu quand meme. De toute façon je n'ai pas le choix

  6. #6
    Membre confirmé Avatar de gKsam
    Profil pro
    Inscrit en
    Août 2007
    Messages
    166
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 166
    Par défaut ça y est c'est fait
    ça y est je crois que j'ai trouvé !!!

    Dans un fichier partionnement-disque.txt

    ensuite (et là c'était tout bête) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sfdisk /dev/sdb < partionnement-disque.txt
    C'était si simple que je m'en veux d'avoir passé toute la journée la dessus.

    J'en rigole mais ce doit-être nerveux.

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

Discussions similaires

  1. [WS 2008 R2] la commande "effacer le disque" en ligne de commande
    Par gretch dans le forum Windows Serveur
    Réponses: 6
    Dernier message: 03/03/2011, 18h11
  2. Comment compiler un projet en ligne de commande ?
    Par mathieutlse dans le forum EDI
    Réponses: 3
    Dernier message: 11/07/2003, 14h32
  3. Réponses: 3
    Dernier message: 07/04/2003, 21h06
  4. Récuperer Arguments sur la ligne de commande ?
    Par Muetdhiver dans le forum x86 16-bits
    Réponses: 9
    Dernier message: 20/01/2003, 22h01
  5. Analyser la ligne de commande
    Par benj29 dans le forum C
    Réponses: 14
    Dernier message: 19/11/2002, 05h13

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