#/**
#         ogr UnmountAll int_ndisk
#@brief   Desmonta todos los sistema de archivos de un disco, excepto el caché local.
#@param   int_ndisk      nº de orden del disco
#@return  Nada
#@exception OG_ERR_FORMAT    Formato incorrecto.
#@exception OG_ERR_NOTFOUND  Disco o particion no corresponden con un dispositivo.
#@warning No se desmonta la partición marcada como caché local.
#@version 0.9 - Versión para OpenGnSys.
#@author  Ramon Gomez, ETSII Universidad de Sevilla
#@date    2009/10/07
#*/ ##
# Variables locales
local DISK PART
# Si se solicita, mostrar ayuda.
if [ "$*" == "help" ]; then
    ogr Help "$FUNCNAME" "$FUNCNAME int_ndisk" "FUNCNAME 1"
    return
fi
# Error si no se recibe 1 parámetro.
[ $# == 1 ] || ogr RaiseError $OG_ERR_FORMAT || return $?

# Obtener partición y punto de montaje.
DISK="$(ogr DiskToDev $1)" || return $?
for ((PART=1; PART<=$(ogr GetPartitionsNumber $1); PART++)); do
    case "$(ogr GetFsType $1 $PART)" in
        CACHE|LINUX-SWAP)
           ;;
        *)
           ogr Unmount $1 $PART ;;
    esac
done
