NTFS FAQ (Preguntas Frecuentes)

English Italian Japanese Vietnamese German Simplified Chinese French Spanish Brazilian Traditional Chinese Russian

Esta FAQ forma parte de Linux NTFS Project.
La última versión actualizada puede ser vista online en:
../info/ntfs.html

Si tienes una pregunta relativa a NTFS que no está respondida en esta FAQ, o tienes algún comentario sobre esta FAQ, envía un mail a: linux-ntfs-dev@sourceforge.net

Contenidos

Símbolos Usados

** - Las consultas más realizadas
!! - Otras cosas interesantes
NB - Preste Mucha Atención

 Comandos o salidas por pantalla

1. Consultas Generales sobre NTFS

  1.1 ¿Qué es NTFS?
  1.2 ¿Es NTFS mejor que FAT/FAT32?
  1.3 ¿Debo utilizar NTFS (o actualizarme)?
!! 1.4 ¿Es NTFS igual en todas las versiones de Windows?
  1.5 ¿Cuáles son los límites de NTFS?

2. Particiones con NTFS

  2.1 ¿Cómo leo particiones NTFS desde Windows 95/98/ME o DOS?
  2.2 ¿Cómo convierto una partición FAT en una del tipo NTFS?
!! 2.3 ¿Cómo convierto una partición NTFS en una del tipo FAT?
  2.4 ¿Cómo elimino una partición NTFS?
  2.5 ¿Cómo defragmento una partición NTFS?
** 2.6 ¿Cómo modifico el tamaño de una partición NTFS?

3. Linux y NTFS

!! 3.1 ¿Qué versiones de NTFS puede leer Linux?
** 3.2 ¿Puede el controlador escribir en una partición NTFS también?
  3.3 ¿Qué características de NTFS soporta Linux?
  3.4 ¿Qué podría hacer en caso de algún error?
** 3.5 ¿Cómo agrego soporte a NTFS en Linux?
  3.6 ¿Cuál versión es la mejor?
  3.7 ¿Qué otras herramientas hay?
  3.8 ¿Cómo fue escrito el Driver de NTFS para Linux?
  3.9 ¿A quiénes debemos agradecer?

4. Montando Particiones con NTFS

  4.1 ¿Puedo yo montar una partición NTFS?
  4.2 ¿Cuan confiable es el Driver para NTFS?
  4.3 ¿Qué partición debería usar?
  4.4 ¿Qué versión del Driver para NTFS tengo instalada?
!! 4.5 ¿Cómo monto una partición NTFS?
  4.6 Opciones más comunes de montaje
  4.7 Opciones de montaje para el Driver original
  4.8 Opciones de montaje para el Nuevo Driver
** 4.9 ¿Cómo puedo cambiar los permisos de una partición NTFS ya montada?
!! 4.10 ¿Cómo puedo montar una partición NTFS en forma automática?

5. Iniciando Sistemas Operativos con NTFS

  5.1 ¿Puedo iniciar Windows en una partición NTFS?
  5.2 ¿Cómo uso LILO?
  5.3 ¿Cómo uso Grub?

6. Distribuciones Linux

  6.1 ¿Qué distribuciones soportan NTFS por defecto?
  6.2 ¿Por qué RedHat no soporta NTFS?
  6.3 ¿Por qué RedHat se bloquea al acceder a particiones con NTFS?
  6.4 ¿Es posible instalar NTFS en cualquier distribución Linux?

7. El nuevo Driver NTFS para Linux

  7.1 ¿Qué es el nuevo Driver para NTFS?
  7.2 ¿Tengo qué usarlo?
  7.3 ¿Cómo uso el nuevo Driver?
  7.4 ¿Qué es un patch?
  7.5 ¿Qué sucede si sigo sin entender?
  7.6 ¿Cuándo estará el nuevo código en el Kernel de Linux?
  7.7 Can't we write e a wrapper para Windows' driver?

Arriba


1. Consultas Generales sobre NTFS

1.1 ¿Qué es NTFS?

NTFS es una abreviación para New Technology Filesystem. NT pues fue usada originalmente en Windows NT y un sistema de archivos es solo la forma en que el computador almacena archivos en el disco. Diferentes sistemas operativos, almacenan archivos en diferentes formas.

NTFS es usado por Windows NT, 2000 y XP.

Arriba

1.2 ¿Es NTFS mejor que FAT/FAT32?

En resumen, sí. Es mucho más robusto, soporta nombres de archivo en formato Unicode, provee mayor seguridad, compresión y encriptación. Su principal desventaja es que sólo puede ser leído desde Windows NT, 2000 o XP, p. ej. No puedes usar un disco de arranque de DOS y acceder a los datos almacenados en formato NTFS.

