Automontaje y Escritura NTFS en Debian Lenny
Escribo esta autonota para resolver las dudas que me han surgido cuando me han preguntado sobre el automontaje de una partición NTFS (partición de sistemas W$) en Debian Lenny. La partición debe ser montada con ntfs-3g que nos dará la posibilidad de escribir en la particion no solo leer, que es lo que hace el modulo ntfs de Debian.
Sin más pasemos a ver como se hace:
Esta autonota servirá sobre todo para los usuarios que tienen en una misma máquina los dos sistemas operativos funcionando. También, como no, para los usuarios que se les presente la necesidad de leer y escribir en una partición NTFS.
Para poder leer y escribir en una partición NTFS desde nuestra Debian Lenny debemos instalar el paquete ntfs-3g
root@juanmi:~# apt-get install ntfs-3g
Leyendo lista de paquetes… Hecho
Creando árbol de dependencias
Leyendo la información de estado… Hecho
Se instalarán los siguientes paquetes extras:
libntfs-3g31
Se instalarán los siguientes paquetes NUEVOS:
libntfs-3g31 ntfs-3g
0 actualizados, 2 se instalarán, 0 para eliminar y 24 no actualizados.
Necesito descargar 166kB de archivos.
After this operation, 475kB of additional disk space will be used.
¿Desea continuar [S/n]? S
Des:1 http://ftp.us.debian.org lenny/main libntfs-3g31 1:1.2531-1.1 [137kB]
Des:2 http://ftp.us.debian.org lenny/main ntfs-3g 1:1.2531-1.1 [29,3kB]
Descargados 166kB en 1s (102kB/s)
Seleccionando el paquete libntfs-3g31 previamente no seleccionado.
(Leyendo la base de datos …
168855 ficheros y directorios instalados actualmente.)
Desempaquetando libntfs-3g31 (de …/libntfs-3g31_1:1.2531-1.1_amd64.deb) …
Seleccionando el paquete ntfs-3g previamente no seleccionado.
Desempaquetando ntfs-3g (de …/ntfs-3g_1:1.2531-1.1_amd64.deb) …
Processing triggers for hal …
Regenerating hal fdi cache …
Restarting Hardware abstraction layer: hald.
Processing triggers for man-db …
Configurando libntfs-3g31 (1:1.2531-1.1) …
Configurando ntfs-3g (1:1.2531-1.1) …
Localizaremos la partición NTFS con el comando fdisk -l como root
root@juanmi:~# fdisk -l
Disco /dev/hda: 9773 MB, 9773776896 bytes
255 heads, 63 sectors/track, 1188 cylinders
Units = cilindros of 16065 * 512 = 8225280 bytes
Disk identifier: 0x8fac8fac
Disposit. Inicio Comienzo Fin Bloques Id Sistema
/dev/hda1 * 1 637 5116671 7 HPFS/NTFS
/dev/hda2 638 1157 4176900 83 Linux
/dev/hda3 1158 1188 249007 5 Extendida
/dev/hda5 1158 1188 248976 82 Linux swap / Solaris
Ahí la tenemos hda1 HPFS/NTFS
Perfecto ya podemos probar si realmente nos monta la unidad de disco HDA1 en el directorio que le digamos:
debian:~# mount -t ntfs-3g /dev/hda1 /ntfs
debian:~# cd /ntfs
debian:/ntfs# ls
Archivos de programa D ntldr
AUTOEXEC.BAT Documents and Settings pagefile.sys
Bootfont.bin IO.SYS System Volume Information
Muy bien, si al intentar poner este comando nos da un error en el cual se nos aconseja intentar con -o force, hacedlo si todo va bien seguid adelante para montar automaticamente la partición ntfs al iniciar el sistema.
Reconfiguraremos los locales para que nos nos den problemas los acentos y los caracteres especiales de nuestro alfabeto. Debeis dejar marcadas las que os pongo aquí si sois españoles claro. Y dejar como predetermindado es_ES@euro ISO-8859-15
debian:/ntfs# dpkg-reconfigure locales
[*] es_ES.UTF-8 UTF-8
[*] es_ES@euro ISO-8859-15
Para montar la partición al iniciar el sistema editaremos el fichero /etc/fstab y añadiremos la linea correspondiente a nuestra nueva partición.
debian:/ntfs# vi /etc/fstab
# /etc/fstab: static file system information.
#
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc defaults 0 0
/dev/hda2 / ext3 errors=remount-ro 0 1
/dev/hda5 none swap sw 0 0
/dev/hdc /media/cdrom0 udf,iso9660 user,noauto 0 0
/dev/fd0 /media/floppy0 auto rw,user,noauto 0 0
/dev/hda1 /ntfs ntfs-3g silent,users,nls=es_ES 0 0
Fijaros en la ultima linea, ahí es donde defino la partición NTFS, una cosa a tener en cuanta es la opción nls=es_ES, sino quereis tener problemas con los acentos y las ñ, debeis ponerla.
A partir de aqui todos los usuarios del sistema Debian podrán escribir y leer en la partición NTFS.
Espero que os valga.
Warning: Use of undefined constant type - assumed 'type' (this will throw an Error in a future version of PHP) in /home/improvisa_com/web/improvisa.com/public_html/wp-content/themes/grassland/comments.php on line 38
Pues si que nos vale Juanmi.. xD
Dioooooooos me estoy haciendo un friki del maravilloso mundo del «apt-get install»….
Salu2 y Gracias…!!!
Jeje, cuanto me alegro 🙂
Eso de me estoy haciendo, ya lo eres 😉
De aquí a nada te veo con mi firma apt-get remove guerras jejejeje
Cierto….. ya lo soy…no quería reconocerlo… xDDD
Gracias por todo Juanmi me has salvado la vida y la de muchos de mis compatriotas, lo único que he tenido es unos problemillas con las eñes y los acentos. En el pasado a menudo he tenido problemas con los acentos y las eñes al montar particiones FAT o NTFS o al montar o compartir directorios usando Samba. Esto ocurre porque GNU/Linux usa distintos juegos de caracteres que Windows y DOS. En esta entrada vamos a tratar de aclarar todos los aspectos que pueden impedirnos disfrutar de nuestra apreciadas eñes cuando nos enfrentamos con ficheros cuyo origen o destino sea un sistema operativo de Microsoft.
Existe una multitud de juegos de caracteres. Podemos ver muchos de ellos en popular character encodings . Allí vemos el Windows-1252, el CP850, el ISO 8859-1 (Latin 1), el ISO 8859-15 (Latin 9) o el Unicode (con su sistema de codificación de longitud variable más típico, el UTF-8) , que son los que más nos interesan para el asunto que nos ocupa aquí en España. En el artículo de la WikiPedia Western Latin character sets tenemos una tabla mostrándonos las diferencias entre estos juegos de caracteres.
Antes de poner manos a la obra, es conveniente que verifiquemos que el bash nos muestra correctamente acentos, eñes y si acaso, el símbolo del euro € escribiendo en un terminal áéíóúÁÉÍÓÚñÑ€. Si no salen bien, puede ser por dos motivos principalmente:
El bash no está correctamente configurado para mostrar acentos. Esto ocurría bastante hace unos años, y era necesario hacer todo tipo de ajustes. Sin embargo, en las distribuciones actuales normalmente no es necesario hacer nada.
La fuente usada en el terminal que estamos usando (Consola de Linux, Putty, Konsole, GNOME Terminal, etc.) no lleva acentos o no están correctamente mapeados.
Lo primero que tenemos que tener en mente es que el juego de caracteres que vamos a usar en Linux es el que especificamos en la variable LANG. Yo normalmente la tengo en inglés (ya he comentado alguna vez que es muy útil tener los errores y mensajes en inglés para poder buscarlos) y con el juego de caracteres de alfabetos latinos con el símbolo del Euro, el ISO 8859-15. Podemos ver en el siguiente ejemplo que si especificáramos un LANG no apropiado para nuestro entorno, como C, no veríamos ninguno de los caracteres especiales:
$ echo $LANG
en_US.ISO-8859-15
$ ls 0áéíóúñ€
0áéíóúñ€
$ export LANG=C
$ ls 0áéíóúñ€
0???????Por tanto, la clave de este juego es siempre traducir de o desde el juego de caracteres ISO 8859-15.
Arriba España.
Tengo una preguntita para usted!
¿Por qué tenemos que instalar el ntfs-3g?
No sería válido también poner en el fstab:
/dev/hda1 /media/windows ntfs auto,rw,exec,users,dmask=000,fmask=111,nls=es_ES 0 0
Saludos
si
No, claro que no, el ntfs solo lee, para escribir ntfs-3g
Últimamente me pasa que a veces conecto un USB y no me escribe bien o no me reconoce bien los caracteres, y es del tipo FAT, pues dejo aquí en una línea como montarlo rápidamente, con permisos de escritura y con la codificación correspondiente:
mount -t vfat -o rw,iocharset=iso8859-15 /dev/sda1 /discoclientes
Salu2
Con la anotación de arriba y el modificador:
-o rw con esto pone 755 por defecto y root
Por tanto si queremos que cualquier usuario haga cualquier cosa, sería quitar -o rw y poner umask=000 que añadirá 777 y cualquier usuario podrá hacer cualquier cosa.
mount -t vfat -o umask=000,iocharset=iso8859-15 /dev/sda1 /discoclientes
Mil gracias CeLSuM, una preguntilla, has probado con ntfs-3,¿funciona de igual forma?
Saludos.
Me auto contesto, funciona a la perfección 😉
mount -t ntfs-3g -o umask=000,iocharset=iso8859-15 /dev/sdg1 /home/juanmi/Desktop/ntfs/
Saludos y mil gracias.