fdisk: ¿lo necesito o puedo crear un sistema de archivos directamente?

9

Leí acerca de que fdisk es capaz de crear una partición / que consiste en descomponer un disco físico en varias particiones lógicas.

Si tengo la intención de utilizar todo el disco como un todo, ¿es necesario para mí?

1) para fdisk y crear una partición primaria que ocupe el tamaño de todo el disco o

2) ¿puedo seguir adelante y mkfs.ext4 sin hacer ningún fdisk?

3) Y por qué ->

Editado -> Después de leer todos los comentarios (de algunos sí y no), creo que sería bueno si alguien pudiera señalarme qué hace realmente fdisk. para que pueda entender más sobre por qué realmente lo necesitamos en comparación con si no lo necesitamos.

Intenté buscar en Google, pero la mayoría de los sitios te enseñan cómo fdisk, pero no por qué (o la mayoría de los motivos es crear un sistema de arranque dual), pero quiero saber por qué es necesario incluso para una sola partición.

También probé mkfs en un disco directamente y lo monté para almacenar datos y archivos (no parece tener ningún problema), por lo que esto me da aún más curiosidad sobre lo que realmente hace fdisk en el disco de almacenamiento.

Novato
fuente

Respuestas:

5

No, no lo necesitas . Su disco y sistema de archivos funcionarán bien sin la tabla de particiones. Algunos BSD anteriores incluso hicieron esto de manera predeterminada si seleccionó peligrosamente dedicado .

Sin embargo, es muy recomendable por razones de compatibilidad.


Algo más detallado:

Puede ejecutar mkfs.ext4 directamente en / dev / sdb. Que funcionará. Luego puede montar eso sin problemas. ( mkfs.ext4 -F -F /dev/sdb)

Puede configurar un disco de arranque de esta manera. Todavía requerirá algo de código para arrancar. Lo que significa que debes omitir el primer bit de los discos. (por ejemplo, el espacio utilizado clásicamente por el MBR y los pocos sectores tradicionales más allá de él). Eso técnicamente todavía no está usando MBR, aunque pierdes espacio equivalente.

Sin embargo, para cualquier configuración moderna, esos pocos sectores son una pequeña fracción de la capacidad de la unidad. Por lo tanto, recomiendo usar GPT (o en sistemas antiguos MBR). Pero se puede prescindir.

Hennes
fuente
Parece que mkfs.ext4 toma un parámetro -F para forzar la creación del sistema de archivos, incluso si parece que el objetivo no es una partición, ¡o incluso si el dispositivo objetivo parece estar montado! Creo que esto señala los riesgos inherentes al hacerlo ...
David W
Convenido. Y "esta opción debe especificarse dos veces" es una precaución secundaria.
Hennes
@Hennes He actualizado mi publicación original, espero que echen un vistazo
Noob
1
Compare fdisk para escribir un índice para un libro. La gente espera un índice y se confunde cuando no hay ninguno. Un libro sin índice y con una sola historia / capítulo seguirá funcionando.
Hennes
1

Necesita crear una tabla de particiones incluso si va a utilizar todo el disco físico. Piense en la tabla de particiones como la "tabla de contenido" para los sistemas de archivos, identificando las ubicaciones de inicio y finalización de cada partición, así como el sistema de archivos utilizado para ella.

David W
fuente
incluso si quisiera usar el almacenamiento como un dispositivo sin formato? Todavía necesito fdisk? Leí sobre fdisk creando particiones, pero no entiendo por qué es necesario
Noob
1
Si le entrego un disco con solo bytes sin procesar, y ninguna otra información, ¿cómo lo interpretaría para obtener datos de él? No pudiste. Es una simplificación excesiva, pero eso es lo que hace una tabla de particiones. Dice "Aquí es donde se almacenan los datos en el disco (iniciar / detener ubicación / cilindro / pista), y así es cómo está organizado (sistema de archivos)"
David W
En realidad, podrías. Toma un disquete. Asumimos una partición / volumen. Especificamos el sistema de archivos utilizado (ya que no tenemos MBR para decirnos qué se usa, necesitamos especificarlo manualmente o ingresarlo en / etc / fstab) y leer la información para el sistema de archivos. Ejemplo clásico: disquetes y FAT12.
Hennes
1
No hay información en la tabla de particiones estándar que no esté, o podría hacerse fácilmente, en el registro de inicio de volumen del sistema de archivos. Cualquier dependencia del software en una tabla de partición / MBR para reconocer y / o iniciar correctamente desde un sistema de archivos es completamente artificial.
kreemoweet
1
No, no necesita una tabla de particiones y no, se ignora el tipo de sistema de archivos como se indica en la tabla de particiones. En cambio, se utilizan secuencias bien definidas de bytes ("mágico") para determinar el tipo de sistema de archivos. Si quieres arrancar desde el disco, es algo diferente, por supuesto.
Daniel B
0