Como siempre hay excepciones a esta regla. Linux tiene un driver para NTFS desde Diciembre de 1997. También hay un programa que da soporte a NTFS desde DOS (vea Sección 2.1 para más detalles).

Arriba

1.3 ¿Debo utilizar NTFS (o actualizarme)?

No, no es obligatorio hacerlo, aunque para la mayoría es una idea atractiva. Aunque probablemente no llegues a notar la diferencia. La única notoriedad, es que no puedes reconvertir al tipo FAT (vea la Sección 2.3 para más detalles).

NB Puedes instalar Windows NT en un sistema de archivos FAT16 y Windows 2000 o XP en un sistema de archivos FAT32. Luego es posible cambiar a NTFS.

Arriba

1.4 ¿Es NTFS igual en todas las versiones de Windows?

No. Aunque se verán muy similares, pero las versiones más recientes tienen características extra. Por ejemplo, Windows 2000 tiene quotas.

NTFSWindows Version
v1.2NT 3.51, NT 4
v3.02000
v3.1XP

Versión 1.2 es también conocida como 4.0.
Versiones 3.0 y 3.1 son a veces llamadas como 5.0 y 5.1.

Arriba

1.5 ¿Cuáles son los límites de NTFS?

Son enormes. NTFS soporta archivos con tamaños superiores a 263 bytes. Particiones con NTFS pueden tener más de 263 clusters y cada cluster puede ser de un tamaño superior a 64KiloBytes. Esto le da a NTFS un límite superior de aproximadamente 500 trillones de GigaBytes.

Arriba


2. Particiones con NTFS

2.1 ¿Cómo leo particiones NTFS desde Windows 95/98/ME o DOS?

Desafortunadamente, no es posible. Estas versiones de Windows pueden sólo acceder al formato FAT. NTFS puede ser accedido sólo por Windows NT, 2000 y XP.

Sin embargo, con algo de trabajo, puedes usar un par de utilidades desde SysInternals "NTFS Para Windows 98" y "NTFSDOS" permite acceder a NTFS desde Windows 95, 98 y DOS. Si estás dispuesto a pagar, hay una versión que permitirá escribir en particiones NTFS (Nota: Es bastante caro).

Arriba

2.2 ¿Cómo convierto una partición FAT en una del tipo NTFS?

Abre una ventana de comando y escribe (reemplazar x: con el volumen correcto):

  convert x: /fs:ntfs
  

Si el volumen está en uso, la conversión se llevará a cabo al reiniciar el equipo.

NB El comando no es fácilmente reversible. Vea el siguiente punto de la FAQ.

Arriba

2.3 ¿Cómo convierto una partición NTFS en una del tipo FAT?

En palabras simples, "No puedes". Hay una opción si tienes dinero. Partition Magic, disponible desde norton.com permite hacer conversiones entre distintos sistemas de archivos, incluyendo NTFS y FAT.

Arriba

2.4 ¿Cómo elimino una partición NTFS?

Esto depende del Sistema Operativo que estés usando.

DOS, Windows 95/98/ME: fdisk. Usar un disco de arranque, o en Windows ir a una ventana DOS. Luego ejecute fdisk. Si se tiene más de un disco, primero selecciónelo. Se desea eliminar una partición No DOS. Sea muy cuidadoso, los cambios se reflejarán de forma inmediata.

Windows NT: Administración de Equipos.

Windows 2000, XP: Administrado Discos Lógicos. Inicio, Panel de Control, seleccionar Herramientas Administrativas, luego Administración de Equipos.

Arriba

2.5 ¿Cómo defragmento una partición NTFS?

Luego que un volumen ha sido usado por un tiempo, después de muchas escrituras al disco, los archivos pueden estar fragmentados. Esto es, no se encuentran en forma consecutiva en el disco, sino que segmentados en pequeñas partes por todo el disco. Esto origina una notoria lentitud cuyo se trata de acceder a estos archivos.

Windows 2000 y XP incorporan un software defragmentado. Para usuarios de Windows NT, hay un programa gratuito que hace el mismo trabajo. Diskeeper Lite puede ser descargado desde: http://diskeeper.com

Arriba

2.6 ¿Cómo modifico el tamaño de una partición NTFS?

Hasta hace poco la única forma de redimensionar un volumen NTFS sin pérdida de datos, era pagar una gran cantidad de dinero. Ahora tenemos nuestro propio programa, ntfsresize. Éste ha sido probado, pero por ahora debería ser considerado como experimental. Para más información, consulte ntfsresize FAQ.

