NTFS con permisos de escritura en Debian Etch

May 22nd, 2007

Linux NTFSMediante este artículo podremos leer, escribir, formatear y reparar particiones NTFS desde Linux Debian Etch con seguridad que no nos cargamos el sistema de ficheros. Existen otros proyectos que no son libres como Paragon NTFS y Captive NTFS (este último es libre pero usa el driver ntfs.sys de MS Windows) que permiten escribir en NTFS pero sin el rendimiento ni las posibilidades de ntfs-3g.
Aviso: El paquete ntfs-3g sólo existe para la rama testing. Este artículo pretende hacerlo funcionar en Etch (stable) instalando los paquetes deb y cubriendo nosotros mismos las dependencias.
Descarga e instalación

$ wget
http://ftp.uk.debian.org/debian/pool/main/t/tzdata/tzdata_2007f-3_all.deb
$ wget
http://ftp.uk.debian.org/debian/pool/main/n/ntfs-3g/libntfs-3g2_1.516-1_i386.deb
$ wget
http://ftp.es.debian.org/debian/pool/main/g/glibc/libc6_2.5-7_i386.deb
$ wget
http://ftp.fr.debian.org/debian/pool/main/n/ntfs-3g/libntfs-3g0_1.328-2_i386.deb
$ wget wget
http://ftp.uk.debian.org/debian/pool/main/n/ntfs-3g/ntfs-3g_1.516-1_i386.deb
$ wget
http://ftp.fr.debian.org/debian/pool/main/f/fuse/libfuse2_2.6.3-2_i386.deb
$ wget
http://ftp.fr.debian.org/debian/pool/main/f/fuse/fuse-utils_2.6.3-2_i386.deb

Instalaremos los paquetes

$ dpkg -i nombre_del_paquete

Entre ellos hay dependencias pero quedarán cubiertas al acabar el proceso. Si un paquete no se deja instalar fijaos en el nombre del paquete del cual depende, lo instalais y volveis con el paquete que no se dejaba instalar. Por ejemplo ntfs-3g depende de libc6 y libc6 depende de tzdata, así que instalaremos tzdata, luego libc6 y después ntfs-3g.

Montar la partición ntfs

$ sudo mount /dev/hdc1 -t ntfs-3g /mnt/ntfs_disk/

Sustituyendo /dev/hdc1 y /mnt/ntfs_disk por las rutas de nuestra máquina. Si los nombres de archivos aparecen con caracteres extraños haremos lo siguiente:

$ sudo mount /dev/hdc1 -t ntfs-3g /mnt/ntfs_disk/ -o locale=es_ES.utf8

Para que se monte la partición ntfs añadirmos la siguiente linea al fstab

/dev/hdc1 /mnt/ntfs_disk ntfs-3g defaults,auto 0 0

Formatear partición en ntfs
Con cfdisk podemos eliminar y crear particiones, pero no podemos formatear en NTFS. Para eso existe mkfs . Instalamos el paquete ntfsprogs

$ sudo apt-get install ntfsprogs

Y le damos formato a la partición

$ sudo mkfs /dev/hdc1

Errores en partición
Si al intentar montar una partición nos aparece un mensaje “Volume is scheduled for check” es porque Windows tiene una programada una comprobación de integridad de datos. Lo podemos forzar con:

$ sudo mount /dev/hdc1 -t ntfs-3g -o force /mnt/ntfs_disk/

Aunque es preferible iniciar con Windows y que sea éste el que haga la comprobación de datos.

Para reparar una partición NTFS haremos uso de ntfsfix con la partición desmontada.

$ ntfsfix /dev/hdc1
Mounting volume... OK
Processing of $MFT and $MFTMirr completed successfully.
NTFS volume version is 3.1.
Setting required flags on partition... OK
Going to empty the journal ($LogFile)... OK
NTFS partition /dev/hdc1 was processed successfully.

Siendo necesario repetir el comando hasta que diga todo OK.


La estructura del formato NTFS implica dificultades para operar con los archivos; se crean metadatos para poder indexar los archivos y así facilitar algunas tareas (búsqueda, campos para Active Directory, etc…)
También se realiza un “registro transaccional” donde queda almacenada información que “asegura” la integridad de los archivos. Estas características han hecho que hasta hace muy poco (21/02/2007) no existiera una versión estable que permitiera trabajar en particiones NTFS con todas las posibilidades.
Información sacada de http://www.ntfs-3g.org, http://es.wikipedia.org/wiki/NTFS y mi experiencia personal.

Publicado en la categoría Debian, Linux

2 Responses

    Manuel Dijo:

    Muy buen post. Me ha resultado muy útil.
    Muchas gracias :)

    Un saludo

    Tonos Dijo:

    Excelent post, sigue con el buen trabajo!

Hacer comentario