Étiquette : partx

6 novembre 2015 /

Voici un petit mémo pour moi même, qui détaille la façon d’augmenter la taille d’une partition lvm:

On va commencer par créer une partition de type lvm sur l’espace vide d’un disque, /dev/sda (dans un contexte hyperviseur):

fdisk /dev/sda

Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel with disk identifier 0x3657f1c2.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.

Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

On affiche la table de partition (vide sur un disque vierge)  avec la lettre « p« :

Command (m for help): p

Disk /dev/sda: 581.7 GB, 421474836480 bytes
16 heads, 183 sectors/track, 451610 cylinders, total 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x3567f1c2

 Device Boot Start End Blocks Id System
/dev/sda1 * * * * * *
/dev/sda2 * * * * * *

On crée une nouvelle partition avec « n »

Command (m for help): n

Puis on choisit une partition type « primary » (« p« )

Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p

On lui donne un numéro (chez moi, il y a déjà un sda1 et sda2 donc cela sera la sda3 « 3« ):

Partition number (1-4, default 1): 3
First sector (2048-41943039, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-41943039, default 41943039):
Using default value 41943039

On va maintenant changer le « type » de la partition, c’est a dire que l’on va indiquer que cette partition est une partition lvm (8e):

Command (m for help): t
Selected partition 3
Hex code (type L to list codes): 8e
Changed system type of partition 1 to 8e (Linux LVM)

8e est le code pour LVM.

On affiche la table de partition pour tout vérifier avant de réécrire la table :

Command (m for help): p

Disk /dev/sda: 21.5 GB, 21474836480 bytes
16 heads, 63 sectors/track, 41610 cylinders, total 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x3657f1c2

Device Boot Start End Blocks Id System
/dev/sda1 * * * * * *
/dev/sda2 * * * * * *
/dev/sda3 2048 41943039 20970496 8e Linux LVM

On a bien une partition de type « LVM ».

On peux enfin écrire la table:

Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: If you have created or modified any DOS 6.x
partitions, please see the fdisk manual page for additional
information.
Syncing disks
.

Pour une prise en charge de la nouvelle table sans redémarrer :

partx -v -a /dev/sda

Maintenant qu’on en a terminé avec le bas niveau, occupons-nous de LVM.

On commence par sauvegarder la configuration de LVM pour la restaurer en cas de problème:

vgcfgbackup mvg

Cela va créer un fichier /etc/lvm/backup/mvg qu’il nous sera utile en cas de problème.

On poursuit en initialisant maintenant la partition Lvm que l’on souhaite ajouté:

pvcreate /dev/sda3

Writing physical volume data to disk "/dev/sda3"
Physical volume "/dev/sda3" successfully created

On peut maintenant étendre le volume groupe « mvg » sur ce nouveau disque/partition:

vgextend mvg /dev/sda3

Volume group "mvg" successfully extended

Nous allons maintenant étendre le volume groupe à la totalité de l’espace libre de « mvg »:

lvextend -l +100%FREE /dev/mvg/LogVol02

Extending logical volume LogVol02 to 136.72 GiB
Logical volume LogVol02 successfully resized

En cas de problème, nous pouvons restaurer la configuration de LVM à l’état précédent grâce à la sauvegarde faite precedemment avec cette commande:

vgcfgrestore -f /etc/lvm/backup/mvg

Si tout est bon, il ne nous reste plus qu’à étendre le file système du volume logique (EXT2/3/4):

resize2fs /dev/mvg/LogVol02

resize2fs 1.41.12 (17-May-2010)
Filesystem at /dev/mvg/VolGroup00-LogVol02 is mounted on /; on-line resizing required
old desc_blocks = 2, new_desc_blocks = 9
Performing an on-line resize of /dev/mvg/VolGroup00-LogVol02 to 35840000 (4k) blocks.
The filesystem on /dev/mvg/VolGroup00-LogVol02 is now 35840000 blocks long.

Si la partition est en XFS, il faudra plutot passer par cette commande:

xfs_growfs /dev/mvg/LogVol02

meta-data=/dev/mvg/LogVol02 isize=512 agcount=4, agsize=1113856 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0 spinodes=0
data = bsize=4096 blocks=4455424, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 4455424 to 9697280

