Algo que estaba discutiendo con un par de amigos y no pudimos resolverlo. En FreeBSD y OpenSolaris / Solaris cuando particiona una unidad, se crea una partición que cubre todo el disco:
da0s1c
c0d0s2
Por ejemplo, la salida de mi disco duro principal en mi servidor 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
¿Cuál fue el razonamiento detrás del uso de la partición 2? ¿Por qué no la partición 0? ¿En qué parte de la historia de Unix se decidió esto? ¿Qué característica heredada sirvió en ese momento? Con la partición GPT que desaparece por completo (de lo que he encontrado).
Solo algo interesante ...
Dado que ParoX mencionó la partición de estilo GPT y cómo Solaris lo representa en términos de diseño vtoc, aquí está la salida de uno de mis discos que es de 1 TB y está en una matriz ZFS, y se configuró automáticamente con 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
Respuestas:
En los viejos tiempos, hacíamos copias de seguridad usando "dd" de todo el disco. Por lo tanto, teníamos el segmento "c" para poder hacerlo todo con un solo comando.
Es por eso que existe el corte "c".
DD no es perfecto. Si un disco está lleno solo un 10%, pasa el 90% de su tiempo copiando bloques que son "basura" o (por ejemplo) se usan para "intercambio" (inútil para hacer una copia de seguridad). "dd" es una pérdida de tiempo a menos que su disco esté casi lleno o si, por alguna razón, necesita una copia exacta, bloque por bloque.
Todo esto fue antes de que la duplicación de disco RAID-0 y los administradores de volumen hicieran todo ese tipo de copia de partición por usted.
(Alguien mencionó "dump" en el segmento "c". Eso no funcionará. "Dump" es una copia de archivo por archivo [en realidad, inode por inode] para que no funcione).
Alguien más preguntó "por qué es c, no la primera partición o la última". La respuesta es "tradición". Solo puedo adivinar que Ken o Dennis (o posiblemente Bill Joy o Kirk McKusick) tenían una buena razón en ese momento. Supongo que habían usado las dos primeras etiquetas de partición para particiones reales. Entonces, un día alguien tuvo la idea de la partición superpuesta para hacer copias de seguridad y "c" fue la siguiente partición disponible. Como solo había 2-3 máquinas Unix en ese momento, hacer esto dos veces puede "establecer el estándar" que se usa por el resto del tiempo.
En este artículo se describe otro ejemplo de cómo los accidentes históricos se convierten en estándares que nunca funcionan: comprensión de la división bin, sbin, usr / bin, usr / sbin
fuente
Es el resultado de las rebanadas que tradicionalmente se presentan de la siguiente manera:
s0: raíz
s1: intercambio
s2: bkup
Asignaron lo más importante a la primera porción y continuaron con una importancia decreciente :) (¿Quién necesita intercambiar si no tiene una partición raíz? Además, ¿quién necesita hacer una copia de seguridad si no tiene datos?)
No sé cuándo se decidió exactamente esto (probablemente desde el principio; cada vez que los desarrolladores de Solaris deciden usar identificadores y segmentos de disco estilo Solaris).
El problema desaparece con GPT ya que el esquema de partición de estilo MBR no es aplicable. (Aunque personalmente no estoy familiarizado con cómo Solaris representa las particiones GPT ...)
Espero que esto haya ayudado a XD
================
Editar:
Ahora me tienes interesado. Publicaré algunos enlaces que encontré justo antes de irme a trabajar.
Libro de respuestas de Solaris 2.4 Sysadmin: divisiones habituales
Guía del usuario de Solaris 2.4: Administración periférica
Ambos documentos son de alrededor de 1994 y definen la creación de s2 como integrada en 'formato' incluso entonces. Tengo que seguir cavando XD!
fuente
Más información sobre esta pregunta:
De acuerdo con http://en.wikipedia.org/wiki/BSD_disklabel en FreeBSD, la partición c en un disco que también está en uso por otros sistemas operativos solo se extenderá a todo el segmento FreeBSD, y la partición d sería el disco duro completo !
FreeBSD Manual Disk Adding ver 18.3.1 número 3.
fuente
¿Por qué scsi id 3 era su disco de arranque predeterminado en Sun OS antiguo?
Todos esos momentos se perderán en el tiempo, como lágrimas en la lluvia.
fuente