summaryrefslogtreecommitdiffstats
path: root/client/engine/FileSystem.lib
diff options
context:
space:
mode:
authorramon <ramongomez@us.es>2012-12-14 13:29:42 +0000
committerramon <ramongomez@us.es>2012-12-14 13:29:42 +0000
commit8e29877647e7a77b85b2a01bd96d946220f49926 (patch)
tree6da21c4636be8693717813c5220728379913543b /client/engine/FileSystem.lib
parent0b8a1f1833a7b95f08bcadc3c1c1594f9aeb9913 (diff)
Versión 1.0.5: Realizar comprobaciones de errores al inicio de la función {{{ogFormatFs}}} y desmontar siempre antes de formatear.
git-svn-id: https://opengnsys.es/svn/branches/version1.0@3470 a21b9725-9963-47de-94b9-378ad31fedc9
Diffstat (limited to 'client/engine/FileSystem.lib')
-rwxr-xr-xclient/engine/FileSystem.lib25
1 files changed, 13 insertions, 12 deletions
diff --git a/client/engine/FileSystem.lib b/client/engine/FileSystem.lib
index 086c1019..913ce41c 100755
--- a/client/engine/FileSystem.lib
+++ b/client/engine/FileSystem.lib
@@ -219,10 +219,19 @@ if [ "$*" == "help" ]; then
fi
# Error si no se reciben entre 2 y 4 parámetros.
[ $# -ge 2 -a $# -le 4 ] || ogRaiseError $OG_ERR_FORMAT || return $?
-# Obtener dispositivo y tipo de sisitema de archivos.
+# Obtener fichero de dispositivo.
PART="$(ogDiskToDev $1 $2)" || return $?
+# Error si la partición está montada o bloqueada.
+if ogIsMounted $1 $2; then
+ ogRaiseError $OG_ERR_PARTITION "$1 $2" # Indicar nuevo error
+ return $?
+fi
+if ogIsLocked $1 $2; then
+ ogRaiseError $OG_ERR_LOCKED "$1 $2"
+ return $?
+fi
+# Obtener tipo de sisitema de archivos.
TYPE="$(ogGetFsType $1 $2)"
-# Si no se detecto el tipo de sistema de ficheros
if [ -z "$TYPE" ]; then
# Si no se indico ningun tipo de sistema de ficheros se retorna
if [ -z "$3" ]; then
@@ -292,18 +301,10 @@ else
PARAMS="$PARAMS -L $LABEL"
fi
-# Error si la particion esta montada o está bloqueada.
-if ogIsMounted $1 $2; then
- ogRaiseError $OG_ERR_PARTITION "$1 $2" # Indicar nuevo error
- return $?
-fi
-if ogIsLocked $1 $2; then
- ogRaiseError $OG_ERR_LOCKED "$1 $2"
- return $?
-fi
-# Formatear en modo uso exclusivo.
+# Formatear en modo uso exclusivo (desmontar siempre).
ogLock $1 $2
trap "ogUnlock $1 $2" 1 2 3 6 9
+ogUnmount $1 $2
eval $PROG $PARAMS $PART 2>/dev/null
ERRCODE=$?
case $ERRCODE in