Un programa de pago que puede realizar lo mismo es Partition Magic desde: http://porwerquest.com

Arriba


3. Linux y NTFS

3.1 ¿Qué versiones de NTFS puede leer Linux?

El Driver de Linux puede leer todas las versiones de NTFS. Cada versión es un tanto diferente, pero el driver sólo tiene que interpretar los archivos y directorios. Todos los índices que mantiene NTFS pueden ser ignorados y no corren peligro alguno.

Cuando el driver tiene la opción de escribir en un Volumen NTFS, esto puede hacer que las propiedades varíen un porco dependiendo de la versión de NTFS en la que se está escribiendo.

Arriba

3.2 ¿Puede el controlador escribir en una partición NTFS también?

No realmente, pero si sólo se necesita copiar archivos desde Linux a Windows en una máquina con sistema de arranque dual, vea "Cómo escribir en NTFS" para una posible forma de trabajar ante la falta de soporte para la escritura. Para soporte de escritura en Linux, lea a continuación.

Hay 2 drivers actualmente. El driver original, en 2.4 tiene algún código referente a la escritura, pero es extremadamente peligroso usarlo. La posibilidad de destruir el sistema de archivos es muy alta.

El nuevo driver, introducido en 2.5.11, tiene código de escritura, pero es muy limitado. El driver puede sobrescribir archivos existentes, pero no puede modificar su largo, agregar archivos nuevos o borrar existentes.

Agregar soporte de escritura tomará bastante tiempo. NTFS está construida como una base de datos. Cualquier cambios que se haga, requiere hacer cambios en varias partes, para mantener la consistencia. Cometer un error y el sistema de archivos resultará dañado, cometer demasiados errores y el sistema de archivos resultará destruido. Además, los desarrolladores actuales sólo están trabajando en NTFS como hobby, durante sus ratos libres. Si te gustaría, por favor envíame un email: rich@flatcap.org.

Como escribir en NTFS. Si estás usando una máquina con arranque dual y sólo necesitas soporte de escritura en NTFS para transferir archivos desde Linux a Windows, puedes usar un driver Windows para ext2/ext3 y, mientras esté corriendo Windows, leer los archivos desde la Linux. De esta forma, usando 2 drivers de sólo-lectura, puedes copiar archivos desde un sistema de archivos a otro.

Conocemos estos drivers Windows de código abierto para ext2 y ext3 en sistemas de archivos Linux, al 4 de Junio del 2003:

Arriba

3.3 ¿Qué características de NTFS soporta Linux?

NTFS soporta un amplio rango de características, pero pocas son las que cumple el Driver NTFS de Linux.

El Driver NTFS de Linux soporta: Nombres de archivo Unicode (convertidos a un código de página local, o utf8); archivos comprimidos; archivos sparse.

Sin embargo, el driver no puede leer archivos encriptados, ignora la información de seguridad de Windows e ignora las quotas establecidas por Windows.

Arriba

3.4 ¿Qué podría hacer en caso de algún error?

El driver es bastante seguro para sólo lectura, pero es imposible poder probar cada eventualidad. Si algo sale mal, por favor ayúdanos a encontrar el problema y así poder solucionarlo.

Por favor envía un email al grupo desarrollador a: linux-ntfs-dev@lists.sourceforge.net y cuéntanos cual versión del driver estás usando, cual versión de Linux (uname -a) y cual versión de NTFS (Win NT, 2K o XP).

Adicionalmente, si hay algún logs (/var/log/messages) que creas que pueda ser de utilidad, por favor inclúyelo.

Gracias.

Arriba

3.5 ¿Cómo agrego soporte a NTFS en Linux?

La mayoría de los usuarios no tendrán que compilar nada para habilitar el soporte NTFS. Casi todas las distribuciones Linux (con la notable excepción de RedHat) incluyen soporte NTFS por defecto.

Si estás usando RedHat 9 (Shrike), 8.0 (Psyche) o 7.3 (Valhalla), entonces simplemente instala un rpm para soporte NTFS. El paquete rpm viene con instrucciones detalladas.

Si tienes una versión anterior de RedHat, u otra distribución que no tenga soporte NTFS, entonces tendrás que compilar el kernel tu mismo. Esto no es tan difícil como suena. Revisa Compile Page para más detalles.

Arriba

3.6 ¿Cuál versión es la mejor?

La nueva versión de un driver es la mejor. Está mejor escrito, es mucho más rápida, tiene pocos bugs y es SMP-seguro. El nuevo driver está disponible desde la 2.5.11 en adelante y un patch está disponible para agregar el nuevo driver a los kernels 2.4.

