Cuando tenemos un dispositivo de almacenamiento, interno o extraíble, lo normal es que esté formateado en un determinado sistema de archivos. Y hay muchos: FAT en sus distintas versiones, NTFS, HFS, HFS+, cada versión de ext... Además, existen muchos sistemas de archivos pensados para usos específicos, como UDF, y que no son útiles en otros entornos.
La cuestión es que, aunque podamos formatear prácticamente cualquier dispositivo en prácticamente cualquier sistema de archivos, cada uno tiene sus ventajas y sus inconvenientes para según qué usos, como vimos cuando explicamos el funcionamiento de algunos de ellos. ¿Cuál debemos elegir para formatear nuestro dispositivo? Vamos a verlo.
Lo primero: ¿qué demonios es eso del journaling?

En ocasiones, cuando hemos hablado de sistemas de ficheros, hemos hablado de algo llamado journaling. Y de hecho lo habéis llegado a preguntar en Genbeta Respuestas. ¿Qué es exactamente? Una técnica que utilizan muchos sistemas operativos modernos y que facilita la recuperación cuando existe un fallo durante una escritura.
Estos sistemas de archivos cuentan con un registro, una especie de diario, en el que se registra cada escritura en ese volumen. Simplificando el proceso: cuando vamos a, por ejemplo, copiar un fichero a un volumen NTFS, se registra una entrada en este diario sobre la modificación que va a realizarse, y cómo deshacerla. Luego se realiza la escritura de la información, y cuando ésta termina, se elimina esa entrada del diario.
Si el disco que contiene ese volumen se desconecta antes de finalizar la escritura, será el diario el que contenga la información de qué operaciones no se han realizado correctamente, y de ese modo el sistema operativo podrá volver atrás para recuperar un sistema de archivos coherente.
Este proceso, como podéis imaginar, es más rápido que realizar una comprobación de todo el sistema de ficheros (lo que los usuarios de Windows suelen conocer como scandisk). A cambio es un pelín más lento en cada operación, dado que al fin y al cabo tienen que mantener ese diario.
Para una unidad USB o tarjeta de memoria

En un dispositivo pequeño y que vamos a mover constantemente no nos conviene tener un sistema de archivos demasiado complejo (dado que al fin y al cabo el propio sistema de ficheros también necesita espacio para su funcionamiento). El journaling es casi irrelevante: hablamos de tarjetas de memoria para una cámara o de un pen drive para transferir archivos de un lado a otro.
Mi recomendación personal es que utilicéis un sistema de archivos del tipo FAT. De ese modo podréis leer y escribir en ese volumen desde Windows, OS X, cualquier distribución de Linux y otros sistemas de tipo BSD. Aunque hay varios sistemas de ficheros de tipo FAT.
Si la unidad es de menos de 4GB recomiendo FAT32. Si la unidad tiene una capacidad mayor de 4GB, elegid exFAT, sobre todo porque permite guardar archivos de más de 4GB (que es la principal limitación de FAT32). No obstante hay que tener en cuenta la compatibilidad de exFAT con dispositivos multimedia externos (aunque lo habitual es que sea así). El sistema de archivos, en el caso de los dispositivos multimedia, sí importa.
Para un disco duro externo

En este caso tenemos que tener un balance entre ciertas características. Por una parte, tenemos que ver qué compatibilidad buscamos con los distintos sistemas operativos que utilicemos. Por otra parte, nos conviene indiscutiblemente que el sistema de archivos tenga journaling para proteger ese sistema de archivos de incoherencias. Descartamos siempre los sistemas de archivos tipo FAT.
En tanto que utilizo Windows y Linux, en mi caso utilizo NTFS. De ese modo tengo compatibilidad con ambos sistemas operativos y sigo disponiendo de las características importantes. Pero si eres usuario de OS X (y no utilizas otros sistemas operativos) probablemente te convenga utilizar HFS+. Igual que si eres usuario de Linux (y solo de Linux) podrías plantearte formatear el disco en ext3 o ext4.
El sistema operativo es importante porque, por ejemplo, Windows no tiene soporte para nada que no sea FAT o NTFS (aunque existan métodos para leer particiones en otros sistemas, como HFS+), igual que OS X por defecto no tiene soporte para nada que no sea FAT o HFS (dejando aparte UFS), además de NTFS en modo de solo lectura (sin instalar un puñado de cosas aparte). Con las distribuciones de Linux no hay problema.
Y por cierto, algo muy importante. Cuando desconectéis el disco duro, aseguraos de haberlo desmontado o extraído con seguridad (asegurándonos de ese modo que no se está modificando el sistema de archivos en ese momento), particularmente en el caso de NTFS. No se me olvidará haber perdido en dos ocasiones todo un terabyte de datos por desconectar el disco mientras se escribían datos.
Para instalar el sistema operativo

