summaryrefslogtreecommitdiffstats
path: root/client/engine/Cache.lib
diff options
context:
space:
mode:
authoralbertogp <albertogp@uma.es>2014-05-28 11:02:44 +0000
committeralbertogp <albertogp@uma.es>2014-05-28 11:02:44 +0000
commit1cbf9e0c52fb98fd9eed2c03982ec5b9bc0ad9a0 (patch)
tree3a1b46f6e4458b9ef6e50ddd7ce161a6ea0ee813 /client/engine/Cache.lib
parent9de724362e4be5828a24e0ed9367839c74363e23 (diff)
#541
Integrando cambios en version 1.0 Cambios en ficheros Cache.lib, Disk.lib, FileSystem.lib, Image.lib git-svn-id: https://opengnsys.es/svn/branches/version1.0@4288 a21b9725-9963-47de-94b9-378ad31fedc9
Diffstat (limited to 'client/engine/Cache.lib')
-rwxr-xr-xclient/engine/Cache.lib56
1 files changed, 46 insertions, 10 deletions
diff --git a/client/engine/Cache.lib b/client/engine/Cache.lib
index 1a444aed..234a54b2 100755
--- a/client/engine/Cache.lib
+++ b/client/engine/Cache.lib
@@ -182,6 +182,25 @@ PART=$(realpath /dev/disk/by-label/CACHE 2>/dev/null)
PART=${PART:-$(sfdisk -l 2>/dev/null | awk '$6~/ca|a7/ {print $1}')}
PART=${PART%% *}
+# Si Tipo de de Disco es GPT #agp
+TIPODISK=$(ogGetPartitionTableType 1)
+if [ "$TIPODISK" == "GPT" ]; then
+ if [ ! -z $(blkid | grep 'CACHE' | cut -d ':' -f1 ) ]; then ## Si esta creada la etiqueta CACHE
+ PART=$(blkid | grep 'CACHE' | cut -d ':' -f1 )
+ else
+ if [ -z $(sgdisk /dev/sda -p | grep CACHE | cut -d" " -f3) ];then ## Busco el tercer campo si tiene numero
+ PART=$(sgdisk /dev/sda -p | grep CACHE | cut -d" " -f4) ## Si tiene numero la particion < 10
+ else
+ PART=$(sgdisk /dev/sda -p | grep CACHE | cut -d" " -f3-4) ## Si tiene numero la particion > 10
+ fi
+ PART=$(ogDiskToDev 1 $PART)
+ fi
+else
+ # Si no, obtener la 1ª partición marcada como de tipo caché.
+ PART=$(sfdisk -l 2>/dev/null | awk '$6~/ca|a7/ {print $1}')
+fi
+#agp
+
ogDevToDisk $PART 2>/dev/null
}
@@ -210,16 +229,33 @@ if [ "$*" == "help" ]; then
return
fi
-# Error si no hay definida partición de caché.
-DEV=$(ogFindCache) || ogRaiseError $OG_ERR_PARTITION "$MSG_NOCACHE" || return $?
-DEV=$(ogDiskToDev $DEV) || return $?
-
-# Formatear sistema de ficheros.
-ogUnmountCache 2>/dev/null
-mkfs.ext4 -q -F $DEV -L "CACHE" -O extent,large_file 2>/dev/null || ogRaiseError $OG_ERR_PARTITION "CACHE" || return $?
-# Crear estructura básica.
-MNTDIR=$(ogMountCache)
-mkdir -p $MNTDIR/$OGIMG
+TYPEDISK=$(ogGetPartitionTableType 1) #agp
+if [ "$TYPEDISK" == "GPT" ]; then
+ # Error si no hay definida partición de caché.
+ DEV=$(ogFindCache) || ogRaiseError $OG_ERR_PARTITION "$MSG_NOCACHE" || return $?
+ DEV=$(ogDiskToDev $DEV) || return $?
+ # buscamos el nombre de la particion CACHE
+ # si la encuentra formateamos la formateamos
+ if [ `sgdisk /dev/sda -p | grep -o CACHE` == "CACHE" ]; then
+ # Formatear sistema de ficheros.
+ ogUnmountCache 2>/dev/null
+ mkfs.ext4 -q -F $DEV -L "CACHE" -O extent,large_file 2>/dev/null || ogRaiseError $OG_ERR_PARTITION "CACHE" || return $?
+ # Crear estructura básica.
+ MNTDIR=$(ogMountCache)
+ mkdir -p $MNTDIR/$OGIMG
+ fi
+else
+ # Error si no hay definida partición de caché.
+ DEV=$(ogFindCache) || ogRaiseError $OG_ERR_PARTITION "$MSG_NOCACHE" || return $?
+ DEV=$(ogDiskToDev $DEV) || return $?
+ # Formatear sistema de ficheros.
+ ogUnmountCache 2>/dev/null
+ mkfs.ext4 -q -F $DEV -L "CACHE" -O extent,large_file 2>/dev/null || ogRaiseError $OG_ERR_PARTITION "CACHE" || return $?
+ # Crear estructura básica.
+ MNTDIR=$(ogMountCache)
+ mkdir -p $MNTDIR/$OGIMG
+fi
+#agp
}