Arriba

3.7 ¿Qué otras herramientas hay?

Hasta el momento, hay pocas herramientas y están destinadas a desarrolladores. Mantenemos una lista de todas nuestras herramientas.

Naturalmente las prioridades radican en obtener un código NTFS con soporte para escritura.

Arriba

3.8 ¿Cómo fue escrito el Driver de NTFS para Linux?

Microsoft no ha liberado ninguna documentación acerca de los detalles internos de NTFS, así que hemos tenido que usar ingeniería reversa al sistema de archivos desde cero. El método fue bastante rudo:

  1. Mirar el volumen con un editor hexadecimal
  2. Realizar alguna operación, e.j. crear un fichero
  3. Usar el editor hexadecimal para observar los cambios
  4. Clasificar y documentar los cambios
  5. Repetir los pasos 1 al 4 hasta el infinito y más allá

Si esto suena a un montón de trabajo, entonces podrán comprender cuan dura fue la tarea desarrollada. Ahora entendemos mucho más todo sobre NTFS y lo hemos documentado para el beneficio de los demás: ../ntfs/index.html

En realidad escribir el driver fue tan simple como recoger la inforamación.

Arriba

3.9 ¿A quiénes debemos agradecer?

En primer lugar se debe agradecer a Martin von Löwis. Él creó el driver NTFS original en 1995. Éste fue agregado al kernel Linux en Diciembre de 1997 (2.1.74). Él ha sido ayudado por las siguientes almas caritativas:

Albert Cahalan, Anton Altaparmakov, Damon Casale, David Dillard, Domagoj Pensa, Joseph Malicki, Matthew Fanto, Olof Wolgast, Rani Assaf, Régis Duchesne, Richard Russon, Steve Dodd, Werner Seiler.

A continuación agradecemos a Anton Altaparmakov, fue su entusiasmo el que mantuvo el proyecto vivo. Justo en el momento en el que el proyecto dejo de ser mantenido, él se hizo cargo y estableció el código existente. Reescribió el driver desde cero para tener una base limpia desde la que desarrollar el soporte de escritura. Ha sido asistido por:

Pawel Kot, Richard Russon.

Arriba


4. Montando Particiones con NTFS

4.1 ¿Puedo yo montar una partición NTFS?

Por supuesto que sí. El Driver puede leer todas las versiones de NTFS, pero sólo en modo de lectura.

Arriba

4.2 ¿Cuan confiable es el Driver para NTFS?

Cuando es usado en modo de sólo lectura, ambos drivers el original y el nuevo pueden ser usados sin problema. Estos no harán cambio alguno en el sistema de archivos, así que no pueden causar daño alguno.

Además, el nuevo driver es SMP-seguro.

Arriba

4.3 ¿Qué partición debería usar?

En Linux los discos son llamados hda, hdb para los primeros 2 discos en el primer controlador IDE y hdc, hdd para el tercer y cuarto disco. Los discos SCSI son llamados sda, sdb, etc, en el orden en que son encontrados.

Una forma simple de mirar las particiones con NTFS es usar:

  fdisk -l
  

El resultado sería algo como esto:

    Disk /dev/hda: 64 heads, 63 sectors, 4465 cylinders
    Units = cylinders of 4032 * 512 bytes

       Device Boot    Start       End    Blocks   Id  System
       /dev/hda1             1      2125   4283968+  07  NTFS/HPFS
       /dev/hda2          2126     19851  35735616   0f  Win95 Ext'd (LBA)
       /dev/hda5   *      2126      4209   4201312+  83  Linux
       /dev/hda6          4210      4465    516064+  82  Linux swap
   

Arriba

4.4 ¿Qué versión del Driver para NTFS tengo instalada?

Si la versión de tu kernel es 2.4.*, o 2.5.0 - 2.5.10, lo más probable es que tengas instalado el Driver NTFS original. Si tienes la 2.5.11 o posterior, entonces tienes el nuevo Driver NTFS.

Una forma mejor de probar lo anterior es examinar los logs del kernel buscando mensajes relativos a NTFS. Prueba cualquiera de estos comandos (quizás necesites ser root para leer los logs).

    dmesg | grep -i ntfs
    grep -i ntfs /var/log/messages
    

El Driver original tiene la versión 1.1.*, por su parte el nuevo Driver tiene le versión 2.*.

Arriba

4.5 ¿Cómo monto una partición NTFS?