En muchos casos no podemos elegir en qué sistema de archivos debe estar formateado el volumen en el que instalar el sistema operativo. Windows requiere la instalación en un volumen NTFS, OS X requiere la instalación en un volumen HFS+, HFSX o JHFS+. En el caso de las distribuciones de Linux no hay mucho problema: hay bastante más libertad a la hora de instalarlo.
Lo importante es, básicamente, que tenga journaling. De ese modo el sistema será más resiliente y soportará mejor los fallos que puedan producirse en el sistema operativo. Mi recomendación: NTFS para Windows (obligatorio), HFS+ para OS X (casi obligatorio) y ext3/ext4 para instalar distribuciones de Linux.
En Genbeta | Así funcionan: sistemas de ficheros
Imágenes | mcfarlandmo | woodleywonderworks | Custom USB | Karen | Jeff Kubina
Ver 33 comentarios
33 comentarios
diego.langos
Se ha quedado un poco corto el artículo. No se mencionan ni los SSD ni el sistema BTRFS que según dicen algunos es el futuro y ya debe ser perfectamente usable. También cabría mencionar las tarjetas SD para móviles Android.
dfuertes2
Yo tengo una memoria flash formateada con extFAT y no para de darme problemas: windows XP la puede leer pero no escribir, con Win 7 se me desmonta sóla y muchas veces a medio escribir :-( Menos mal que al menos funciona bien con Linux :-)
Gerardo
El journaling de NTFS no debe ser muy bueno si al desconectar el disco duro se te pierde 1TB de datos.
shotokan
En mi caso, como usuario de GNU/Linux, estoy perdido haga lo que haga respecto a discos grandes:
- Si uso FAT tengo compatibilidad plena, pero pierdo el journaling.
- Si uso NTFS pierdo compatibilidad con televisores antiguos o aparatos "de salón" antiguos con conexión USB, que solo suelen soportar FAT.
- Si uso Ext pierdo compatibilidad con todo lo que no sea GNU/Linux, y estoy barajando esta posibilidad en el futuro. En Windows nunca meto un USB de todos modos por miedo a virus que me puedan eliminar información del disco, pero con Ext me protegería además si lo meto por error, lo cual es un plus. Además, es mejor que NTFS. Lo malo es que perdería compatibilidad con los dispositivos antiguos mencionados anteriormente, así que tampoco es una solución perfecta.
Renato
Memórias USB las tengo todas con exFAT y discos duros en NTFS, para usarlos en Mac, uso tuxera.
krollian
OS X soporta por terceras partes NTFS y ZFS.
http://www.faq-mac.com/noticias/zevo-zfs-retorna-mac-os-x-mano-tens-complement/47273
http://getgreenbytes.com/solutions/zevo
teknosrp
¿Y nada sobre la fragmentacion? Segun tengo entendido NTFS sufre de ello y en necesario hacer desfragmentacion mientras que con otros sistemas como el ext4 no.
Yo lo tengo todo en ext4 menos dispositivos que tengan que ser multiplataforma que uso FAT (tipo pendrives y memorias sd que los DVD's, MP3's, moviles y demas aparatos solo leen FAT)
podkax
por lo que has explicado del journaling me suena a que puede estar relacionado con los problemas de durabilidad de los SSD , ¿¿por lo tanto para un disco de este tipo cual creéis que sera el mejor sistema de archivos??
link_alves
Tenemos también Reiser, de Hans Reiser. Un sistema de archivos que costó una vida, literalmente xD. El notas está en la cárcel por asesinar a su mujer pero era un sistema de archivos muy prometedor. El kernel Linux sigue contando con soporte para el.
akarayan
"No se me olvidará haber perdido en dos ocasiones todo un terabyte de datos por desconectar el disco mientras se escribían datos."
Por eso, lo mejor es tener cada disco duro por duplicado, estando la segunda copia a ser posible desconectada de la red la mayor parte del tiempo [con la excepción del momento (cada X tiempo) en que tengas que sincronizar ambos discos].
Así, si un disco casca, siempre tienes la segunda unidad y no pierdes los datos. Eso sí, es un sistema más caro porque cada vez que quieras ampliar tu capacidad de almacenamiento tienes que comprar dos unidades del mismo disco.
Saludos.
laughlin
Genial el artículo.
Referente a los discos externos, imagino que no todos ofrecen buena compatibilidad con todos los sistemas de archivos. Lo digo porqué en dos unidades WD que tengo probé de formatearlas con EXT4, y al estar montadas, parpadeaban y trabajaban continuamente aun cuando se suponía que debían estar en reposo. En Ubuntu Forums vi que había más gente que le pasaba lo mismo.
Luego con EXT3 y NTFS (normal), por suerte, no hubo ningún problema.
juanmafont
Un truco para los discos duros externos si usas linux y quieres usar ext3 o ext4 en tu disco duro, crear una pequeña partición (la mínima posible) y copiar allí un programa para windows que permita leer particiones ext3-ext4. Así cuando te lleves el disco a casa de un amigo que use windows, puedes rápidamente instalar el software necesario para acceder al disco externo.