Quelque chose que je discutais avec quelques amis et nous n'avons pas pu le comprendre. Dans FreeBSD et OpenSolaris / Solaris lorsque vous partitionnez un lecteur, une partition est créée qui couvre tout le disque:
da0s1c
c0d0s2
Par exemple, la sortie de mon disque dur principal sur mon serveur OpenSolaris:
[email protected]:/dev/rdsk# prtvtoc /dev/rdsk/c4d0s2
* /dev/rdsk/c4d0s2 partition map
*
* Dimensions:
* 512 bytes/sector
* 63 sectors/track
* 255 tracks/cylinder
* 16065 sectors/cylinder
* 7296 cylinders
* 7294 accessible cylinders
*
* Flags:
* 1: unmountable
* 10: read-only
*
* Unallocated space:
* First Sector Last
* Sector Count Sector
* 0 16065 16064
*
* First Sector Last
* Partition Tag Flags Sector Count Sector Mount Directory
0 2 00 16065 117145980 117162044
2 5 01 0 117178110 117178109
8 1 01 0 16065 16064
Quel était le raisonnement derrière l'utilisation de la partition 2? Pourquoi ne pas partitionner 0? Où dans l'histoire d'Unix cela a-t-il été décidé? Quelle fonction héritée a-t-elle utilisée à ce moment-là? Avec le partitionnement GPT qui disparaît complètement (de ce que j'ai trouvé).
Juste quelque chose d'intéressant ...
Étant donné que ParoX a mentionné le partitionnement de style GPT et comment Solaris représente cela en termes de disposition de Vtoc, voici la sortie de l'un de mes disques qui est de 1 To et se trouve dans un tableau ZFS, et a été automatiquement configurée avec GPT:
[email protected]:~# prtvtoc /dev/rdsk/c5d0
* /dev/rdsk/c5d0 partition map
*
* Dimensions:
* 512 bytes/sector
* 1953520128 sectors
* 1953520061 accessible sectors
*
* Flags:
* 1: unmountable
* 10: read-only
*
* Unallocated space:
* First Sector Last
* Sector Count Sector
* 34 222 255
*
* First Sector Last
* Partition Tag Flags Sector Count Sector Mount Directory
0 4 00 256 1953503455 1953503710
8 11 00 1953503711 16384 1953520094
Réponses:
Dans le passé, nous faisions des sauvegardes en utilisant "dd" de tout le disque. Par conséquent, nous avions la tranche "c" afin que nous puissions tout faire avec une seule commande.
C'est pourquoi la tranche "c" existe.
DD n'est pas parfait. Si un disque n'est rempli qu'à 10%, vous passez 90% de votre temps à copier des blocs qui sont "indésirables" ou (par exemple) sont utilisés pour le "swap" (inutile d'être sauvegardé). "dd" est une perte de temps, sauf si votre disque est presque plein ou si, pour une raison quelconque, vous avez besoin d'une copie exacte, bloc par bloc.
Tout cela avant que la mise en miroir des disques RAID-0 et les gestionnaires de volumes n'effectuent tout ce type de copie de partition pour vous.
(Quelqu'un a mentionné "dump" sur la tranche "c". Cela ne fonctionnera pas. "Dump" est une copie fichier par fichier [en fait, inode par inode] donc cela ne fonctionnera pas.)
Quelqu'un d'autre a demandé "pourquoi est-ce c, pas la première partition ou la dernière". La réponse est "tradition". Je peux seulement deviner que Ken ou Dennis (ou peut-être Bill Joy ou Kirk McKusick) avaient une bonne raison à l'époque. Je suppose qu'ils avaient utilisé les deux premières étiquettes de partition pour les partitions réelles. Puis un jour, quelqu'un a eu l'idée de la partition de chevauchement pour faire des sauvegardes et "c" était la prochaine partition disponible. Puisqu'il n'y avait que 2 ou 3 machines Unix à l'époque, le faire deux fois peut "définir la norme" qui sera utilisée pour le reste du temps.
Un autre exemple de la façon dont les accidents historiques deviennent des normes qui ne disparaissent jamais est décrit dans cet article: Comprendre la répartition bin, sbin, usr / bin, usr / sbin
la source
C'est le résultat des tranches traditionnellement disposées comme suit:
s0: root
s1: swap
s2: bkup
Ils ont attribué la chose la plus importante à la première tranche et ont continué avec une importance décroissante :) (Qui a besoin de swap si vous n'avez pas de partition racine? De plus, qui a besoin de sauvegarder quoi que ce soit si vous n'avez pas de données.)
Je ne sais pas exactement quand cela a été décidé (probablement assez tôt; chaque fois que les développeurs Solaris ont décidé d'utiliser des identificateurs et des tranches de disque de style Solaris.)
Le problème disparaît avec GPT car le schéma de partition de style MBR n'est pas applicable. (Bien que je ne sache pas personnellement comment Solaris représente les partitions GPT ...)
J'espère que cela a aidé XD
================
Edit:
Maintenant, vous m'avez intéressé. Je posterai quelques liens que j'ai trouvés juste avant de partir travailler.
Guide de réponse de Solaris 2.4 Sysadmin: tranches personnalisées
Guide de l'utilisateur de Solaris 2.4: administration périphérique
Ces deux documents datent de 1994 environ et ils définissent la création de s2 comme étant intégrée au «format» même à cette époque. Je dois continuer à creuser XD!
la source
Plus d'informations sur cette question:
Selon http://en.wikipedia.org/wiki/BSD_disklabel sur FreeBSD, la partition c sur un disque qui est également utilisé par d'autres systèmes d'exploitation ne s'étendra qu'à l'ensemble de la tranche FreeBSD, et la partition d serait l'ensemble du disque dur !
Ajout manuel de disque FreeBSD voir 18.3.1 numéro 3.
la source
Pourquoi scsi id 3 était-il votre disque de démarrage par défaut dans le système d'exploitation Sun vintage?
Tous ces moments seront perdus dans le temps, comme des larmes sous la pluie.
la source