jueves, 30 de abril de 2015

Editar el archivo /etc/fstab para poder usar la Papelera de reciclaje en particiones ntfs

En muchas ocasiones nos interesa tener un sistema que tenga una partición en formato ntfs para guardar archivos que puedan ser vistos no solo por Linux, sino también por Windows.
Y nos interesa que los directorios y archivos que estén en ella puedan ser enviados a la Papelera de reciclaje, y puedan ser devueltos desde ella a su anterior dirección.

La partición ntfs no se automonta:
Si no hemos editado el archivo /etc/fstab para que se automonte la partición ntfs, ésta no se montara de forma automática al entrar en nuestra sesión gráfica, y tendremos que abrir el administrador de archivos, y desde él tendremos que abrir manualmente dicha partición.
a) Esto tiene el inconveniente de que para que funcionen algunos programas ( por ejemplo programas multimedia, reproductores de vídeo y/o audio ) que podamos haber configurado para que trabajen sobre los archivos de la partición ntfs, tendremos primero que abrir el administrador de archivos y abrir/montar manualmente dicha partición
b) Por contra esto tiene la ventaja de que una vez montada dicha partición podremos usar la papelera de reciclaje, tanto si tenemos un usuario o varios: desde cada sesión de usuario tendremos que montar la partición de forma manual, pero podremos usar la papelera de reciclaje con los archivos y directorios que hay en ella.

Sistema con un solo usuario:
La partición ntfs se automonta desde el inicio:
a) Ventaja: Si hemos editado el archivo /etc/fstab para que la partición ntfs ( que en este ejemplo es la partición /dev/sda2, y esta montada en /media/mi-disco) se automonte desde el inicio, con la línea
/dev/sda2 /media/mi-disco ntfs-3g rw,users  0  2
la partición ntfs estará disponible de forma automática desde el inicio en la sesión gráfica, sin que tengamos que abrirla desde el administrador de archivos, para ser usada por programas que hayamos configurado para que usen los archivos que contiene.

b) Inconveniente: por defecto los archivos y/o directorios que tengamos en la partición ntfs no pueden ser enviados a la papelera de reciclaje, y solo se nos permite eliminarlos de forma definitiva.
Pero esto se puede cambiar:

- Averiguar el id del usuario del sistema linux, con el comando:
id nombre_usuario
 que como ejemplo da el resultado:
nicasio@Qiana ~ $ id nicasio
uid=1000(nicasio) gid=1000(nicasio) grupos=1000(nicasio),4(adm),6(disk),24(cdrom),27(sudo),30(dip),46(plugdev),108(lpadmin),110(sambashare)
en este ejemplo el uid de mi usuario es uid=1000 en términos numéricos, y nicasio en términos alfabéticos.

Si solo tenemos un usuario, el que creamos al instalar el sistema, éste tendrá permisos de administrador, y su uid y gid serán por defecto 1000, o en términos alfabéticos el mismo nombre del usuario, que en este ejemplo es: nicasio (conociendo esto nos podemos ahorrar el ejecutar el comando id nombre_usuario, ya que sabemos ya lo que nos va a dar )

- Añadir esta información a la linea correspondiente a la partición ntfs en el archivo /etc/fstab, poniéndola detrás ntfs-3g ; en este ejemplo dicha línea quedaría como sigue:

/dev/sda2 /media/mi-disco ntfs-3g uid=1000  rw,users  0  2
si ponemos el uid en términos numéricos, o
/dev/sda2 /media/mi-disco ntfs-3g uid=nicasio  rw,users  0  2
si  ponemos el uid en términos alfabéticos

- Reiniciar el sistema, y ya podremos enviar a la papelera de reciclaje archivos y/o directorios que tengamos en la partición ntfs. Con lo que tenemos la situación perfecta, sin ninguna de los inconvenientes, y con las dos ventajas indicadas, en la que la partición ntfs se automonta desde el inicio, y podemos usar la papelera de reciclaje.

Cuando enviamos un archivo o directorio a la papelera de reciclaje desde la carpeta de usuario, la dirección de la papelera a la que lo enviamos es:  /home/nicasio/.local/share/Trash/files

Cuando enviamos un archivo o directorio a la papelera de reciclaje desde una partición ntfs, la dirección de la papelera a la que lo enviamos es:  /media/mi-disco/.Trash-1000/files    ( donde 1000 se corresponde con el id del usuario )

En ambos casos el archivo o directorio enviado a la papelera nos aparece en el administrador de archivos en la dirección: trash:///, y desde ahí podremos recuperarlo si queremos, o eliminarlo de forma definitiva.

--------------------------------------

Sistema con varios usuarios:
Con la linea anteriormente indicada para usar la papelera en una partición ntfs, si tenemos mas de un usuario, solo podremos usar la papelera en el usuario administrador con el que instalamos el sistema, pero no con otros usuarios que hayamos añadido posteriormente.
Tras largas pruebas por mi parte sin éxito, pero con la ayuda inestimable de JCSENAR en http://forums.linuxmint.com/viewtopic.php?f=68&t=194486
he logrado poder usar la papelera de reciclaje desde las entradas de sesión de cada uno de los usuarios.
En resumen, la entrada que hay que poner en el archivo /etc/fstab con respecto a la partición ntfs es similar a la siguiente:
UUID=CC58335F5833480A /media/DATOS ntfs-3g defaults,permissions 0 0
( la parte que no esta en negrita hay que cambiarla con los datos particulares de la partición ntfs que se esta usando; la parte en negrita es la que hace que la partición se automonte de tal forma que se puede usar la papelera en cada uno de los usuarios del sistema )

Lo que sucede (lógico, por otra parte) es que los archivos que borra cualquier usuario desparecen para todos ellos de la partición; cada usuario solo puede ver y restaurar el contenido de su papelera que contiene lo que haya borrado él mismo; no puede ver ni restaurar el contenido de la papelera de otro usuario (solo podría hacerlo root ejecutando el administrador de archivos en modo root y mostrando los archivos ocultos, y moviendo manualmente el archivo en cuestión a su lugar de origen) con lo que hay que tener cuidado con lo que se borra del la partición común.

De esta forma en la partición ntfs se crean directorios .Trash-xxxx ( xxxx es un numero para cada usuario ) correspondientes a cada uno de los usuarios del sistema. En mi caso, he comprobado los permisos de los directorios .Trash-1000 y .Trash-1001 en esa partición, y ambos pertenecen a su respectivo usuario y a su respectivo grupo.

Dejo una imagen de como deben estar los permisos de los directorios .trash



Editado:
Si la partición ntfs la creamos y montamos durante el proceso de instalación del sistema , la linea que debemos tener en el /etc/fstab es del tipo:
UUID=CC58335F5833480A /media/DATOS ntfs-3g defaults,nosuid,permissions 0 0
Pero si la partición ntfs la creamos posteriormente a la instalación del sistema, no hace falta poner el parámetro nosuid, y nos basta con:
UUID=CC58335F5833480A /media/DATOS ntfs-3g defaults,permissions 0 0

De todas forma, para que complicarnos la vida, si con la primera de estas dos lineas funciona en ambos casos, lo mejor seria poner siempre la primera.



1 comentario:

  1. Sr. Paquito al habla.

    Gracias por echarme un cable con esto.

    Un placer.

    ResponderEliminar

A la vez que haces un comentario, por favor da una puntuación al tema: malo, normal, bueno o muy bueno.
Gracias.