summaryrefslogtreecommitdiffstats
path: root/admin/Sources/Services/ogAdmRepoAux
diff options
context:
space:
mode:
authoririna <irinagomez@us.es>2013-05-21 11:55:01 +0000
committeririna <irinagomez@us.es>2013-05-21 11:55:01 +0000
commitcd1f0487198003f9895015cb8254bb848d5d2016 (patch)
treeefe84cfcef2f2abdbe73938b431e948e96946633 /admin/Sources/Services/ogAdmRepoAux
parentb2651a63576eec414f755325b90b340a9515aeff (diff)
#565 optimiza tamaño de las imágenes
git-svn-id: https://opengnsys.es/svn/branches/version1.0@3808 a21b9725-9963-47de-94b9-378ad31fedc9
Diffstat (limited to 'admin/Sources/Services/ogAdmRepoAux')
-rwxr-xr-xadmin/Sources/Services/ogAdmRepoAux30
1 files changed, 29 insertions, 1 deletions
diff --git a/admin/Sources/Services/ogAdmRepoAux b/admin/Sources/Services/ogAdmRepoAux
index d898036e..b26773a6 100755
--- a/admin/Sources/Services/ogAdmRepoAux
+++ b/admin/Sources/Services/ogAdmRepoAux
@@ -92,7 +92,6 @@ case "$PARM1" in
# Redimensionamos la imagen al tamaño necesario
# TODO modificar ogGetImageSize
IMGSIZE=$(ls -lk $IMGFILE| cut -f5 -d" ")
- echolog "$IMGSIZE"
if [ $IMGSIZE -lt $SIZEREQUIRED ];then
echolog "truncate --size=\">$SIZEREQUIRED\"k $IMGFILE"
truncate --size=">$SIZEREQUIRED"k $IMGFILE 2>&1 > $REPOLOG
@@ -156,6 +155,35 @@ case "$PARM1" in
umount $MOUNTDIR
;;
+ REDUCE_IMAGE)
+ # Reduce el archivo de la imagen a tamaño datos + 500M
+ #1 REDUCE_IMAGE
+ #2 Nombre Imagen
+ #3 Extensión [ img |diff ]
+ IMGEXT="$PARM3"
+ IMGFILE="$REPODIR$PARM2.$IMGEXT"
+ [ ! -f $IMGFILE ] && echolog "Imagen no existe" && exit 1
+ MOUNTDIR="$REPODIR""mount/${PARM2}"
+ [ "$IMGEXT" == "diff" ] && MOUNTDIR="$MOUNTDIR.$IMGEXT"
+
+ mount -o compress=lzo "$IMGFILE" "$MOUNTDIR"
+ AVAILABLE=$(df -k|grep $MOUNTDIR|awk '{print $4}')
+
+ # Si el espacio libre menor que 500Mb desmontamos la imagen y nos salimos
+ if [ $AVAILABLE -lt 500000 ]; then
+ umount $MOUNTDIR
+ exit 0
+ fi
+
+ USED=$(df -k|grep $MOUNTDIR|awk '{print $3}')
+ let ENDSIZE=USED+500000
+ echolog "reducir imagen REPO $PARM2 $IMGEXT, tamaño final: $ENDSIZE"
+ echolog btrfs filesystem resize "$ENDSIZE"k $MOUNTDIR
+ btrfs filesystem resize "$ENDSIZE"k $MOUNTDIR
+ umount $MOUNTDIR
+ echolog "truncate --size=\"$ENDSIZE\"k $IMGFILE"
+ truncate --size="$ENDSIZE"k $IMGFILE
+ ;;
default)
echolog "Solicitud con parametros \"$PARM\" no realizada, no registrada o con errores"
;;