On peux maintenant savourer son travail avec un petit df -h.

 

 

 

30 juillet 2015 /

On commence par lister les disques détectés:

fdisk -l

Pour partitionner votre disque en ligne de commande, on utilise la commande fdisk suivie du nom du disque sur lequel vous voulez installer Linux, par exemple:

fdisk /dev/sda.

tapez m, afin d’accéder à la liste de toutes les commandes possibles.

fdisk3

On choisi les options à appliquer en entrant des lettres, généralement des initiales de ce pour quoi c’est programmé.

Les principales commandes de fdisk sont donc :

a   bascule le drapeau d'amorce
b   éditer l'étiquette BSD du disque
c   basculer le drapeau de compatibilité DOS
d   supprimer la partition
l   lister les types de partitions connues
m   afficher ce menu
n   ajouter une nouvelle partition de type linux native (ext2fs) par défaut.
o   créer une nouvelle table vide de partitions DOS
p   afficher la table de partitions
q   quitter sans enregistrer les changements
s   créer une nouvelle étiquette vide pour disque de type Sun
t   modifier l'identifiant de système de fichiers d'une partition (83 linux native, 82 linux swap).
u   modifier les unités d'affichage/saisie
v   vérifier la table de partitions
w   écrire la table sur le disque et quitter
x   fonctions avancées (pour experts seulement)

Rappel: rappelez-vous que le nombre de partitions dites primaires est limité à 4. Donc, si vous souhaitez définir plus de 4 partitions sur le même disque, l’une de ces 4 partitions primaires doit être définie comme étendue.

Pour regarder les partitions que nous avons sur notre disque, on tape  « p » dans la console :

fdisk2

On vas supprimer maintenant la partition  /dev/sdb1 comme cela :

fdisk4

Nous allons créer une partition primaire sur la totalité de l’espace:

fdisk5

Fdisk nous demande le type de partition ( » p  » pour primaire et  » e  » pour étendue):

fdisk6

Taper Entrer pour validez la valeur par defaut.

Pour sauvegarder et quitter l’utilitaire et créer la table des partitions sur le disque il suffit d’utiliser la lettre w :

fdisk7

Pour avoir une prise en compte des partitions créés sans avoir à redémarrer:

partx -v -a /dev/sdb

Si cela ne fonctionne pas, redémarrez votre machine….

Il ne vous reste plus qu’à créer le système de fichiers pour les partitions créés grâce à une commande de type mke2fs (ext2), mkreiserfs (ReiserFS), mkfs.ext4 (ext4).

Pour formater sa partition en ext3:

mkfs.ext3 -b 4096 /dev/sdb1

Pour formater sa partition en ext4:

mkfs.ext4 -b 4096 /dev/sdb1

Pour une partition swap:

mkswap /dev/sdb5

Il ne vous restera plus qu’à créer un point de montage, du genre mkdir /media/starmate, puis monter la partition dans ce répertoire, par exemple mount /dev/sdb1 /media/starmate.

28 juillet 2015 /

Pour lister les partitions existantes:

parted -l

Pour créer une partition, voici la marche à suivre sur /dev/sda:

parted /dev/sda

sda correspond au disque que l’on souhaite partitionner.

Cela nous faite rentrer dans le programme parted, l’invite de commande change.

Nous allons maintenant créer le label de la partition, ici GPT:
(parted) mklabel gpt

Ensuite nous plaçons type l’unité par default à TB (GB pour Giga):
(parted) unit TB

Pour créer une partition sur le disque entier:
(parted) mkpart primary 0 0

ou pour une partition de 300 Giga:
(parted) mkpart primary 0.00TB 300.00TB

Pour afficher les partitions:
(parted) print

Pour enregistrer et quitter:
(parted) quit

Pour avoir une prise en compte des partitions créés sans avoir à redémarrer:

partx -v -a /dev/sdb

Vous pouvez maintenant utiliser mkfs.ext3 ou mkfs.ext4 pour formater la partition:

mkfs.ext3 /dev/sdb1

ou

mkfs.ext4 /dev/sdb1