Usted podría crear un sistema de archivos en una unidad básica, pero es rara vez se va a trabajar. Algunos pendrives están organizados de esa manera. Pero para el disco duro no quieres.

Si va a ser su unidad principal / única, no será arrancable si la crea como tal. Lo que hace el BIOS es leer el primer sector de la unidad y ejecutarlo (también conocido como saltar a su primer byte). ¿Realmente no quieres ejecutar metadatos del sistema de archivos? Afortunadamente, no lo hará, ya que el BIOS contiene seguridad: los dos últimos bytes de ese sector deben ser 0x55 0xaa para que el BIOS considere la unidad como de arranque. Y usted tiene un sistema UEFI, es aún peor, ya que UEFI requiere una partición FAT distinta para funcionar.

Si va a ser su disco duro secundario, esto podría funcionar, pero aún se desaconseja: no funcionará la detección automática, la mayoría de las herramientas le dirán que el disco no está formateado y requiere particiones (lo que destruirá sus datos).

Por otra parte, a veces es posible hacerlo, pero de una manera muy agresiva, que requiere un conocimiento complejo de la organización en disco de varios sistemas de archivos. Una vez he visto una descripción de una imagen que podría grabarse en un CD de arranque, en una unidad USB de arranque o incluso arrancada por Mac anterior, pero esto estaba en el nivel de 'Si pongo la longitud del sistema de archivos a xxx, cuando se ejecuta mediante otra arquitectura, se ejecuta como una comparación de registros inofensiva '.

Torinthiel
fuente
Información extendida sobre el ejemplo de pendrive: también se usa en disquetes y pendrives sin MBR, donde a menudo se le llama "formato superfloppy".
Hennes
@Torinthiel, he actualizado mi publicación original, espero que echen un vistazo
Noob
-1

Incluso si tiene la intención de usar todo el disco, aún tendrá que particionarse. En este caso, con una partición tan grande como el disco en sí (casi, al menos. La tabla de partición ocupa algo de espacio. Consulte más abajo para obtener más detalles).

Cuando presento a las personas el concepto de particiones y sistemas de archivos a las personas que normalmente solo piensan en "discos duros, vacíos o llenos" es esto: el disco duro es el edificio, mientras que la partición es la habitación real. Formatea una partición con un sistema de archivos específico, y luego la hace utilizable, y en la analogía del edificio, esto corresponde a declarar un tipo de habitación, como cocina vs dormitorio (en otras palabras, cómo usarlo).

Ahora, para volver a su pregunta original, no puede colocar un sistema de archivos en una unidad no particionada, ya que la tabla de particiones (los primeros 512 bytes de la unidad) contiene información sobre dónde se pueden encontrar las particiones en la unidad física. Para que tenga un sistema de archivos, tendrá que comenzar en algún lugar al que la tabla de particiones pueda hacer referencia, y no puede hacer referencia a un sistema de archivos que no tenga un espacio definido, es decir, la partición.

Y si vamos a colocar la tabla de partición en la analogía del edificio, supongo que correspondería a un plano del edificio.

Actualización que refleja la edición de su pregunta: lo que hace fdisk es permitirle seleccionar ciertos aspectos de una partición, como el tamaño, el tipo y la ubicación física, como estoy seguro de que ya sabe. Lo que entonces hace fdisk es traducirlos a una entrada de la tabla de particiones. Básicamente, se encarga de que la tabla de particiones esté actualizada con una "lista" de todas las particiones en el disco, cada elemento en la lista indicando qué partición se puede encontrar dónde y de qué tipo es. Esto es para que un sistema operativo sepa dónde acceder a los datos en las particiones.

Jarmund
fuente
1
No No necesita serlo. He usado sin. Sin embargo, todavía es muy recomendable, pero puedes prescindir de él.
Hennes
@Jarmund he actualizado mi publicación original, espero que echen un vistazo
Noob