Antes de nada, sería una buena idea saber que tu kernel comprende el sistema NTFS. El siguiente comando entregará una lista de todos los sistemas de archivos que comprende Linux. Si ves ntfs, entonces está todo OK. También es una buena idea leerte el manual del mount, man 8 mount.

    cat /proc/filesystems
    

A continuación necesitas crear un lugar donde montar la partición NTFS. Luego podrás montarlo.

    mkdir /mnt/windows
    mount /dev/hda1 /mnt/windows -t ntfs -r
    

NB Para modificar los permisos de los sistemas de archivos montados, revise la opción umask en Sección 4.6. Si prefieres que la partición sea montada en forma automática al momento de iniciar, vea Sección 4.10.

Cuando hayas finalizado, puedes desmontar la partición con alguno de estos comandos:

    umount /mnt/windows
    umount /dev/hda1
    

NB El comando se llama umount (sólo con una 'n').

Arriba

4.6 Opciones más comunes de montaje

Estas opciones de montaje son comunes para ambos Drivers. Se recomienda también leer la página man para montaje. La forma general de montaje es:

    mount dispositivo directorio [opciones]
  

opciones adicionales de la forma -o se pueden dar en forma individual, o como parámetros separados por comas. Ambos comandos son equivalentes:

    mount /dev/hda1 /mnt/windows -o X -o Y -o Z
    mount /dev/hda1 /mnt/windows -o X,Y,Z
    
-t ntfs
Le informa a mount el tipo de sistema de archivos que se montará. Esta opción no es necesaria, ya que mount sabe como identificar la mayoría de los tipos de sistemas de archivos.
-r
Monta el volumen, como solo lectura. Por defecto, mount intentará montar el volumen como escritura lectura. A menos que sea forzado, el driver montará de forma automática el sistema para sólo lectura.
-o ro
Es equivalente que hacer -r.
-o umask={VALUE}
Los permisos otorgados a un volumen NTFS que ha sido montado son rwx------ (esto por razones de seguridad). El parámetro umask controla los permisos de los archivos y directorios. Para más detalles y ejemplos, vea la Sección 4.9.
    mount /dev/hda1 /mnt/windows -t ntfs -r -o umask=0222
    
-o uid={USERID}
Por defecto todos los archivos de un volumen NTFS que ha sido montado le pertenecerán al usuario root. Si se provee el parámetro uid se pueden configurar los usuarios propietarios de los archivos. El user id puede ser cualquier nombre proveniente de /etc/passwd, o cualquier número que represente un user id.
    mount /dev/hda1 /mnt/windows -t ntfs -r -o uid=flatcap
    mount /dev/hda1 /mnt/windows -t ntfs -r -o uid=500
    
-o gid={GROUPID}
Por defecto todos los archivos de un volumen NTFS que ha sido montado estarán en un grupo cuyo propieatario es root. Si se da el parámetro gid es posible configurar los grupos para los archivos. El group id puede ser cualquier nombre proveniente de /etc/group, o cualquier número que represente un group id.
    mount /dev/hda1 /mnt/windows -t ntfs -r -o uid=winusers
    mount /dev/hda1 /mnt/windows -t ntfs -r -o uid=520
    

Arriba

4.7 Opciones de montaje para el Driver original

Para saber que Driver estás usando, vea la Sección 4.4. En esta sección trata de las opciones para el Driver Original solamente. Todas las opciones comunes están tratadas en Sección 4.6.

Muchas opciones poseen un parámetro que tiene un valor true o false.
Puede reemplazarse true con yes o 1.
Puede reemplazarse false con no o 0.

-o iocharset={NAME}

NTFS almacena todos los nombres de archivos y directorios en formato Unicode el cual puede representar cualquier caracter de cualquier lenguaje. Por defecto el driver de Linux NTFS convierte los nombres al formato ASCII lo que está bien para algunos, pero no así para quienes su lenguaje incluye cosas como å o é.

NLS (Native Language Support) controla la forma como los caracteres son desplegados. Se puede elegir con utf8 que al igual, que Unicode, puede representar todos los caracteres, o tu propio lenguaje mediante un codepage, p.ej. iso8859-1 (Europa del Este), iso8859-2 (Europe Central), gb2312 (Chino simplificado), iso8859-8 (Hebreo). A continuación hay algunos ejemplos:

    mount /dev/hda1 /mnt/windows -t ntfs -r -o iocharset=utf8
    mount /dev/hda1 /mnt/windows -t ntfs -r -o iocharset=iso8859-2
    mount /dev/hda1 /mnt/windows -t ntfs -r -o iocharset=gb2312
    
utf8=true

