[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: OT - autofs y tmpfs



El Fri, 21 Feb 2014 15:15:32 +0000 (UTC)
Camaleón <noelamac@gmail.com> escribió:
> El Thu, 20 Feb 2014 22:19:02 +0100, Juanjo López escribió:
> 
> > Hola.
> 
> (ese html...)

Perdón; envié envie desde el cliente WEB de GMail, y hace mucho que no
lo uso. Esta respuesta va desde claws-mail :-)

> 
> > Recientemente, he instalado un SSD como segundo disco duro, con una
> > partición F2FS para /.
> > /home se encuentra en esa misma partición.
> > 
> > El objetivo es minimizar las escrituras en este disco SSD, por lo
> > que había pensado en lo siguiente:
> > 
> > * Para cada usuario, crear un archivo .tar en /var/local, que
> > contenga todos los archivos de su home.
> > * En auto.master, crear un mapa para el directorio /home:
> > '/home  program:/usr/local/bin/autohome'
> > 
> > Cada vez que un usuario entre al sistema, el script que genera el
> > mapa se encarga de extraer el tar bajo /tmp/home ( /tmp es tmpfs ),
> > y devuelve a su vez un mapa del tipo '$NAME  -fstype=bind 
> > :/tmp/home/$NAME'.
> 
> Uhhh... uséase, que la /home esté en la memoria RAM, pero ¿no es un
> poco arriesgado? Si la sincronización falla podrías perder datos :-?

Es un equipo doméstico. Ni mis niños ni sus padres trabajan con 'datos
críticos'. De todas formas, un pequeño script desde cron minimiza
pérdidas. ;-)

> > Hasta aquí, todo OK. El problema es:  ¿ como actualizar el tar con
> > los datos de cada usuario al desmontar su /home ??
> > 
> > No encuentro ninguna forma de ejecutar ningún tipo de script al
> > desmontar el directorio, con lo que los datos de cada usuario no son
> > volcados a su archivo .tar correspondiente, y cualquier cambio se
> > pierde.
> > 
> > He pensado en poner un script en cron que actualice los datos del
> > usuario cada cierto tiempo (si es que hay cambios), por ejemplo con
> > rsync (y eliminar el tar del esquema), pero no me parece una
> > solución elegante, y siempre puede suceder que un usuario salga
> > antes de que el cron llame al script de sincronización y se pierdan
> > los últimos cambios.
> > 
> > ¿ Alguna sugerencia ?
> 
> Lo del archivo ".tar" se me escapa, pero creo que este sistema te
> podría servir:
> 
> Ubuntu thumb drive
> http://robwicks.com/tag/tmpfs/

Lo del tar es una 'pijada'. En vez de guardar los datos en un
directorio, hacerlo dentro de un archivo tar. Ya lo he eliminado del
esquema.

Efectivamente, lo que quiero realizar es algo como lo que explican en
el enlace.

En un principio, la idea era utilizar autofs para montar los
directorios de los usuarios en tmpfs, sincronizandolos con un archivo
tar (eliminado del esquema), o desde un directorio.

Este sistema tiene un inconveniente: algunos programas, como por
ejemplo 'lightdm', acceden a TODOS los directorios de los usuarios
buscando ciertos archivos. Por ejemplo, 'lightdm' busca los archivos
'.face' para mostrar las imágenes de los usuarios. Si utilizo autofs,
se cargan en memória todos los directorios /home/, lo cual no es
aceptable.

Actualmente, estoy experimentando con otra secuencia, en varios pasos:

1.- Arranque del sistema. Se crean y sincronizan los directorios /home/
de todos los usuarios, copiando tan solo ciertos datos (archivos .face
en este caso).

2.- libpam-script, que a su vez ejecuta un script cada vez que un
usuario INICIA sesión. Un rsync y listo.

3.- Un script en cron, que periodicamente (cada 15 minutos) realice un
rsync de los directorios /home/ de los USUARIOS LOGUEADOS.

4.- libpam-script, que a su vez ejecuta un script cada vez que un
usuario FINALIZA sesión. Otro rsync.

Estoy en ello; si os resulta interesante, cuando lo termine posteo los
detalles exactos. Creo que puede resultar útil para algunos.

En lo referente a la pregunta inicial, alguna forma de ejecutar algo al
desmontar una unidad, no he encontrado nada relevante. Aparece por ahí
algo sobre programas auxiliares, del tipo umount.smb, pero no he
profundizado. Como ya he comentado, el automontaje presenta ciertos
inconvenientes, por lo que he descartado esa ruta de acción.

> Saludos,

Saludos.


Reply to: