Servidores:hanzo:mantenimiento
Contenido
Mantenimiento habitual
Migrar versión de SIU-Pilagá
Si bien existe un procedimiento general para migrar la versión actual de SIU-Pilaga, este procedimiento tiende a variar con algunas nuevas versiones del sistema. Afortunadamente, el SIU siempre provee con sus nuevas versiones un instructivo a seguir, por lo que siempre se recomienda seguir comparar cada nuevo instructivo con el procedimiento actual.
Dicho esto, el procedimiento que aquí se detalla tiene un par de ventajas con respecto al sugerido por el SIU, por lo que se recomienda tomar los pasos que aquí se detallan como primera aproximación.
Paso 1: Obtener la nueva versión y preparar los directorios
Descargar la nueva versión del SIU-Pilagá, y descomprimirla en un directorio cualquiera. Luego, realizar los siguientes pasos:
* Eliminar el directorio /SIU-Pilaga-viejo * Renombrar el directorio /SIU-Pilaga a /SIU-Pilaga-viejo * Mover el directorio SIU-Pilaga a la carpeta /SIU-Pilaga
Notar que tanto estos pasos como los próximos asumen que el código del sistema está almacenado en el directorio /SIU-Pilaga.
Paso 2: Exportar archivos
Ahora es momento de exportar los archivos del viejo SIU-Pilaga. Para ello, debemos cargar las variables de entorno adecuadas, las cuales se encuentran el el archivo /entorno_viejo.sh. Las cargamos con el comando cd /
. entorno_viejo.sh
Habiendo exportado el código, exportamos el código con el comando toba proyecto exportar -p pilaga
Paso 3: Copiar los archivos al nuevo directorio
Ahora que ya tenemos todos los archivos necesarios, procedemos a unificarlos en la nueva versión, copiándolos del directorio /SIU-Pilaga-viejo al directorio /SIU-Pilaga.
Esquema de backup
Congelamiento de fechas
El congelamiento actual de las fechas del servidor se realiza en dos pasos: un script que deduce la hora que debe fijarse, y una configuración en CRON que llame al script cada un cierto intervalo.
El comando de CRON que llama al script es el siguiente. Se ejecuta en el minuto 0 (es decir, una vez por hora), y lleva como parámetro la hora que se debe fijar en el sistema:0 * * * * /root/scripts/hora/hora.pl 113012002010
Este comando fija la fecha actual (si se encuentra dentro de las horas que deben respetarse) al 30 de Noviembre de 2010, 12:00 hs.
El script, por otra parte, es un script en Perl que toma como argumento la hora que debe mantenerse. El código del mismo es:
- !/usr/bin/perl
use Net::NTP; my $RT = "Receive Timestamp"; my %response = get_ntp_response('ntp.unc.edu.ar'); my $hora_nueva;
($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime($response{$RT});
- El -1 es por falta de coordinacion con el servidor
if(($hour-1 == 12 && min >= 30) || $hour-1 >12) { $hora_nueva = $ARGV[0],"\n"; } else { $hora_nueva = sprintf("%02d%02d%02d%02d%04d\n",$mon+1,$mday,$hour-1,$min,$year+1900); } system("date $hora_nueva");
Permisos toba
Es necesario poner estos permisos para que la aplicacion ande y no corra riesgos de tener permisos de escritura y/o ejecusion donde no debe parado en toba_x_x
find /path/to/chmod -type d | xargs chmod -v 755 {} \; find /path/to/chmod -type f | xargs chmod -v 644 {} \; chmod -R 777 bin/
a veces no estan los directorios "logs" por lo tanto hay que crearlos y darles permisos 777