Si tu kernel no tiene soporte para utf8, entonces es posible usar esta opción para trabajar con soporte para utf8 desde el Driver NTFS . Se debería usar -o iocharset=utf8 cuando sea posible.

    mount /dev/hda1 /mnt/windows -t ntfs -r -o utf8=true
    
-o posix={BOOL}

Windows respeta el uso de mayúsculas o minúsculas en el nombre de los archivos, pero no hace distinción al momento de leerlos. De esta forma se puede crear un archivo llamado MyFileName y luego abrirlo llamando a mYfILEname.

Por defecto Linux discrimina en el uso demayúsculas o minúsculas, así MyFile, Myfile y myfile son archivos diferentes. Si deseas que Linux se comporte como Windows, para un volumen NTFS, configura la opción posix a false. Poniendo la opción a true el driver se comportará como Linux (por defecto).

    mount /dev/hda1 /mnt/windows -t ntfs -r -o posix=true
    
-o show_sys_files={BOOL}

Si esta opción es configurada a true, entonces los metadata del sistema de archivos serán visibles. Si no están visibles, aún pueden ser listadols de forma explícita dando su nombre, p. ej. ls -l \$MFT.

NB A raíz de una limitación de glibc, $MFT podría no aparecer en la lista pues es un inode número cero.

    mount /dev/hda1 /mnt/windows -t ntfs -r -o show_sys_files=true
    

Arriba

4.8 Opciones de montaje para el Nuevo Driver

Para saber que Driver estás usando, vea la Sección 4.4. En esta sección se discute sobre las opciones para el Driver Original solamente. Todas las opciones comunes están tratadas en Sección 4.6.

Muchas opciones poseen un parámetro que tiene un valor true o false.
Puede reemplazarse true con yes o 1.
Puede reemplazarse false con no o 0.

-o nls={NAME}

NTFS almacena todos los nombres de archivos y directorios en formato Unicode el cual puede representar cualquier caracter de cualquier lenguaje. Por defecto el driver de Linux NTFS convierte los nombres al formato ASCII lo que está bien para algunos, pero no así para quienes su lenguaje incluye cosas como å o é.

NLS (Native Language Support) controla la forma como los caracteres son desplegados. Se puede elegir con utf8 que al igual, que Unicode, puede representar todos los caracteres, o tu propio lenguaje mediante un codepage, p.ej. iso8859-1 (Europa del Este), iso8859-2 (Europe Central), gb2312 (Chino simplificado), iso8859-8 (Hebreo). A continuación hay algunos ejemplos:

    mount /dev/hda1 /mnt/windows -t ntfs -r -o nls=utf8
    mount /dev/hda1 /mnt/windows -t ntfs -r -o nls=iso8859-2
    mount /dev/hda1 /mnt/windows -t ntfs -r -o nls=gb2312
    
-o fmask={VALUE}
-o dmask={VALUE}

El parámetro umask altera los permisos sobre archivos y directorios (consulta la Section 4.6 para recordar). fmask actua sobre los ficheros y el dmask sobre los directorios de la misma forma. También se puede combinar el efecto de las opciones. Aquí tienes algunos ejemplos:

    mount /dev/hda1 /mnt/windows -t ntfs -r -o fmask=0222
    mount /dev/hda1 /mnt/windows -t ntfs -r -o dmask=0222
    mount /dev/hda1 /mnt/windows -t ntfs -r -o fmask=0077,dmask=0222
    
-o case_sensitive={BOOL}

Windows conserva los mayúsculas en los nombres de los archivos, pero no distingue al leer. Por lo tanto puedes crear un fichero llamado MiFichero y luego abrirlo pidiendo el mIfICHero.

Por defecto Linux es sensible a las mayúsculas, MyFile, MyFile y myfile son fichero diferentes. Si quieres que Linux se comporte como Windows, en un volumen NTFS, define la opción case_sensitive como true. Definiendo la opción como false hará que el driver se comporte como Linux (por defecto)

    mount /dev/hda1 /mnt/windows -t ntfs -r -o case_sensitive=true
    mount /dev/hda1 /mnt/windows -t ntfs -r -o case_sensitive=false
    
-o sloppy={BOOL}

Por defecto, el driver no hará nada si alguna de las opciones es incorrecta. Añadiendo el parámetro sloppy el driver simplemente ignorará los parámetros incorrectos.

    mount /dev/hda1 /mnt/windows -t ntfs -r -o sloppy=true
    mount /dev/hda1 /mnt/windows -t ntfs -r -o sloppy=false
    
-o errors={VALUE}

