Quelle est la partition maximale prise en charge sous Linux?


8

Puis-je connaître la taille de partition maximale prise en charge par un système Linux. Et combien de partition logique et primaire que nous pouvons créer sur un disque installé par le système Linux?


2
Cela dépend du type de table de partition, gpt ou mbr, de l'utilisation de LVM ou non, puis du système de fichiers. Vous devez être plus précis sur ces détails dans votre question pour que quiconque puisse vous donner une réponse utile.
bsd

1
Notez que pour les périphériques eMMC, le noyau Linux utilise MMC_BLOCK_MINORSpour limiter le nombre de partitions disponibles par périphérique (la valeur par défaut est 8).
Jérôme Pouiller

Réponses:


20

Combien de partitions

Je crois que d'autres personnes, plus rapides et meilleures, ont déjà parfaitement répondu à cette question. :)

Il y a toujours une limite de plus

Pour la discussion suivante, n'oubliez pas que les limites sont théoriques. Les limites réelles sont souvent inférieures aux limites théoriques car soit

  • d'autres limites théoriques contraignent les choses. (Les PC sont des choses très, très complexes de nos jours)
  • il y a toujours plus de bugs. (cette réponse n'est pas exclue)

Lorsque les limites sont violées

Ce qui se passe lorsque ces limites sont violées n'est pas simple non plus. Par exemple, à l'époque des disques de 10 Go, vous pouviez avoir des partitions de plusieurs gigaoctets, mais certaines machines ne pouvaient pas démarrer le code stocké après le 1 024e cylindre. C'est pourquoi tant d'installateurs Linux insistent toujours sur une petite partition / boot distincte au début du disque. Une fois que vous avez réussi à démarrer, tout allait bien.

Taille des partitions: table de partition MS-DOS (MBR)

MS-DOS stocke les partitions dans un format (de départ, de taille), chacune ayant une largeur de 32 bits. Chaque numéro utilisé pour coder les coordonnées du secteur de la culasse dans l'ancien temps. Maintenant, il inclut simplement un numéro de secteur arbitraire (le disque gère la traduction de celui-ci en coordonnées spécifiques au support). La source du noyau pour le type de partition «MS-DOS» suggère des tailles de partition de 32 bits de large, en secteurs. Ce qui nous donne 2 ^ 32 * 512, ou 2 ^ 41 octets, ou 2 ^ 21 mégaoctets binaires, ou 2 097 152 mégaoctets, ou 2 048 gigaoctets, ou 2 téraoctets (moins un secteur).

Table de partition GUID (GPT)

Si vous utilisez l'étiquette de disque GUID Partition Table (GPT), votre table de partition est stockée en tant que paire (début, fin). Les deux ont une longueur de 8 octets (64 bits), ce qui permet beaucoup plus que vous n'en utiliserez probablement: 2 ^ 64 secteurs de 512 octets, ou 2 ^ 73 octets (8 zettaoctets binaires), ou 2 ^ 33 téraoctets .

Si vous démarrez à partir d'une ROM UEFI plutôt que du BIOS traditionnel de l'ère CP / M, vous avez déjà GPT. Sinon, vous pouvez toujours choisir d'utiliser GPT comme étiquette de disque. Si vous avez un nouveau disque, vous devriez vraiment le faire.

Tailles de secteur

Un secteur fait 512 octets depuis longtemps. Il est défini pour passer à 4 096 octets. De nombreux disques l'ont déjà, mais émulent des secteurs de 512 octets. Lorsque le changement arrive au premier plan et que l'unité d'allocation devient 4096 secteurs d'octets, et que les LBA traitent 4096 secteurs d'octets, toutes les tailles ci-dessus changeront de 3 ordres de grandeur binaires: multipliez-les toutes par 8 pour obtenir les nouvelles valeurs effrayantes.

Gestionnaire de volumes logiques

Si vous utilisez LVM, le volume que vous créez doit également être pris en charge par LVM, car il se situe entre vos partitions et vos systèmes de fichiers. Selon la FAQ LVM2 , LVM2 prend en charge jusqu'à 8EB (exaoctets) sous Linux 2.6 sur des architectures 64 bits; 16 To (téraoctets) sous Linux 2.6 fonctionnant sur des architectures 32 bits; et 1 To sous Linux 2.4.

Limites du système de fichiers

Bien sûr, ce sont les limites de taille par partition (ou volume LVM), c'est ce que vous demandez. Mais le but d'avoir des partitions est généralement de stocker des systèmes de fichiers, et les systèmes de fichiers ont leurs propres limites. En fait, les types de limites d'un système de fichiers dépendent du système de fichiers lui-même! Les seules limites globales sont la taille maximale du système de fichiers et la taille maximale de chaque fichier qu'il contient.

EXT4 permet des partitions jusqu'à 16 To par fichier et 1EB (exaoctet) par volume. Cependant, il utilise des numéros de bloc 32 bits, vous devez donc augmenter la taille de bloc par défaut de 4 096 octets. Cela peut ne pas être possible sur votre noyau et votre architecture, donc 16 To par volume peuvent être plus réalistes sur un PC.

ZFS autorise les fichiers 16EB et les volumes 16EB, mais il a sans aucun doute ses propres limites imprévues.

Wikipedia a un très joli tableau de ces limites pour la plupart des systèmes de fichiers connus de l'homme .

En pratique

Si vous utilisez Linux 2.6 ou une version plus récente sur des machines 64 bits et des partitions GPT, il semble que vous ne devez vous soucier que du choix du système de fichiers et de ses limites. Même alors, cela ne devrait vraiment pas vous inquiéter autant. Vous ne devriez probablement pas créer de fichiers uniques de 16 To de toute façon, et 1 exaoctet (1 048 576 To) sera une limitation surréaliste pendant un certain temps. Si vous utilisez MBR et avez besoin de plus de 2 téraoctets binaires, vous devez basculer vers UEFI et GPT car vous travaillez sous une limite de 2 To par partition (cela peut être moins que trivial sur un ordinateur déjà déployé)

Veuillez noter que je suis un vieux pet, et j'utilise des unités binaires lorsque je calcule des multiples de puissances de deux. Les fabricants de disques aiment tricher (et nous ont convaincus qu'ils l'ont toujours fait, même si nous savons qu'ils ne l'ont pas fait) en utilisant des unités décimales. Ainsi, le plus gros disque de «2 To» est toujours plus petit que 2 téraoctets binaires, et vous n'aurez aucun problème. Sauf si vous utilisez LVM ou RAID-0.


En fait, les périphériques étiquetés MS-DOS ne peuvent pas dépasser 16 To.
wazoox

Qu'est-ce qui l'impose? Je sais que cela (ou une limite similaire) doit être là, car je viens de déployer trois serveurs avec UEFI / GPT car ils sont livrés avec des disques 12 × 2 To et Dell a supposé que nous allions faire une seule partition à partir du lot (!). Mais je ne peux pas pour la vie de moi voir où cela pourrait être entre le bloc de disque et le noyau. Est-ce une limitation de démarrage du BIOS ou quelque chose?
Alexios

@wazoox, la table de partition MS-DOS utilise des numéros de secteur 32 bits, donc dépasse 2 To pour des secteurs de 512 octets, pas 16 To.
psusi

1
@psusi, oui, c'est vrai. En fait, je n'ai pas utilisé d'étiquette MS-DOS depuis 2006 environ :) Alexios, sous Linux, vous pouvez mettre une étiquette MS-DOS sur un périphérique (disque ou matrice RAID) de n'importe quelle taille, mais seulement 2 To sont adressables (n'importe quoi plus de 2 To ne seront pas utilisables). Personne ne devrait plus utiliser d'étiquettes MS-DOS, c'est vraiment une relique obsolète.
wazoox

1
@wazoox, il est requis pour Windows sur les systèmes non UEFI, mais encore une fois, Windows est également une relique obsolète;)
psusi

8

Il y a deux limites. Le support est sous Linux, l'autre est le nombre maximum dans le schéma de table de partition utilisé: Cela dépend si vous utilisez le MBR hérité ou le GPT plus récent .

MBR prend en charge quatre partitions principales. L'un d'eux pourrait être une partition d'extension qui peut contenir un nombre arbitraire de partitions logiques limitées uniquement par votre espace disque.

GPT prend en charge jusqu'à 128 partitions "principales".

Autrefois, Linux ne prenait en charge que 63 partitions sur IDE et 15 sur les disques SCSI en raison du nombre limité de périphériques. Aujourd'hui, le noyau peut allouer dynamiquement des numéros de périphérique (udev est le mot-clé), donc ces limites ne devraient plus être valides.


4

Ce n'est pas lié au système d'exploitation lui-même, mais au schéma de partition utilisé.

L'introduction de la gpart page de manuel de FreeBSD l' a très bien.

Fondamentalement, vous avez:

  • Schéma "MBR" qui est l'ancienne méthode "DOS" avec, comme vous l'avez dit, des partitions "primaires" (jusqu'à 4) et des partitions logiques (pas de limites réelles - pour autant que je sache).
  • Schéma "Intel EFI / GPT", la nouvelle façon de faire, avec seulement des partitions "primaires" et pratiquement aucune limite.

Donc en fait, pas de réelles différences avec votre box Windows standard.


0

Selon Wikipedia , le noyau prend en charge des systèmes de fichiers allant jusqu'à 16 To, de sorte que c'est la plus grande qu'une partition puisse être et être encore pleinement utilisée. Bien entendu, tous les systèmes de fichiers ne prennent pas en charge l'intégralité des 16 To.


2
Fredonner. Le noyau Linux 32 bits prend en charge jusqu'à 16 To, mais la plupart des systèmes ont 64 bits depuis des années. Je crée régulièrement des serveurs de stockage avec des partitions de 77 To et des systèmes de fichiers encore plus gros.
wazoox
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.