lunes, 16 de diciembre de 2013

Borrar Archivos Automáticamente en Ubuntu 12.04

Hola, hoy les dedico otra entrada a los pequeños linuxeros, que empiezan a Administrar sistemas GNU/Linux.

A cualquiera en su carrera profesional que se dedique a los sistemas de información, les llegará el día en que tengan una carpeta que temporalmente vaya almacenando ficheros, pero que son de un uso preventivo, y que a lo largo del tiempo perderá su utilidad, como pueden ser Backups de hace mucho tiempo (teniendo muchos más actuales, con más modificaciones actuales), o por ejemplo la carpeta compartida en nuestro samba (como se explicó en la anterior entrada http://r00tedline.blogspot.com.es/2013/12/samba-en-ubuntu-1010.html) o cualquier otro tipo de archivo que se quiera almacenar pero que en un futuro se deseará que se borre.

Pues bien, mucha gente que continuamos nuestra formación en estos sistemas, lo primero que se nos viene a la cabeza es tener que crear un Script que se este ejecutando en la máquina para borrar los ficheros temporales. No es necesario tener que desarrollar un script, para esto. Tenemos que echar mano del Crontab de GNU/Linux.
Con una simple orden con la sintaxis de cron, será más que suficiente. 


En Ubuntu 12.04, modificaremos el archivo ubicado /etc/crontab y añadimos la siguiente orden.
0 4 * * * find /dev/Birras -mtime +15 -exec rm {} \;

Esto automáticamente todos los días a las 4 de la mañana, buscará todos los ficheros que se almacenan en la ruta /dev/Birras y aquellos que sean más antiguos de 15 días, se borrarán automáticamente.

Hay que entender que és lo que se esta lanzando.Estas ordenes de cron funcionan del siguiente modo:


Para poder listar las ordenes que tenemos actualmente corriendo en el cron, podemos lanzar #crontab - l para verlas:

Si quieres hacer una prueba, para comprobar que esto funciona antes de liarla parda, puedes modificar los meta-datos de creación de los ficheros mediante el comando touch.

Primero listamos lo que actuamente tenemos en el directorio, que queremos trabajar:

-rw-r--r--  1 root root    0 dic  3 17:42 pepe

Como vemos, hay un fichero llamado "pepe" creado el 3 de diciembre de 2013. Para modificar lo a día 06/Junio/2013 creado a las 17:36:25 lanzamos:

#touch -t 201306061736.25 pepe

Y quedaría: 

-rw-r--r--  1 root root    0 jun  6 17:36 pepe

Con esto podemos jugar con la fecha de creación de los archivos para comprobar el correcto funcionamiento del crontab, según se halla configurado.

Espero que os vaya muy bien amigos.


Saludos | *
Diego Oliva

No hay comentarios:

Publicar un comentario