ReLoad

Thierry Jaouen ~ WikiBlog
"Rien à foutre d'être lu, tant que je peux me relire."

Outils pour utilisateurs

Outils du site


blog:2013:02:14:dedibox_et_partition

Dedibox et partition

Le complément des infos là: http://www.thierry-jaouen.fr/dokuwiki/doku.php?id=dedibox

V'la que Dedibox créé par defaut une partition racine occupant *tout* le disk de 2To !

Comment réduire et éventuellement créer une nouvelle partition LVM (pour Xen par exemple).

:!: Le plus simple est surement avec un live CD Gparted

~~READMORE~~

Dedibox par défaut

On a d'abord ça aprés l'installation:

# fdisk -l /dev/cciss/c0d0

Disk /dev/cciss/c0d0: 2000.4 GB, 2000365379584 bytes
255 heads, 63 sectors/track, 243197 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000b721a

           Device Boot      Start         End      Blocks   Id  System
/dev/cciss/c0d0p1               1          25      194560   83  Linux
Partition 1 does not end on cylinder boundary.
/dev/cciss/c0d0p2              25      243073  1952284672   83  Linux
/dev/cciss/c0d0p3          243073      243198     1001472   83  Linux

Ou mieux:

# parted /dev/cciss/c0d0 print
Model: Compaq Smart Array (cpqarray)
Disk /dev/cciss/c0d0: 2000GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start   End     Size    Type     File system     Flags
 1      1049kB  200MB   199MB   primary  ext4
 2      200MB   1999GB  1999GB  primary  ext4
 3      1999GB  2000GB  1026MB  primary  linux-swap(v1)

Reduire

live CD

D'abord, modifier le BIOS ! (ou sinon, essayez via “F11” )

[F9] > Standard Boot Order (IPL)

… et modifier l'ordre pour avoir:

IPL:1 CD-ROM
IPL:2 USB DriveKey (C:)
IPL:3 PCI Embedded ...
etc...

Booter sur une live ISO Debian, via le VirtualMedia (pas trouvé plus simple).

$ sudo /bin/bash
# loadkeys fr

Voila en root et avec le clavier “FR” qui va bien.

Shrink

D'abord:

# e2fsck -f /dev/cciss/c0d0p2

Réduire le système de fichiers

Sur le système de fichiers (FS), quelle taille minimum possible ?

# resize2fs -P /dev/cciss/c0d0p2
resize2fs 1.41.12 (17-May-2010)
Estimated minimum size of the filesystem: 1158199

Soit: ( 1158199 * 4 )/1024 = 4524 MB ( 4,5 GB)

Maintenant, réduire le “systeme de fichiers” …

Mais nous, on va réduire a 19GB . Na!

# resize2fs -p /dev/cciss/c0d0p2 19G

Ceci fait, il faut réduire la partition a 20G .

:!: On laisse une marge d'erreur d'“1G” parce qu'une erreur d'arrondi est toujours possible et pourrait être fatale.

Maths

:!: je renonce a utiliser “fdisk” qui est en passe de devenir obsolete

Donc on actuellement:

# parted /dev/cciss/c0d0 unit s print
Model: Compaq Smart Array (cpqarray)
Disk /dev/cciss/c0d0: 3906963632s
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start        End          Size         Type     File system     Flags
 1      2048s        391167s      389120s      primary  ext4
 2      391168s      3904960511s  3904569344s  primary  ext4
 3      3904960512s  3906963455s  2002944s     primary  linux-swap(v1)

Il faut réduire /dev/cciss/c0d0p2 en 20GB.

Actuellement, c'est pas trop loin des 2TB. Vérifions:

$ echo $[3904960511-391168+1]
3904569344

(unité: secteur de 512 Octets)

$ echo $[(3904569344*512)/(1024*1024*1024)]
1861

(unité: Giga Octets)

Soit: 1,8 TB environ.

Pour avoir les 20GB , calculons combien de secteur de 512 Octets cela fait:

$ echo $[(20*1024*1024*1024)/512]
41943040

Donc, le secteur “End” de la partition /dev/cciss/c0d0p2 doit devenir:

$ echo $[391168+41943040-1]
42334207

Réduire partition

Notez 4 choses:

  • Le numéro de la partition: 2
  • Le numéro du 1er secteur: 391168
  • Le numéro du dernier qu'on vient de calculer: 42334207
  • Le type de “File System”: ext4

Supprimer les bornes de la partition (le contenu reste):

# parted /dev/cciss/c0d0 rm 2
Information: You may need to update /etc/fstab.

Dans la foulée, recréer avec les nouvelles bornes:

# parted /dev/cciss/c0d0 mkpart primary ext4 391168s 42334207s
Information: You may need to update /etc/fstab.

