GNU/Linux >> Tutoriels Linux >  >> Linux

Changer le numéro de la partition de sda1 à sda2

Je viens de le faire d'une manière plus simple :

# sfdisk -d /dev/sdb > sdb.bkp

laissez une copie par sécurité

# cp sdb.bkp sdb.new 

maintenant éditez sdb.new en changeant UNIQUEMENT l'ordre des lignes et les numéros de partition, comme dans mon cas :

de

# partition table of /dev/sdb
unit: sectors

/dev/sdb1 : start=  1026048, size=975747120, Id=83
/dev/sdb2 : start=     2048, size=   204800, Id=83
/dev/sdb3 : start=   206848, size=   819200, Id= b
/dev/sdb4 : start=        0, size=        0, Id= 0

à

# partition table of /dev/sdb
unit: sectors

/dev/sdb1 : start=     2048, size=   204800, Id=83
/dev/sdb2 : start=   206848, size=   819200, Id= b
/dev/sdb3 : start=  1026048, size=975747120, Id=83
/dev/sdb4 : start=        0, size=        0, Id= 0

puis le renvoyer à la table de partition de disque ?

# sfdisk /dev/sdb < sdb.new

Ma séquence de numérotation a été mutilée après avoir rétréci et déplacé à droite la seule partition (sdb1) pour ajouter deux partitions plus petites au début du disque en utilisant gparted .

Si la dernière commande ne fonctionne pas, comme dans mon cas, changez-la pour :

# sfdisk --no-reread -f /dev/sdb < sdb.new

Pour info, c'est une mauvaise idée et vous pouvez tout perdre. Si vous souhaitez toujours le faire, voici les étapes :

  1. Ne pas fais le. Si cela ne vous aide pas, alors :
  2. Utilisez le sfdisk outil :Tout d'abord, effectuez une sauvegarde de la table de partition à l'aide de

    sfdisk -d /dev/sda > sda.out
    

    Alors allez-y :

    sfdisk /dev/sda -O sda-partition-sectors.save
    

    Vous verrez quelque chose comme ça

    Checking that no-one is using this disk right now ...
    OK
    
    Disk /dev/sda: 1018 cylinders, 124 heads, 62 sectors/track
    Old situation:
    Units = cylinders of 3936256 bytes, blocks of 1024 bytes, counting from 0
    
       Device Boot Start     End   #cyls    #blocks   Id  System
    /dev/sda1          0+      5       6-     23063+  83  Linux
    /dev/sda2          6    1017    1012    3890128   83  Linux
    /dev/sda3          0       -       0          0    0  Empty
    /dev/sda4          0       -       0          0    0  Empty
    Input in the following format; absent fields get a default value.
    <start> <size> <type [E,S,L,X,hex]> <bootable [-,*]> <c,h,s> <c,h,s>
    Usually you only need to specify <start> and <size> (and perhaps <type>).
    
    /dev/sda1 :
    

Maintenant, il vous demande de donner les nouveaux détails de la partition 'sda1'. Vous devez donc donner les numéros de sda2 ici. Donc, je mets '6 1012' ici et j'appuie sur Entrée :

    /dev/sda1 :6 1012
    /dev/sda1          6    1017    1012    3890128   83  Linux
    /dev/sda2 :

Maintenant vérifiez si les chiffres imprimés après avoir appuyé sur Entrée sont exacts identiques à ceux imprimés précédemment pour sda2. Si tout va bien, continuez en donnant les nouveaux numéros pour sda2 :

    /dev/sda2 :0
    /dev/sda2          0+      5       6-     23063+  83  Linux
    /dev/sda3 :

Cette fois, il suffisait d'entrer "0" dans mon cas - mais vous devez vous assurer que les chiffres ne sont pas foirés dans le vôtre.

Ensuite, continuez avec les autres partitions de la même manière. Si vous avez déjà atteint la fin du disque, appuyer sur Entrée suffit. Enfin, vérifiez à nouveau que tous les nombres sont corrects et enregistrez la table de partition (ou non). Si vous avez raté quelque chose, jetez un œil à man sfdisk et les descriptions des options '-d', '-O' et '-I'.

Notez également qu'une fois que vous avez effectué les modifications les plus folles, vous devrez peut-être exécuter "sync" pour que les partitions soient relues avant d'essayer de les monter.


Toutes les solutions existantes semblent très sûres, mais par conséquent assez compliquées.

Je voulais commander à nouveau tous mes partitions pour qu'elles soient en ordre.

Si vous êtes plus expérimenté, que vous avez des données non essentielles ou sauvegardées et que vous êtes heureux de résoudre les problèmes qui en résultent, vous pouvez démarrer à partir d'un Live CD et procédez comme suit :

sudo fdisk /dev/sdX

puis :

  • x pour entrer en mode expert
  • f pour fixer l'ordre des lecteurs (éventuellement i pour ignorer les avertissements si nécessaire)
  • r pour revenir au mode normal
  • w pour écrire les modifications sur le disque et quitter

Supplémentaire

Je ne me souviens pas exactement des étapes suivantes car je ne l'ai fait qu'une seule fois et je n'ai pas retesté, mais comme je déplaçais également l'installation, j'ai également monté les partitions et copié tous les fichiers :

sudo mkdir /mnt/sda4
sudo mount /dev/sda4 /mnt/sda4
sudo mkdir /mnt/sda5
sudo mount /dev/sda5 /mnt/sda5
date;cp -a /mnt/sda4/* /mnt/sda5;date

Et puis j'ai obtenu les identifiants de partition :

sudo blkid

et mis à jour les éléments suivants pour refléter les nouvelles valeurs UUID des partitions :

  • /mnt/sda5/boot/grub/grub.cfg
  • /mnt/sda5/etc/fstab

J'ai ensuite mis à jour GRUB2 :

sudo grub-install --root-directory=/mnt/sda5 /dev/sda

Linux
  1. Linux - Comment démarrer une partition Windows à partir de la ligne de commande Grub ?

  2. La boucle ignore le changement de variable d'un sous-shell en arrière-plan ?

  3. Modifier le numéro de port du serveur SSH par défaut

  4. Comment changer le nombre de commandes stockées dans l'historique de Bash

  5. Comment changer le noyau par défaut (démarrer à partir de l'ancien noyau) dans CentOS/RHEL 8

Comment faire un tracé graphique d'une séquence de nombres à partir de l'entrée standard ?

Comment changer le schéma de partition sur votre serveur Linux ?

Comment changer le nouveau répertoire de fenêtre par défaut à partir du tmux

Est-il acceptable d'utiliser mkfs sans numéro de partition ?

Impossible de monter sda1 :le périphérique '/dev/sda1' ne semble pas avoir un NTFS valide.

Comment changer la partition swap sous Linux ?