Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Sistemas de ficheros
EXT2, HFS+ y NTFS
Ivan A. Escobar Broitman y Erika Vilches Gonzlez
M
uchos de nosotros vivimos da a da este riamente un dispositivo de almacenamiento para organi-
linux@software.com.pl
tipo de situaciones y nos adaptamos zar los datos, tal es el caso de un disco duro, un dispositivo
a ellas sin mayor problema, pero qu pasa externo como un CD-ROM, etc. No es rigurosamente ne-
cuando todos estos ordenadores no uti- cesario contar con dichos dispositivos, ya que un sistema
lizan el mismo sistema operativo? Qu sucede cuando de ficheros puede a su vez manejar datos que existan en
en la oficina todos los ordenadores usan Linux, la porttil servidores de ficheros virtuales a travs de protocolos de
es Windows y en casa tenemos una Mac o viceversa? Son red como NFS, SMB, etc.
compatibles? La mayora de los sistemas de ficheros usan a los dis-
El caos empieza al momento de tener que compartir positivos de almacenamiento para ofrecer acceso a arreglos
ficheros y en mayor escala cuando tenemos que compartir de bloques de tamao fijo llamados sectores. Un sector en
discos de trabajo o respaldo. Hay compatibilidad entre los estos dispositivos normalmente es de 512 bytes de tamao.
diversos sistemas de ficheros utilizados por estos sistemas El sistema de ficheros es el responsable de la organizacin
operativos? Podemos hacerlos funcionar de manera inte- de la informacin almacenada en estos sectores as como
gral y sacar informacin de un medio para transportarlo al su conjuncin en ficheros y directorios. Los sistemas de
otro? Podemos interconectar discos de respaldo de Linux ficheros proveen las abstracciones de datos necesarias para
en una mquina Windows XP o Mac? que el usuario trabaje con la informacin que necesite sin
necesidad de saber como est organizada fsica o lgica-
Sistemas de Ficheros mente en su ordenador.
En computacin, un sistema de ficheros es un mtodo para
almacenar y organizar informacin en ordenadores. Este Primeros sistemas de ficheros
mtodo les permite acceder y manipular dicha informa- No es ningn secreto que el sistema de ficheros dicta mu-
cin. Un sistema de ficheros puede utilizar complementa- chas de las funciones fundamentales que puede realizar un
2 Linux+ 7/2007
software
Compatibilidad entre Sistemas de Ficheros
www.lpmagazine.org 3
software
Compatibilidad entre Sistemas de Ficheros
4 Linux+ 7/2007
software
Compatibilidad entre Sistemas de Ficheros
NTFS (Windows)
El sistema de ficheros NTFS (New Technology
File System) introducido al mercado por la
compaa Microsoft en 1993 vino a remplazar
al sistema de ficheros FAT en sus nuevos y
ms robustos sistemas operativos. Todos los
sistemas operativos que emergieron a partir de Figura 5. Unidad NTFS usando Macfuse en MAC OS X
www.lpmagazine.org 5
software
Compatibilidad entre Sistemas de Ficheros
6 Linux+ 7/2007
software
Compatibilidad entre Sistemas de Ficheros
ext3
El sistema de ficheros ext3, del ingls Third
Extended File System, fue aadido al ncleo
de Linux desde la versin 2.4.15 en noviem-
bre de 2001 y es el mas comnmente utilizado
Figura 8. Unidad Linux Ext2 usando FS-Driver en Windows XP
en Linux, aun cuando no es el nico sistema
de ficheros nativo de Linux que incluye ca- mente del tamao del journal que se utiliza cheros despus de un fallo a cambio de
ractersticas de journaling (reiserfs tambin para mantener la consistencia. Con el tamao un incremento potencial de velocidad
lo ofrece). Este tipo de sistemas de ficheros, predeterminado, la recuperacin se logra en bajo algunas circunstancias. Este modo
comparados con ext2, mejora la capacidad aproximadamente un segundo. Con respecto nos brinda una garanta de integridad
de recuperacin de fallas, ya que mantienen a la velocidad, an cuando se escriben algu- similar a la que nos ofrece ext2, con la
un fichero especial llamado un journal que nos datos ms de una vez, ext3 es ms ve- nica diferencia del incremento en la
es utilizado para reparar cualquier inconsis- loz que ext2 debido a que el journaling opti- velocidad de recuperacin en caso de
tencia en el sistema de ficheros que ocurra miza el movimiento de la cabeza del disco una falla, ya que se omite el chequeo
como resultado de un apagado no limpio de duro. necesario al momento de reiniciar en
el ordenador, como puede ser una falla en la Existen 3 modos de journaling para ext2.
energa elctrica o en el software, sin necesi- mejorar la velocidad, que se explican a con- data=ordered. Garantiza que los datos son
dad de correr ninguna prueba de consistencia tinuacin: consistentes con el sistema de ficheros.
en el sistema de ficheros durante el reinicio Ficheros que han sido recientemente
despus del apagado no limpio, ya que ga- data=writeback. Limita las garantas de escritos, nunca mostrarn basura en sus
rantiza la consistencia interna. El tiempo de integridad de datos, permitiendo que contenidos despus de un fallo.
recuperacin de una falla depende directa- datos viejos estn presentes en los fi- data=journal. Requiere de un journal de
mayor tamao y por lo tanto, en general
requiere de ms tiempo para recuperarse
de un apagado no limpio, sin embargo
en ocasiones puede llegar a ser ms rpi-
do para algunas operaciones de bases de
datos.
ext2
El sistema de ficheros ext2, del ingls Second
Extended File System, es el predeterminado
Figura 9. Unidad HFS+ usando HFSExplorer en Windows XP para versiones anteriores de Linux. Fue de-
www.lpmagazine.org 7
software
Compatibilidad entre Sistemas de Ficheros
# mkfs /dev/hda1w
# tune2fs -j /dev/hda1
Compatibilidad nativa
Para el manejo de HFS y HFS+, anteriormen-
te se utilizaban drivers tales como Sopor-
te HFS+ para Linux de Brad Boyer y Driver
HFS+ para Linux de Ardis Technologies.
A partir de la versin 2.6.18 del ncleo de
Linux ya existe soporte nativo para lectura
y escritura de las particiones HFS y HFS+,
an cuando sigue sin ser posible escribir
sobre una particin HFS+ con journaling
(mismo que es fcilmente deshabilitado
Figura 10. Instalacin Macdrive 6.0
desde la aplicacin diskutil o desde la lnea
sarrollado como una versin mejorada del No obstante, se puede utilizar posterior- de comandos con diskutil disableJournal
sistema de ficheros ext. Tiene las mismas mente el comando tune2fs para convertir volumeName, ambos dentro de OS X).
caractersticas que ext3, con la nica diferen- un sistema de ficheros de ext2 a ext3 sin Una de las utilidades ms comunes de este
cia de que ext2 no provee las caractersticas reformatear, as como tambin para cambiar soporte, es el poder utilizar un iPod en su
de journaling. Cuando se trata de un disco la etiqueta del volumen y que tan frecuen- sistema de ficheros original (HFS+) desde
duro pequeo (de unos cuantos Gigabytes), temente se verifica el sistema de ficheros, Linux.
es recomendable utilizar ext2 en lugar de ext3 entre otros atributos. Es importante mencio- En el caso de las particiones NTFS, stas
como sistema de ficheros, ya que la caracters- nar que cuando se utiliza tune2fs para cam- pueden leerse nativamente por el ncleo de
tica de journaling requiere que se aparte una biar de ext2 a ext3 un sistema de ficheros, Linux desde su versin 2.2.0. A partir de la
porcin del disco para el journal, sin embargo se debe actualizar /etc/fstab para indicar el versin 2.6 dicho ncleo permite la sobre
dicha caracterstica es de utilidad limitada en cambio. escritura de ficheros, mas no la creacin de
sistemas de ficheros pequeos. La razn con-
siste en que durante el reinicio despus de un
apagado no limpio, ext2 requiere que el pro-
grama e2fsck corra una prueba de consisten-
cia y repare cualquier inconsistencia antes
de que el sistema de ficheros pueda ser mon-
tado, lo cual demora unos cuantos minutos
en el caso de sistemas de ficheros pequeos
pero en el caso de sistemas de ficheros con
varios Gigabytes puede llegar a demorar ho-
ras. Dentro de los sistemas de ficheros nati-
vos de Linux, ext2 es el ms porttil, debido
a que es en el que ms se facilita transferir
informacin desde y hacia otros sistemas
de ficheros.
El comando mkfs
Para crear un sistema de ficheros en una nue-
va particin, utilizamos el comando mkfs.
De manera predeterminada, este comando
crea un sistema de ficheros ext2, que es uti-
lizable por Linux. Sin embargo, en muchos
casos se desea utilizar un sistema de fiche-
ros de journaling, como ext3, para lo cual se
utiliza la opcin -t ext3 de mkfs, se crea de
manera predeterminada una particin ext3. Figura 11. Unidades HFS+ usando Macdrive en Windows XP
8 Linux+ 7/2007
software
Compatibilidad entre Sistemas de Ficheros
Figura 12. Visualizacin con ntfs-3g de nombres de ficheros con caractres chinos
NTFS for Linux
los mismos, ni el cambio en el tamao para Para utilizarlo, se requiere tener insta- (Paragon Software)
todos los casos. El principal problema que lado tanto FUSE como ntfsprogs. Una vez cu- Es un driver propietario de la empresa ale-
encontramos para poder manejar NTFS en biertos estos requerimientos, se debe crear mana Paragon Software para la escritura de
sistemas operativos distintos a Windows, un directorio sobre el cual se montar el NTFS en Linux, que fue escrito desde cero.
es que la especificacin de NTFS no es volumen y posteriormente montar el mis- Su costo es de 29,95 dlares (aproximada-
abierta, de forma que nunca se puede ga- mo. mente 22,39 euros) para su edicin perso-
rantizar que la solucin que se utilice ser nal, y de 149,95 dlares (aproximadamente
completamente compatible con las imple- Ntfs-3g 112,14 euros) para la profesional. La edicin
mentaciones presentes y futuras de Micro- Es un driver estable, gratuito y de fuente profesional ofrece, adems de las capacida-
soft. abierta para la lectura y escritura de NTFS des de la edicin personal, utilidades para
en Linux y otros sistemas operativos, con un verificar la integridad, defragmentar, borrar
Compatibilidad a travs de drivers manejo rpido y confiable de los datos. Con
(lectura y escritura NTFS) este driver es posible crear ficheros de cual-
A continuacin, veremos los paquetes de quier tamao, modificarlos, renombrarlos, Sobre los autores
software independientes al ncleo de Linux moverlos o borrarlos, con la nica excep-
El Maestro Ivan Alejandro Escobar Broit-
que nos permiten realizar lectura y escritu- cin de ficheros comprimidos o codificados.
man, es profesor del departamento de
ra sobre una particin NTFS. No obstante, an es incapaz de modificar
Ciencias Computacionales del Tecnol-
ACLs (del ingls Access Control Lists) y sus
gico y de Estudios Superiores de Monte-
Ntfsmount permisos. Este driver es de muy reciente
rrey Campus Estado de Mxico. Estudi
Es un driver para sistemas de ficheros de creacin (julio de 2006) y la primera versin
la carrera de Ingeniera en Sistemas
FUSE que permite montar volmenes NT- estable del mismo (versin 1.0) fue liberada
Electrnicos y una Maestra en Ciencias
FS. Es distinto del driver del ncleo de Li- el 21 de febrero de 2007. Est basado en ntfs-
Computacionales. Actualmente estudia el
nux en que reside en el espacio del usuario mount, sin embargo ofrece creacin y eli-
Doctorado en Ciencias Computaciona-
y por lo tanto, es un poco ms lento, pero minacin de ficheros ilimitada. Adems
les y es socio fundador de Quetzal Hos-
con muchas ms caractersticas. Nos per- ofrece un aumento en la velocidad de opera-
ting. La Maestra Erika Vilches Gonzlez
mite cambiar el tamao de un fichero en cin de 10 a 50 veces con respecto al software
estudi la carrera de Ingeniero en Sis-
todos los casos, crear ficheros y directorios comercial de Paragon Software, NTFS for
temas Computacionales y una Maes-
en un 50% de los casos (en el caso de que Linux.
tra en Ciencias Computacionales. Ac-
no sea posible, ser negada la creacin; se Para poder instalarlo, se requiere tener
tualmente, estudia el Doctorado en Cien-
pueden crear aproximadamente 10 ficheros una versin reciente de FUSE previamente
cias Computacionales en el ITESM Cam-
por directorio), eliminar ficheros y directo- instalada y correr la tradicional secuencia
pus Estado de Mxico. Es socia funda-
rios en un 90% de los casos (en el resto, ser ./configure, make, y make install. Una vez ins-
dora de Quetzal Hosting y se encarga
negada la eliminacin). Se garantiza que talado, el volumen NTFS puede ser mon-
principalmente de la administracin de
en ningn caso se corromper el sistema tado en modo de lectura y escritura de la
servidores y el desarrollo de software
de ficheros NTFS cuando una operacin siguiente forma: mount -t ntfs-3g /dev/hda1 /
a medida.
sea negada. mnt/windows, reemplazando /dev/hda1 y /mnt/
www.lpmagazine.org 9
software
Compatibilidad entre Sistemas de Ficheros
Linux cooperativo
Consiste en correr Linux de forma casi na-
tiva directamente bajo Windows (dentro de
un proceso del sistema) mediante coLinux,
software que es gratuito y de fuente abierta.
Se utiliza un driver especial en Windows
que permite ejecutar coLinux en modo privi-
legiado. El estado de la mquina es cambia-
do constantemente entre el estado de Win-
dows y el estado del ncleo de coLinux, de
esta manera coLinux tiene control completo
de la MMU (del ingls, Memory Manage-
ment Unit) dentro del espacio de direcciones
Figura 13. coLinux corriendo Knoppix sobre Windows
que le ha asignado Windows, permitindole
el contenido y crear volmenes, as como la NTFS cautivo actuar casi como lo hara un ncleo nativo,
capacidad de montar volmenes dinmicos Es un driver para Linux de fuente abierta con prcticamente el mismo desempeo
de Microsoft, entre otras. Despus de la que utiliza a manera de envoltura el dri- y funcionalidad que una distribucin de Li-
compra, el software puede ser descargado ver ntfs.sys de Windows. La intencin de nux regular tendra si se corriese en la misma
de la pgina de Internet del fabricante. Es utilizar el mismo driver que Windows utili- mquina de modo nativo.
importante mencionar que al utilizarlo para za para escribir sobre los volmenes NTFS Para ser capaces de escribir NTFS desde
escritura, es posible que se produzcan erro- es la de proveer soporte a la escritura de coLinux, una vez que se ha instalado en la
res en el volumen. Se rumorea en algunos manera completamente segura. Para emu- mquina, se arranca y se monta el sistema de
sitios de Internet que este software deja lar los subsistemas necesarios de Windows, ficheros de Linux, posteriormente se inicia
errores en el volumen NTFS cuando se uti- utiliza ntoskrnl.exe, una parte original de un servidor web bajo coLinux y se crea una
liza el modo de lectura y escritura, sin em- ReactOS, o las re-implementaciones del mis- pgina de Internet con ligas a los ficheros
bargo, no existe una referencia lo suficien- mo que se han realizado al interior de este que desean transferirse a NTFS. Desde Win-
temente documentada para sustentar dicha proyecto, dependiendo del caso especfico dows, se bajarn los ficheros de la pgina
informacin. a tratar. La principal desventaja es que el creada. Si no se desea usar un servidor web,
es posible arrancar un servidor SMB dentro
del sistema coLinux. Este mtodo no requie-
re soporte NTFS para Linux y por lo tanto ga-
rantiza no corromper la integridad de NTFS.
La desventaja de este sistema, radica en que
debe tenerse instalado Windows en la m-
quina y correr coLinux desde ah para poder
escribir la particin NTFS.
En la siguiente imagen, tomada de la p-
gina de coLinux, podemos apreciar a coLi-
nux corriendo un Knoppix edicin japonesa,
sobre Windows. En la imagen se aprecia un
escritorio KDE, una ventana de Mozilla,
una consola, Konqueror, y el manejador de
tareas de Windows, mostrando el consumo
de CPU del proceso de coLinux.
En esta otra imagen, obtenida de Flickr,
perteneciente al usuario angraron, podemos
apreciar una instalacin de Debian, corrien-
do sobre coLinux, en donde se estn utili-
zando Firefox y una consola.
10 Linux+ 7/2007