X-Git-Url: https://git.llucax.com/z.facultad/75.08/llamadas.git/blobdiff_plain/026bebdac7b979429ba2c6cdb03eadb02ceb6550..cc3e8d6f209168feef5bfd51fbc5fed6df23f47d:/afinstal diff --git a/afinstal b/afinstal index 5b79f78..f759c3f 100755 --- a/afinstal +++ b/afinstal @@ -163,6 +163,7 @@ CONFDIR="${CURRDIR}/conf" INSTDIR="${CURRDIR}/inst" CONFFILE="${CONFDIR}/afinstal.conf" DEFAULTDIR=$CURRDIR +OWNCONFDIR="$HOME/.antifraude" havemonio=0 haveconf=0 havefraude=0 @@ -261,6 +262,15 @@ if [ ! -f "$CONFFILE" ] || [ ! -s "$CONFFILE" ]; then echo "" >> $CONFFILE done fi +if [ ! -f "$OWNCONFDIR" ]; then + mkdir -p "$OWNCONFDIR" +fi +if [ ! -f "$OWNCONFDIR/lock" ]; then + mkdir -p "$OWNCONFDIR/lock" +fi +if [ ! -f "$OWNCONFDIR/conf" ]; then + mkdir -p "$OWNCONFDIR/conf" +fi # Comienzo la instalacion de cada componente comandos=`echo $toinstall | sed s%,%" "%g` @@ -293,10 +303,19 @@ do MARCA # Le pido un rootpath donde se instalara este comando en particular - leer ">> Ingrese la ruta de instalación" "$CURRDIR/grupoNN" userpath - if [ -n "$userpath" ]; then ROOTPATH=$userpath - else ROOTPATH="$CURRDIR/grupoNN" - fi + is_writeable=0 + while [ $is_writeable -eq 0 ]; do + leer ">> Ingrese la ruta de instalación" "$CURRDIR" userpath + if [ -n "$userpath" ]; then + ROOTPATH=$userpath + if [ -w "${userpath%/*}" ]; then is_writeable=1 + else echo ">> ERROR: No es posible crear dicho directorio" + fi + else + ROOTPATH="$CURRDIR" + is_writible=1 + fi + done # preparlos los dirs que voy a sugerir BINDIR="${ROOTPATH}/bin" @@ -364,7 +383,6 @@ MARCA echo ">> Creando Estructura de Directorio...." mkdir -p "$BINDIR" mkdir -p "$LOGDIR" - mkdir -p "$CONFDIR/lock" touch "$LOGDIR/$LOGFILE" if [ "$comando" = "antifraude.pl" ]; then @@ -376,39 +394,62 @@ MARCA cp "$INSTDIR/$comando" "$BINDIR" chmod u+x "$BINDIR/$comando" - # TODO : no se debe copiar solo 1 vez? - cp "$INSTDIR/oridesti.txt" "$CONFDIR" + # Copio umbrales, oridesti y utilities una sola vez + if [ ! -f "$OWNCONFDIR/oridesti.txt" ]; then + cp "$INSTDIR/oridesti.txt" "$OWNCONFDIR" + fi + if [ ! -f "$OWNCONFDIR/umbrales.param" ]; then + cp "$INSTDIR/umbrales.param" "$OWNCONFDIR" + fi + if [ ! -f "$OWNCONFDIR/umbrales.id" ]; then + echo 0 >> "$OWNCONFDIR/umbrales.id" + fi + if [ ! -f "$OWNCONFDIR/util.sh" ]; then + cp "$INSTDIR/util.sh" "$OWNCONFDIR" + fi # Guardo los datos en el archivo de configuracion + ownconffile="$OWNCONFDIR/conf/${comando%.pl}.conf" + if [ -f "$ownconffile" ]; then + rm -rf "$ownconffile" + fi userid=$LOGNAME fecha=$(date +%d/%m/%Y) case $comando in "afimonio" ) numline=30; havemonio=1; usermonio=$userid; - fechamonio=$fecha;; + fechamonio=$fecha; + prefix="AFIM";; "aficonf" ) numline=20; haveconf=1; userconf=$userid; - fechaconf=$fecha;; + fechaconf=$fecha; + prefix="AFIC";; "antifraude.pl" ) numline=10; havefraude=1; userfraude=$userid; - fechafraude=$fecha;; - esac + fechafraude=$fecha; + prefix="ANTI";; + esac changeLine "$CONFFILE" "$numline" "Comando $comando" numline=$(($numline+1)) changeLine "$CONFFILE" "$numline" "BINDIR = $BINDIR" + echo "${prefix}_BINDIR=\"$BINDIR\"" >> $ownconffile numline=$(($numline+1)) changeLine "$CONFFILE" "$numline" "LOGDIR = $LOGDIR" + echo "${prefix}_LOGDIR=\"$LOGDIR\"" >> $ownconffile numline=$(($numline+1)) changeLine "$CONFFILE" "$numline" "LOGFILE = $LOGFILE" + echo "${prefix}_LOGFILE=\"$LOGFILE\"" >> $ownconffile numline=$(($numline+1)) changeLine "$CONFFILE" "$numline" "LOGSIZE = $LOGSIZE" + echo "${prefix}_LOGSIZE=$LOGSIZE" >> $ownconffile numline=$(($numline+1)) if [ "$comando" = "antifraude.pl" ]; then changeLine "$CONFFILE" "$numline" "DATADIR = $DATADIR" + echo "${prefix}_DATADIR=\"$DATADIR\"" >> $ownconffile numline=$(($numline+1)) changeLine "$CONFFILE" "$numline" "DATASIZE = " numline=$(($numline+1)) @@ -416,11 +457,11 @@ MARCA changeLine "$CONFFILE" "$numline" "USERID = $userid" numline=$(($numline+1)) changeLine "$CONFFILE" "$numline" "FECINS = $fecha" + echo ">> Instalación del componente $comando completada" + echo ">> Presione ENTER para continuar" + read done -# Creacion de archivos auxiliares -echo "0" > "$CONFDIR/umbrales.id" - # [STEP6] Ofrecer arrancar el Afimonio si estan los tres paquetes instalados # [STEP7] Mostrar en un recuadro que se encuentra instalado en el sistema