lunes, mayo 07, 2007

En Debian etch - Leer y Escribir en Particiones NTFS (WinXP) Guía sencilla y práctica.

Todo comenzo asi, tenia particiones fat32 las cuales desde linux son faciles de montar para lectura/escritura. Luego por un juego que en guin me daba problemas con la particion fat la cambie a ntfs, que desde linux solo funciona en modo lectura, asi que solo la podia leer pero no escribir :( asi que googleando un rato encontre varias formas pero ninguna me convencia hasta que encontre la siguente que estaba para ubuntu y yo la probe en mi debian etch.

Como leer y escribir en particiones ntfs (WinXP), una guía sencilla y práctica.

Aca la URL de referencia: http://www.ubuntu-es.org/index.php?q=node/29904

Lo primero es avisar de que ntfs-3g es aun una beta, por lo que no se recomienda su uso en máquinas dedicadas a la producción. Si es inevitable trabajar con Windows, es preferible usar fs-driver.org para montar las particiones ext3 desde el SO de Microsoft.

Dicho esto, me gustaría mencionar que es bastante estable y seguro. Una prueba de ello (además de los casi 2 años de test del creador del driver) la pueden encontrar en un post del mismo autor del HOWTO en los foros de Ubuntu.

Llegados a este punto, debería explicar la problemática existente de tiempo atrás con las particiones Windows y Linux y comentar las alternativas existentes. Lo siento mucho pero no lo haré, solo diré que nosotros usaremos FUSE y ntfs-3g.

1. Instalación

Lo primero que se necesita es añadir uno de los dos siguientes repositorios a nuestro sources.list, para lo cual tecleamos.

# nano /etc/apt/sources.list

Y añadimos al final del fichero lo siguiente:

#ubuntu
#repositiros para instalar ntfs-3g k sirve para escribir en particiones ntfs
deb http://flomertens.keo.in/ubuntu/ dapper main
deb-src http://flomertens.keo.in/ubuntu/ dapper main

Guardamos y cerramos.

Actualizamos nuestro sistema

# apt-get update
Aquí la terminal puede dar un mensaje de advertencia pidiéndote que teclees "Y" para aceptarlo, o bien "N" para cancelar, yo pulse "Y" y ningún problema.

E instalamos todo con una sola orden

# apt-get install ntfs-3g

Luego de que este instalado debemos eliminar los repositorios que agregamos ( ya que son de ubuntu) o bien comentarlos con un # delante de la direccion del repositorio. Asi los deje yo:

#ubuntu
#repositiros para instalar ntfs-3g k sirve para escribir en particiones ntfs
#deb http://flomertens.keo.in/ubuntu/ dapper main
#deb-src http://flomertens.keo.in/ubuntu/ dapper main


2. Configuración

Para este paso asumiremos que no hay ninguna partición NTFS en modo sólo lectura previamente montada en el sistema, por lo que si la tiene es necesario que la desmonte, bien con el botón derecho del ratón sobre el icono de la unidad en el escritorio y pulsando en 'Desmontar volumen', bien mediante la correspondiente orden umount.

Cuando esté todo instalado correctamente, necesitaremos configurar la partición NTFS para que sea montada mediante ntfs-3g. Por tanto, hemos de saber el nombre de la tal partición.

# fdisk -l | grep NTFS

DarkSide:/home/nixon# fdisk -l | grep NTFS
/dev/hda1 * 1 1024 8225248+ 7 HPFS/NTFS
/dev/hda5 1025 3011 15960546 7 HPFS/NTFS

En mi caso aparecen dos, ya que tengo dos particiones NTFS, probaremos con la hda5 que es donde tengo los respaldos, y la montaremos en /media/winXP, para lo cual hemos primero de crear dicho directorio (si no estuviese ya creado)

# mkdir /media/winXP

Ahora modificaremos el fichero /etc/fstab para que monte la partición en cada reinicio

# nano /etc/fstab

/dev/hda5 /media/winXP ntfs-3g silent,umask=0,locale=es_ES.utf8,no_def_opts,allow_other 0 0

NOTA: Si tienen otras lineas de montaje con /dev/hda5 o /media/winXP de ntfs deben eleminarlas

OJO: Si ya existiese una orden para montar en /media/winXP la partición /dev/hda5 con nfs habría que sustituirla por la anterior.

Las localizaciones que podemos usar a la hora de montar la unidad se corresponden con la salida de este comando, en nuestro caso hemos usado es_ES.utf8

# nano /var/lib/locales/supported.d/local

Nota personal de Alex Martínez: el comando anterior nos lista las localizaciones soportadas. En mi caso aparecieron es_ES.utf8 y es_US.utf8 (y yo ocupé es_ES.utf8, es decir lo dejé exacto como aparece en el método.

Para termirnar, necesitamos cargar fuse en cada reinicio, para lo cual hemos de añadir una línea con la palabra fuse al final del fichero /etc/modules. Por tanto

# nano /etc/modules

Y añadimos fuse al final. Que en mi caso se añadio solo al momento de instalar ntfs-3g . Ya está listo, si queremos verlo en acción bastará con teclear

# modprobe fuse
# umount -a
# mount -a

Te mostrara un mensaje como:

DarkSide:~# mount -a
WARNING: Couldn't set locale to 'es_ES.utf8' thus some file names may not
be correct or visible. Please see the potential solution at
http://ntfs-3g.org/support.html#locale
WARNING: Deficient Linux kernel detected. Some driver features are
not available (swap file on NTFS, boot from NTFS by LILO), and
unmount is not safe unless it's made sure the ntfs-3g process
naturally terminates after calling 'umount'. If you wish this
message to disappear then you should upgrade to at least kernel
version 2.6.20, or request help from your distribution to fix
the kernel problem. The below documentation has more information:
/usr/share/doc/ntfs-3g/README.Debian

DarkSide:~#

pero solo es un warning, algo asi como una advertencia solamente.-

Ahora solo basta probar guardando un archivo en la particion que se monto en /media/winXP

Eso es todo.-

Más fácil imposible.