Esta opción controla como se las arregla el driver con los problemas. Por defecto es probar y continue. Cualquier corrupción será reportada y seguirá trabajando. La alternativa es probar y recover. Por ahora la única recuperación que el driver puede hacer es reemplazar el sector del boot con el backup.

    mount /dev/hda1 /mnt/windows -t ntfs -r -o errors=continue
    mount /dev/hda1 /mnt/windows -t ntfs -r -o errors=recover
    

Arriba

4.9 ¿Cómo puedo cambiar los permisos de una partición NTFS ya montada?

Hay tres opciones para controlar los permisos y el propietario de ficheros y directorios: umask, uid y gid. Todas ellas mencionadas en Opciones más comunes del mount.

Abajo hay algunos ejemplos de cada opción y de cómo afecta a los ficheros. Usaremos siempre el mismo comando mount y sólo mostraremos las opciones.

    mount /dev/hda1 /mnt/windows -t ntfs -r
    

umask es un filtro de permisos, así que trabaja al contrario que el chmod. Todos los permisos es equivalente a 777 (rwxrwxrwx). Un umask de 0222 (-w--w--w-) dejaría 555 (r-xr-xr-x).

El umask por defecto es 0077, por razones de seguridad.

    mount ... -o umask=0277

    -r-x------ 1 root    root    28096 Aug 24 1996 chkdsk.exe
    
    mount ... -o umask=0222

    -r-xr-xr-x 1 root    root    28096 Aug 24 1996 chkdsk.exe
    

Hasta ahora los ficheros tienen como propietario y grupo root. Ahora probaremos con las opciones uid y gid.

    mount ... -o uid=flatcap

    -r-x------ 1 flatcap root    28096 Aug 24 1996 chkdsk.exe
    
    mount ... -o gid=winuser

    -r-x------ 1 root    winuser 28096 Aug 24 1996 chkdsk.exe
    
    mount ... -o uid=flatcap,gid=winuser

    -r-x------ 1 flatcap winuser 28096 Aug 24 1996 chkdsk.exe
    

Finalmente combinamos unas cuantas opciones para obtener un control preciso. Abajo damos al usuario flatcap todos los permisos, el grupo winuser tiene permisos de lectura y los demás no tienen ninguno.

    mount ... -o umask=0227,uid=flatcap,gid=winuser

    -r-xr-x--- 1 flatcap winuser 28096 Aug 24 1996 chkdsk.exe
    

Arriba

4.10 ¿Cómo monto un volumen NTFS automáticamente?

Una vez que estás satisfecho con tu comando mount, puedes decirle a Linux que monte el volumen automáticamente añadiendo una linea en el /etc/fstab (filesystem table).

Debajo tienes algunos ejemplos del comando mount y su equivalente fstab.
NB No te preocupes por el significado de 0 0.

    mount /dev/hda1 /mnt/windows -t ntfs -r

    /dev/hda1 /mnt/windows ntfs ro                                    0 0
    

Aquí hemos transformado -r en su equivalente -o ro.

    mount /dev/hda1 /mnt/windows -t ntfs -r -o umask=0222

    /dev/hda1 /mnt/windows ntfs ro,umask=0222                         0 0
    
    mount /dev/hda1 /mnt/windows -t ntfs -r -o umask=0222,uid=flatcap,gid=winuser

    /dev/hda1 /mnt/windows ntfs ro,umask=0222,uid=flatcap,gid=winuser 0 0
    

Arriba


5. Iniciando Sistemas Operativos con NTFS

5.1 ¿Puedo iniciar Windows en una partición NTFS?

Sí, grub y lilo pueden inciar Windows sobre un volumen NTFS. Lo que realmente ocurre es que el gestor de arranque de Linux encuentra el gestor de arranque de NTFS y le cede el control.

Arriba

5.2 ¿Cómo uso LILO?

Añade lo siguiente a /etc/lilo.conf, después reinicia lilo.

    other = /dev/hda1
        table = /dev/hda
        label = Windows
    

El other apunta a la partición que contiene Windows y table apunta a la tabla de partición de disco.

Arriba

5.3 ¿Cómo uso Grub?

Añande lo siguiente al /boot/grub/grub.conf

    title Windows
        root (hd0,0)
        makeactive
        chainloader +1
    

Según la numeración de discos de grub, /dev/hda es hd0, hdb es hd1, etc. Las particiones se numeran desde cero. Por lo tanto, hda1 es hd0,0, hdc4 es hd2,3.

Arriba


6. Distribuciones Linux

6.1 ¿Qué distribuciones soportan NTFS por defecto?