Un petit bilan:

# parted /dev/cciss/c0d0 print
Model: Compaq Smart Array (cpqarray)
Disk /dev/cciss/c0d0: 2000GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start   End     Size    Type     File system     Flags
 1      1049kB  200MB   199MB   primary  ext4
 2      200MB   21.7GB  21.5GB  primary  ext4
 3      1999GB  2000GB  1026MB  primary  linux-swap(v1)

Ça a l'air correct :-)

Ajuster le système de fichiers

Finalement, il y a un petit delta de secteurs a récupérer à la fin.

Donc:

# resize2fs -p /dev/cciss/c0d0p2
resize2fs 1.41.12 (17-May-2010)
Resizing the filesystem on /dev/cciss/c0d0p2 to 5242880 (4k) blocks.
Begin pass 1 (max = 8)
Extending the inode table     XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
The filesystem on /dev/cciss/c0d0p2 is now 5242880 blocks long.

Voila.

Swap

Ouai, mais le swap est mal placé… A la fin ???? c'est bien pourri on va changer ça trés simplement.

Qu'avons-nous:

# parted /dev/cciss/c0d0 unit s print
Model: Compaq Smart Array (cpqarray)
Disk /dev/cciss/c0d0: 3906963632s
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start        End          Size       Type     File system     Flags
 1      2048s        391167s      389120s    primary  ext4
 2      391168s      42334207s    41943040s  primary  ext4
 3      3904960512s  3906963455s  2002944s   primary  linux-swap(v1)

Il faut bien noter:

  • le numéro de la partition du swap, soit: 3
  • le numéro du premier secteur libre entre la partition 2 et 3 , soit: 42334208

Et donc, on va défaire et refaire aussitôt:

# parted /dev/cciss/c0d0 move 3 42334208s
WARNING: you are attempting to use parted to operate on (move) a file system.
parted's file system manipulation code is not as robust as what you'll find in
dedicated, file-system-specific packages like e2fsprogs.  We recommend
you use parted only to manipulate partition tables, whenever possible.
Support for performing most operations on most types of file systems
will be removed in an upcoming release.
End?  [22.7GB]? 

Aprés un avertissement un peu flippant … on a bien déplacer le swap :

# parted /dev/cciss/c0d0 unit s print
Model: Compaq Smart Array (cpqarray)
Disk /dev/cciss/c0d0: 3906963632s
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start      End        Size       Type     File system     Flags
 1      2048s      391167s    389120s    primary  ext4
 2      391168s    42334207s  41943040s  primary  ext4
 3      42334208s  44337151s  2002944s   primary  linux-swap(v1)

La 4ieme ligne de partition est bien libre, propre et ordonnée.

LVM

Création partition LVM ? Pourquoi pas.

Donc on a:

# parted /dev/cciss/c0d0 unit s print
Model: Compaq Smart Array (cpqarray)
Disk /dev/cciss/c0d0: 3906963632s
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start      End        Size       Type     File system     Flags
 1      2048s      391167s    389120s    primary  ext4
 2      391168s    42334207s  41943040s  primary  ext4
 3      42334208s  44337151s  2002944s   primary  linux-swap(v1)

On a besoin de :

  • du numéro du premier secteur aprés la dernière partition: 44337152
  • du dernier secteur existant sur le disk: 3906963631

On a va ajouter une nouvelle (et dernière partition) :

# parted /dev/cciss/c0d0 mkpart primary 44337152s 3906963631s
Information: You may need to update /etc/fstab.

Vérifions:

# parted /dev/cciss/c0d0 unit s print
Model: Compaq Smart Array (cpqarray)
Disk /dev/cciss/c0d0: 3906963632s
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start      End          Size         Type     File system     Flags
 1      2048s      391167s      389120s      primary  ext4
 2      391168s    42334207s    41943040s    primary  ext4
 3      42334208s  44337151s    2002944s     primary  linux-swap(v1)
 4      44337152s  3906963631s  3862626480s  primary

Mais il faut encore ajouter le flag “lvm”:

# parted /dev/cciss/c0d0 set 4 lvm on
Information: You may need to update /etc/fstab.

Voila.

Histoire de finir en beauté, on va effacer les premiers octets de la nouvelle partition (LVM) , afin qu'au prochain boot, elle soit ignorée tant qu'on ne l'aura pas formatée.

# dd if=/dev/zero of=/dev/cciss/c0d0p4 bs=512 count=1000
1000+0 records in
1000+0 records out
512000 bytes (512 kB) copied, 0.0397492 s, 12.9 MB/s

Voila !

blog/2013/02/14/dedibox_et_partition.txt · Dernière modification : 2013/02/14 15:49 de thierry