summaryrefslogtreecommitdiffstats
path: root/client/engine/Inventory.lib
diff options
context:
space:
mode:
authorramon <ramongomez@us.es>2009-10-20 12:45:37 +0000
committerramon <ramongomez@us.es>2009-10-20 12:45:37 +0000
commit1c04494225fab6abe8897ed306176c4be95ef3e3 (patch)
tree41c219bb38bee2ed89b33c6eb6b43e1aca6db597 /client/engine/Inventory.lib
parentc2b03eb3c234218d8984300dc452f08c06275f12 (diff)
Correcciones en scripts; metafunción ogGetOsType.
git-svn-id: https://opengnsys.es/svn/trunk@394 a21b9725-9963-47de-94b9-378ad31fedc9
Diffstat (limited to 'client/engine/Inventory.lib')
-rwxr-xr-xclient/engine/Inventory.lib58
1 files changed, 36 insertions, 22 deletions
diff --git a/client/engine/Inventory.lib b/client/engine/Inventory.lib
index 816adf00..30f91f53 100755
--- a/client/engine/Inventory.lib
+++ b/client/engine/Inventory.lib
@@ -12,15 +12,15 @@
#/**
# ogGetOsVersion int_ndisk int_npartition
#@brief Devuelve la versión del sistema operativo instalado en un sistema de archivos.
-#@arg \c ndisk nº de orden del disco
-#@arg \c npartition nº de orden de la partición
-#@return TipoSistema:Versión
+#@arg \c int_ndisk nº de orden del disco
+#@arg \c int_npartition nº de orden de la partición
+#@return OSType:OSVersion
#@note TipoSistema = { Linux, Windows }
#@note Requisitos: awk, head, chroot
#@exception OG_ERR_FORMAT Formato incorrecto.
#@exception OG_ERR_NOTFOUND Disco o partición no corresponden con un dispositiv
#@exception OG_ERR_PARTITION Fallo al montar el sistema de archivos.
-#@version 0.1 - Primeras pruebas con OpenGNSys
+#@version 0.9 - Primera versión para OpenGNSys
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009-09-15
#*/
@@ -43,25 +43,25 @@ MNTDIR=$(ogMount $1 $2) || return $?
#/// Elección del tipo de sistema operativo.
case "$(ogGetFsType $1 $2)" in
EXT[234] | REISERFS | REISER4)
- TYPE="Linux"
- #/// Para Linux: leer descripción.
- VERSION=$(chroot $MNTDIR lsb_release -d 2>/dev/null| awk -F: '{gsub (/\t/,""); print $2}')
- #/// Si no se puede obtener, buscar en ficheros del sistema.
- if [ -z "$VERSION" ]; then
- FILE="$MNTDIR/etc/lsb-release"
- [ -r $FILE ] && VERSION="$(awk 'BEGIN {FS="="}; $1~/DESCRIPTION/ {gsub(/\"/,"",$2); print $2}' $FILE)"
- FILE="$MNTDIR/etc/redhat-release"
- [ -r $FILE ] && VERSION="$(head -1 $FILE)"
- FILE="$MNTDIR/etc/SuSE-release"
- [ -r $FILE ] && VERSION="$(head -1 $FILE)"
- fi
- [ -e $MNTDIR/lib64 ] && VERSION="$VERSION 64 bits"
- ;;
+ TYPE="Linux"
+ #/// Para Linux: leer descripción.
+ VERSION=$(chroot $MNTDIR lsb_release -d 2>/dev/null| awk -F: '{gsub (/\t/,""); print $2}')
+ #/// Si no se puede obtener, buscar en ficheros del sistema.
+ if [ -z "$VERSION" ]; then
+ FILE="$MNTDIR/etc/lsb-release"
+ [ -r $FILE ] && VERSION="$(awk 'BEGIN {FS="="}; $1~/DESCRIPTION/ {gsub(/\"/,"",$2); print $2}' $FILE)"
+ FILE="$MNTDIR/etc/redhat-release"
+ [ -r $FILE ] && VERSION="$(head -1 $FILE)"
+ FILE="$MNTDIR/etc/SuSE-release"
+ [ -r $FILE ] && VERSION="$(head -1 $FILE)"
+ fi
+ [ -e $MNTDIR/lib64 ] && VERSION="$VERSION 64 bits"
+ ;;
NTFS | HTNFS | FAT32 | HFAT32)
- TYPE="Windows"
- #/// Para Windows: leer la version del registro.
- VERSION=$(ogGetRegistryValue $MNTDIR software '\Microsoft\Windows NT\CurrentVersion\ProductName')
- ;;
+ TYPE="Windows"
+ #/// Para Windows: leer la version del registro.
+ VERSION=$(ogGetRegistryValue $MNTDIR software '\Microsoft\Windows NT\CurrentVersion\ProductName')
+ ;;
esac
#/// Mostrar resultado y salir sin errores.
@@ -71,6 +71,20 @@ return 0
#/**
+# ogGetOsType int_ndisk int_npartition
+#@brief Devuelve el tipo del sistema operativo instalado.
+#@arg \c int_ndisk nº de orden del disco
+#@arg \c int_npartition nº de orden de la partición
+#@return OSType
+#@note OSType = { Linux, Windows }
+#@see ogGetOsVersion
+#*/
+function ogGetOsType () {
+ogGetOsVersion "$@" | cut -sf1 -d:
+}
+
+
+#/**
# ogListHardwareInfo
#@brief Lista el inventario de hardware de la máquina cliente.
#@return TipoDispositivo:Modelo (por determinar)