Las distribuciones de Linux que se sabe que soportan NTFS son: Mandrake, Debian, SuSE, Gentoo y Caldera

De hecho, la regla es que si el nombre no es RedHat, soportará NTFS.

Arriba

6.2 ¿Por qué RedHat no soporta NTFS?

Realmente me gustaría saberlo. Algunos rumores apuntan a un tema legal.

Arriba

6.3 ¿Por qué RedHat se bloquea al acceder a particiones con NTFS?

Comprueba qué versión del kernel estás usando con el comando uname -a. Si la versión es la 2.4.9 entonces es importante que actualices el kernel. Consulta el Website de RedHat Para más detalles.

Si lo prefieres, puedes compilar tu propio kernel. Mira ¿Cómo agrego soporte a NTFS en Linux? Para más detalles.

Arriba

6.4 ¿Es posible instalar NTFS en cualquier distribución Linux?

No exactamente. Phat Linux se puede instalar en una partición FAT con Windows, y entonces arrancarlo desde los ficheros en Windows. El nuevo driver casi tiene el suficiente soporte para usar este truco con NTFS.

Arriba


7. El nuevo Driver NTFS para Linux

7.1 ¿Qué es el nuevo Driver para NTFS?

Es una completa reimplementación del driver NTFS. El driver original fue escrito durante un periodo de varios años. Al principio no sabiamos mucho de NTFS ni Linux y el código fuente se convirtio en algo muy difícil de mantener.

Creamos un nuevo driver, con nuestros nuevos conocimentos, que es mucho más simple, rápido y fácil de mantener.

Arriba

7.2 ¿Tengo qué usarlo?

No. Ya hay un driver NTFS en el kernel actual de Linux, por lo que no es necesario que lo uses. El driver original, aunque antiguo, es lo suficientemente fiable para el uso diario.

Arriba

7.3 ¿Cómo uso el nuevo Driver?

Nosotros liberamos el nuevo driver en forma de patch para el código fuente del kernel oficial de Linux..

../downloads.html
http://www.kernel.og/pub/linux/kernel/v2.4

Arriba

7.4 ¿Qué es un patch?

Un patch es un conjunto de cambios para un conjunto de archivos de texto. Desde que sólo modificamos el código NTFS, es inecesario que saquemos todo el código del kernel cada vez que hacemos un pequeño cambio. Hacemos nuestros patches contra las versiones oficiales del kernel de Linux.

Una vez que has desempaquetado los fuentes, colócate en el directorio de éstos y utiliza el comando (sustituyendo directorio y nombrepatch por los necesarios):

    patch -p1 < directorio/to/nombrepatch
    

Esto modificará el código fuente. No debería haber ningún fallo. Después compila el kernel normalmente. Hay instrucciones para esto en otro sitio de este FAQ.

Arriba

7.5 ¿Y si todavía no lo entiendo?

Lo siento mucho. Intentamos ayudar a todo el mundo, pero nuestro tiempo es limitado. Hay unos cuantos sitios que te pueden ayudar con lo más básico de Linux. Además puedes buscar si hay algún grupo de usuarios de Linux cerca tuya.

Arriba

7.6 ¿Cuándo estará el nuevo código en el Kernel de Linux?

Hay dos kernels a tener en cuenta. El nuevo código ya está en el desarrollo del kernel de Linux. Fue introducido en la versión 2.5.11.

La versión estable del kernel de Linux, actualmente la 2.4.20, todavía mantiene el driver antiguo. Estamos contentos con el codigo actual, pero todavía tenemos que convencer a los Dioses del Kernel de que es bueno.

Hasta que se sea incorporado, haremos numerosas versiones en forma de patchs.

Arriba

7.7 ¿Se puede implementar un wrapper para el driver de Windows?

Suena muy bien pero hay varios problemas.

El mayor problema técnico es compatibilizar el sistema DLL de Windows con el VFS de Linux. Se podría hacer, pero no sería buena idea. Tendría que ejecutarse como una parte del kernel lo que significa que si fallara colgaría la máquina. Sin fuentes, no podríamos trabajar en el problema.

El siguiente problema es la compatibilidad. ¿Qué versión del sistema de ficheros de Windows deberíamos usar? Eligiendo una limitariamos su uso, hacer el wrapper compatible para todos sería la pesadilla de un programador.

Y la cosa se complica más. Las implicaciones legales que supone distribuir sistemas de ficheros de Windows traería problemas. Además el caracter comercial de driver supondría que los otros programadores del kernel no investigarían ningún problema su alguien ha usado el wrapper NTFS.

Arriba