Tengo un pen drive y una partición:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 931.5G 0 disk
└─sda1 8:1 0 931.5G 0 part /
sdb 8:16 1 7.5G 0 disk
└─sdb1 8:17 1 7.5G 0 part
y he formateado con comando:
# mkfs.fat -n A /dev/sdb
y funciona bien
Pero después de eso, hojeé la página de manual de mkfs:
mkfs is used to build a Linux filesystem on a device, usually a hard
disk partition. The device argument is either the device name (e.g.
/dev/hda1, /dev/sdb2), or a regular file that shall contain the
filesystem. The size argument is the number of blocks to be used for
the filesystem.
Dice que mkfs
debería funcionar con el número de partición. ¿Y mi problema es por qué mi operación funciona sin mensaje de error?
linux
filesystems
mkfs
Alaneuler
fuente
fuente
Respuestas:
Es posible crear un sistema de archivos en un disco completo en lugar de una partición, pero inusual. La documentación solo menciona explícitamente la partición porque ese es el caso más habitual (por lo general, dice ). Puede crear un sistema de archivos en cualquier cosa que actúe lo suficientemente como un archivo de tamaño fijo, es decir, algo en el que si escribe datos en una ubicación determinada y vuelve a leer desde la misma ubicación, obtiene los mismos datos. Esto incluye discos completos, particiones de disco y otros tipos de dispositivos de bloque , así como archivos normales (imágenes de disco).
Después de hacerlo
mkfs.fat -n A /dev/sdb
, ya no tiene una partición en ese disco. Tenga en cuenta que el núcleo todavía piensa que el disco tiene una partición, ya que mantiene la tabla de particiones almacenada en caché en la memoria. Pero no debe intentar usar/dev/sdb1
más, ya que ya no existe; escribir en él corrompería el sistema de archivos que creó/dev/sdb
ya que/dev/sdb1
es parte de/dev/sdb
(todo excepto unos pocos cientos de bytes al principio). Ejecute el comandopartprobe
como root para indicarle al núcleo que vuelva a leer la tabla de particiones.Si bien es posible crear un sistema de archivos en un disco completo, no lo recomiendo. Algunos sistemas operativos pueden tener problemas con él (creo que Windows podría hacer frente, pero algunos dispositivos como las cámaras podrían no tenerlo), y usted pierde la posibilidad de crear otras particiones. Ver también Los méritos de un sistema de archivos sin particiones
fuente
En general, está bien colocar un sistema de archivos en un dispositivo completo, en lugar de particionar y formatear las particiones, si no tiene la intención de tener más de un sistema de archivos en su dispositivo. Simplemente tendrá que ser consistente; ya que has puesto el sistema de archivos en
sda
lugar desda1
, tendrás que montarsda
también, yasda1
que no existirá en absoluto.El dispositivo en su pregunta parece ser una unidad extraíble con formato FAT: si se va a usar con dispositivos integrados que pueden tener una noción más o menos detallada de cómo se pueden montar los sistemas de archivos, puede valer la pena probar que lo hacen en hecho admite un sistema de archivos de dispositivo completo sin una tabla de particiones. (Por ejemplo, las cámaras tienden a crear una única partición y formatear eso; es muy posible que declaren que una tarjeta de memoria sin particiones no se puede usar).
fuente