summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorramon <ramongomez@us.es>2009-12-09 16:34:27 +0000
committerramon <ramongomez@us.es>2009-12-09 16:34:27 +0000
commit1e7eaab879de453542dd5a0f5ed89f3d3ba51bde (patch)
tree7948533f6f7305791275b6c88805da333a93627d
parent3fef8e1a9dac7c0c8df4845a6b102172c399085e (diff)
Installador vale para repositorio y descargable; funciones de API compatibles Doxygen.
git-svn-id: https://opengnsys.es/svn/trunk@652 a21b9725-9963-47de-94b9-378ad31fedc9
-rwxr-xr-xclient/engine/Boot.lib80
-rwxr-xr-xclient/engine/Disk.lib86
-rwxr-xr-xclient/engine/File.lib37
-rwxr-xr-xclient/engine/FileSystem.lib118
-rwxr-xr-xclient/engine/Image.lib6
-rwxr-xr-xclient/engine/Inventory.lib8
-rwxr-xr-xclient/engine/System.lib4
-rw-r--r--client/engine/ToolsGNU.c26
-rwxr-xr-xinstaller/ogGenerateDoc.sh6
-rwxr-xr-xinstaller/opengnsys_installer.sh56
10 files changed, 232 insertions, 195 deletions
diff --git a/client/engine/Boot.lib b/client/engine/Boot.lib
index 8ee5bed1..42be4c01 100755
--- a/client/engine/Boot.lib
+++ b/client/engine/Boot.lib
@@ -23,22 +23,22 @@
#@version 0.9 - Adaptación para OpenGNSys.
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009-09-11
-#*/
+#*/ ##
function ogBoot () {
# Variables locales.
local PART TYPE MNTDIR PARAMS KERNEL INITRD APPEND FILE LOADER
-#/// Si se solicita, mostrar ayuda.
+# Si se solicita, mostrar ayuda.
if [ "$*" == "help" ]; then
ogHelp "$FUNCNAME" "$FUNCNAME int_ndisk int_npartition" \
"$FUNCNAME 1 1"
return
fi
-#/// Error si no se reciben 2 parámetros.
+# Error si no se reciben 2 parámetros.
[ $# == 2 ] || ogRaiseError $OG_ERR_FORMAT || return $?
-#/// Detectar tipo de sistema de archivos y montarlo.
+# Detectar tipo de sistema de archivos y montarlo.
PART=$(ogDiskToDev $1 $2) || return $?
TYPE=$(ogGetFsType $1 $2) || return $?
MNTDIR=$(ogMount $1 $2) 2>/dev/null
@@ -46,18 +46,18 @@ MNTDIR=$(ogMount $1 $2) 2>/dev/null
case "$TYPE" in
EXT[234]|REISERFS|REISER4|JFS|XFS)
- #/// Obtiene los parámetros de arranque para Linux.
+ # Obtiene los parámetros de arranque para Linux.
PARAMS=$(ogLinuxBootParameters $1 $2) || return $?
read -e KERNEL INITRD APPEND <<<"$PARAMS"
- #/// Si no hay kernel, no hay sistema operativo.
+ # Si no hay kernel, no hay sistema operativo.
[ -z "$KERNEL" ] && ogRaiseError $OG_ERR_NOTOS && return $?
- #/// Arrancar de partición distinta a la original.
+ # Arrancar de partición distinta a la original.
[ -e "$MNTDIR/etc" ] && APPEND=$(echo $APPEND | awk -v P="$PART " '{sub (/root=[-+=_/a-zA-Z0-9]* /,"root="P);print}')
# Configurar kernel Linux con los parámetros leídos de su GRUB.
kexec -l "${MNTDIR}${KERNEL}" --append="$APPEND" --initrd="${MNTDIR}${INITRD}"
;;
NTFS|HNTFS|FAT32|HFAT32)
- #/// Compruebar si hay un cargador de Windows.
+ # Compruebar si hay un cargador de Windows.
for f in io.sys ntldr bootmgr; do
FILE="$(ogGetPath $1 $2 $f 2>/dev/null)"
[ -n "$FILE" ] && LOADER="$f"
@@ -65,7 +65,7 @@ case "$TYPE" in
[ -z "$LOADER" ] && ogRaiseError $OG_ERR_NOTOS && return $?
# Activar la partición y copiar Grub4DOS.
ogSetPartitionActive $1 $2
- cp $OGLIB/grub4dos/* $MNTDIR # */ (necesario para Doxygen)
+ cp $OGLIB/grub4dos/* $MNTDIR # */ (Comentario Doxygen)
#kexec -l $MNTDIR/grub.exe --append=--config-file="find --set-root /$LOADER; chainloader /$LOADER; tpm --init"
kexec -l $MNTDIR/grub.exe --append=--config-file="root (hd$[$1-1],$[$2-1]); chainloader (hd$[$1-1],$[$2-1])/$LOADER; tpm --init"
;;
@@ -74,7 +74,7 @@ case "$TYPE" in
;;
esac
-#/// Arrancar.
+# Arrancar.
kexec -e
}
@@ -95,33 +95,35 @@ kexec -e
#@version 0.9 - Adaptación para OpenGNSys.
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009-09-11
-#*/
+#*/ ##
function ogGetRegistryValue () {
# Variables locales.
local FILE FILENT FILEXP
-#/// Si se solicita, mostrar ayuda.
+# Si se solicita, mostrar ayuda.
if [ "$*" == "help" ]; then
ogHelp "$FUNCNAME" "$FUNCNAME path_mountpoint str_registrytype str_key"
return
fi
-#/// Error si no se reciben 3 parámetros.
+# Error si no se reciben 3 parámetros.
[ $# == 3 ] || ogRaiseError $OG_ERR_FORMAT || return $?
-#/// Camino del fichero de registro en NT/2000 o XP/Vista/7.
+# Camino del fichero de registro en NT/2000 o XP/Vista/7.
FILENT=$(ogGetPath "/$1/winnt/system32/config/$2")
[ -f $FILENT ] && FILE="$FILENT"
FILEXP=$(ogGetPath "/$1/windows/system32/config/$2")
[ -f $FLEHXP ] && FILE="$FILEXP"
[ ! -f $FILE ] && ogRaiseError OG_ERR_NOTFOUND "$1,$2" && return $?
-#/// Devolver el dato del valor de registro.
+# Devolver el dato del valor de registro.
+# /* (comentario Doxygen)
chntpw $FILE << FIN 2>/dev/null | awk '/> Value/ {getline;print $0;}'
cd ${3%\\*}
cat ${3##*\\}
q
FIN
+# */
}
@@ -137,37 +139,38 @@ FIN
#@version 0.9 - Adaptación para OpenGNSys.
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009-09-23
-#*/
+#*/ ##
function ogGetWindowsName () {
# Variables locales.
local PART MNTDIR
-#/// Si se solicita, mostrar ayuda.
+# Si se solicita, mostrar ayuda.
if [ "$*" == "help" ]; then
ogHelp "$FUNCNAME" "$FUNCNAME int_ndisk int_npartition" \
"$FUNCNAME 1 1 ==> PRACTICA-PC"
return
fi
-#/// Error si no se reciben 2 parámetros.
+# Error si no se reciben 2 parámetros.
[ $# == 2 ] || ogRaiseError $OG_ERR_FORMAT || return $?
-#/// Montar el sistema de archivos.
+# Montar el sistema de archivos.
MNTDIR=$(ogMount $1 $2) 2>/dev/null
[ -z "$MNTDIR" ] && ogRaiseError OG_ERR_PARTITION "$1, $2" && return $?
-#/// Obtener dato del valor de registro.
+# Obtener dato del valor de registro.
ogGetRegistryValue $MNTDIR system '\ControlSet001\Control\ComputerName\ComputerName\ComputerName'
}
#/**
# ogListRegistryKeys path_mountpoint str_registrytype str_key
+#@fn ogListRegistryKeys
#@brief Lista los nombres de claves de una determinada clave del registro de Windows.
#@arg \c path_mountpoint directorio donde está montado el sistema Windows
#@arg \c str_registrytype tipo de registro a leer
#@arg \c str_key clave de registro
-#@return
+#@return str_claves ... - lista de claves de registro
#@exception OG_ERR_FORMAT Formato incorrecto.
#@exception OG_ERR_NOTFOUND Disco o particion no corresponden con un dispositivo.
#@exception OG_ERR_PARTITION Tipo de partición desconocido o no se puede montar.
@@ -177,28 +180,28 @@ ogGetRegistryValue $MNTDIR system '\ControlSet001\Control\ComputerName\ComputerN
#@version 0.9 - Adaptación para OpenGNSys.
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009-09-23
-#*/
+#*/ ##
function ogListRegistryKeys () {
# Variables locales.
local FILE FILENT FILEXP
-#/// Si se solicita, mostrar ayuda.
+# Si se solicita, mostrar ayuda.
if [ "$*" == "help" ]; then
ogHelp "$FUNCNAME" "$FUNCNAME path_mountpoint str_registrytype str_key"
return
fi
-#/// Error si no se reciben 3 parámetros.
+# Error si no se reciben 3 parámetros.
[ $# == 3 ] || ogRaiseError $OG_ERR_FORMAT || return $?
-#/// Camino del fichero de registro en NT/2000 o XP/Vista/7.
+# Camino del fichero de registro en NT/2000 o XP/Vista/7.
FILENT=$(ogGetPath "/$1/winnt/system32/config/$2")
[ -f $FILENT ] && FILE="$FILENT"
FILEXP=$(ogGetPath "/$1/windows/system32/config/$2")
[ -f $FLEHXP ] && FILE="$FILEXP"
[ ! -f $FILE ] && ogRaiseError OG_ERR_NOTFOUND "$1,$2" && return $?
-#/// Devolver la lista de claves de registro.
+# Devolver la lista de claves de registro.
chntpw $FILE << FIN 2>/dev/null | awk 'BEGIN {FS="[<>]"} $1~/^ $/ {print $2}'
ls $3
q
@@ -219,22 +222,22 @@ FIN
#@version 0.9 - Primera adaptación para OpenGNSys.
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009-09-11
-#*/
+#*/ ##
function ogLinuxBootParameters () {
# Variables locales.
local MNTDIR CONF
-#/// Si se solicita, mostrar ayuda.
+# Si se solicita, mostrar ayuda.
if [ "$*" == "help" ]; then
ogHelp "$FUNCNAME" "$FUNCNAME int_ndisk int_npartition" \
"$FUNCNAME 1 2 ==> ..."
return
fi
-#/// Error si no se reciben 2 parámetros.
+# Error si no se reciben 2 parámetros.
[ $# == 2 ] || ogRaiseError $OG_ERR_FORMAT || return $?
-#/// Detectar id. de tipo de partición y codificar al mnemonico.
+# Detectar id. de tipo de partición y codificar al mnemonico.
MNTDIR=$(ogMount $1 $2) 2>/dev/null
[ -z "$MNTDIR" ] && ogRaiseError OG_ERR_PARTITION "$1, $2" && return $?
@@ -243,22 +246,23 @@ CONF="$MNTDIR/boot/grub/menu.lst"
[ ! -e $CONF ] && CONF="$MNTDIR/boot/grub/grub.cfg"
[ ! -e $CONF ] && ogRaiseError $OG_ERR_NOTFOUND "grub.cfg" && return $?
-#/** Toma del fichero de configuracion los valores del kernel, initrd
+# Toma del fichero de configuracion los valores del kernel, initrd
# y parámetros de arranque usando las cláusulas por defecto
# ("default" en GRUB1, "set default" en GRUB2)
# y los formatea para que sean compatibles con \c kexec . */
-#/* (ncesario para Doxygen)
+# /* (comentario Doxygen)
awk 'BEGIN {cont=-1;}
$1~/^default/ {sub(/=/," "); def=$2;}
$1~/^set/ && $2~/^default/ {gsub(/[="]/," "); def=$3;}
$1~/^title|^menuentry/ {cont++}
$1~/^kernel|^linux/ {if (def==cont) {
kern=$2;
- sub($1,"");sub($1,"");sub(/^[ \t]*/,"");app=$0}
+ sub($1,"");sub($1,"");sub(/^[ \t]*/,"");app=$0} # /* (comentario Doxygen)
}
$1~/^initrd/ {if (def==cont) init=$2}
END {if (kern!="") printf("%s %s %s", kern,init,app)}
' $CONF
+# */ (comentario Doxygen)
}
@@ -280,7 +284,7 @@ awk 'BEGIN {cont=-1;}
#@version 0.9 - Adaptación para OpenGNSys.
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009-09-24
-#*/
+#*/ ##
function ogSetRegistryValue () {
# Variables locales.
@@ -324,19 +328,19 @@ FIN
#@version 0.9 - Adaptación a OpenGNSys.
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009-09-24
-#*/
+#*/ ##
function ogSetWindowsName () {
# Variables locales.
local PART MNTDIR NAME
-#/// Si se solicita, mostrar ayuda.
+# Si se solicita, mostrar ayuda.
if [ "$*" == "help" ]; then
ogHelp "$FUNCNAME" "$FUNCNAME int_ndisk int_npartition" \
"$FUNCNAME 1 1 PRACTICA-PC"
return
fi
-#/// Error si no se reciben 3 parámetros.
+# Error si no se reciben 3 parámetros.
[ $# == 3 ] || ogRaiseError $OG_ERR_FORMAT || return $?
#/// Montar el sistema de archivos.
@@ -344,7 +348,7 @@ MNTDIR=$(ogMount $1 $2) 2>/dev/null
[ -z "$MNTDIR" ] && ogRaiseError OG_ERR_PARTITION "$1, $2" && return $?
NAME="$3"
-#/// Modificar datos de los valores de registro.
+# Modificar datos de los valores de registro.
ogSetRegistryValue $MNTDIR system '\ControlSet001\Control\ComputerName\ComputerName\ComputerName' "$NAME"
ogSetRegistryValue $MNTDIR system '\ControlSet001\Services\Tcpip\Parameters\Hostname' "$NAME"
ogSetRegistryValue $MNTDIR system '\ControlSet001\Services\Tcpip\Parameters\NV Hostname' "$NAME"
diff --git a/client/engine/Disk.lib b/client/engine/Disk.lib
index 8295de1c..fb40d7ec 100755
--- a/client/engine/Disk.lib
+++ b/client/engine/Disk.lib
@@ -25,21 +25,21 @@
#@version 0.9 - Primera versión para OpenGNSys
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009/09/09
-#*/
+#*/ ##
function ogCreatePartitions () {
# Variables locales.
local DISK PART SECTORS START SIZE TYPE EXTSTART EXTSIZE tmpsfdisk
-#/// Si se solicita, mostrar ayuda.
+# Si se solicita, mostrar ayuda.
if [ "$*" == "help" ]; then
ogHelp "$FUNCNAME" "$FUNCNAME int_ndisk str_parttype:int_partsize ..." \
"$FUNCNAME 1 NTFS:10000000 EXT3:5000000 LINUX-SWAP:1000000"
return
fi
-#/// Error si no se reciben menos de 2 parámetros.
+# Error si no se reciben menos de 2 parámetros.
[ $# -ge 2 ] || ogRaiseError $OG_ERR_FORMAT || return $?
-#/// Desmontar todos los sistemas de archivos del disco.
+# Desmontar todos los sistemas de archivos del disco.
DISK="$(ogDiskToDev $1)" || return $?
ogUnmountAll $1
shift
@@ -69,7 +69,7 @@ while [ $# -gt 0 ]; do
#/// Obtener identificador de tipo de partición.
case "$TYPE" in
EMPTY) ID=0 ;;
- EXTENDED) ID=5
+ EXTENDED) ID=5
[ $PART -gt 4 ] && ogRaiseError $OG_ERR_FORMAT && return $?
EXTSTART=$START
EXTSIZE=$SIZE
@@ -90,15 +90,15 @@ while [ $# -gt 0 ]; do
HFAT12) ID=11 ;;
CACHE) ID=ca ;;
*) ogRaiseError $OG_ERR_PARTITION "$TYPE"
- return $? ;;
+ return $? ;;
esac
- #/// Incluir particiones lógicas dentro de la partición extendida.
+ # Incluir particiones lógicas dentro de la partición extendida.
if [ $PART = 5 ]; then
[ -z "$EXTSTART" ] && ogRaiseError $OG_ERR_FORMAT && return $?
START=$EXTSTART
SECTORS=$[EXTSTART+EXTSIZE]
fi
- #/// Generar datos para la partición.
+ # Generar datos para la partición.
echo "$DISK$PART : start=$START, size=$SIZE, Id=$ID" >>$tmpsfdisk
#/// Error si se supera el nº total de sectores.
START=$[START+SIZE]
@@ -118,7 +118,7 @@ fi
# Si la tabla de particiones no es valida, volver a generarla.
[ $(parted -s $DISK print >/dev/null) ] || fdisk $DISK <<< "w"
-#/// Definir particiones y notificar al kernel.
+# Definir particiones y notificar al kernel.
sfdisk -f $DISK < $tmpsfdisk 2>/dev/null && sfdisk -R $DISK
rm -f $tmpsfdisk
}
@@ -136,24 +136,24 @@ rm -f $tmpsfdisk
#@version 0.9 - Primera versión para OpenGNSys
#@author Ramon Gomez, ETSII Universidad Sevilla
#@date 2009-07-20
-#*/
+#*/ ##
function ogDevToDisk () {
# Variables locales.
local d n
-#/// Si se solicita, mostrar ayuda.
+# Si se solicita, mostrar ayuda.
if [ "$*" == "help" ]; then
ogHelp "$FUNCNAME" "$FUNCNAME path_device" \
"$FUNCNAME /dev/sda => 1 1"
return
fi
-#/// Error si no se recibe 1 parámetro.
+# Error si no se recibe 1 parámetro.
[ $# == 1 ] || ogRaiseError $OG_ERR_FORMAT || return $?
#/// Error si no es fichero de bloques.
[ -b "$1" ] || ogRaiseError $OG_ERR_NOTFOUND "$1" || return $?
-#/// Procesa todos los discos para devolver su nº de orden y de partición.
+# Procesa todos los discos para devolver su nº de orden y de partición.
n=1
for d in $(ogDiskToDev); do
[ -n "$(echo $1 | grep $d)" ] && echo "$n ${1#$d}" && return
@@ -178,13 +178,13 @@ return $OG_ERR_NOTFOUND
#@version 0.9 - Primera versión para OpenGNSys
#@author Ramon Gomez, ETSII Universidad Sevilla
#@date 2009-07-20
-#*/
+#*/ ##
function ogDiskToDev () {
# Variables locales
local ALLDISKS VOLGROUPS DISK PART
-#/// Si se solicita, mostrar ayuda.
+# Si se solicita, mostrar ayuda.
if [ "$*" == "help" ]; then
ogHelp "$FUNCNAME" "$FUNCNAME int_ndisk [int_npartition]" \
"$FUNCNAME => /dev/sda /dev/sdb" \
@@ -193,12 +193,12 @@ if [ "$*" == "help" ]; then
return
fi
-#/// Listar dispositivo para los discos duros (tipos: 3=hd, 8=sd).
+# Listar dispositivo para los discos duros (tipos: 3=hd, 8=sd).
ALLDISKS=$(awk '($1==3 || $1==8) && $4!~/[0-9]/ {printf "/dev/%s ",$4}' /proc/partitions)
VOLGROUPS=$(vgs -a --noheadings 2>/dev/null | awk '{printf "/dev/%s ",$1}')
ALLDISKS="$ALLDISKS $VOLGROUPS"
-#/// Mostrar salidas segun el número de parametros.
+# Mostrar salidas segun el número de parametros.
case $# in
0) # Muestra todos los discos, separados por espacios.
echo $ALLDISKS
@@ -215,11 +215,11 @@ case $# in
DISK=$(echo "$ALLDISKS" | awk -v n=$1 '{print $n}')
[ -e "$DISK" ] || ogRaiseError $OG_ERR_NOTFOUND "$1" || return $?
PART="$DISK$2"
- #/// Comprobar si es partición.
+ # Comprobar si es partición.
if [ -b "$PART" ]; then
echo "$PART"
elif [ -n "$VOLGROUPS" ]; then
- #/// Comprobar si volumen lógico.
+ # Comprobar si volumen lógico.
PART=$(lvscan -a 2>/dev/null | grep "'$DISK/" | awk -v n=$2 -F\' '{if (NR==n) print $2}')
[ -e "$PART" ] || ogRaiseError $OG_ERR_NOTFOUND "$1 $2" || return $?
echo "$PART"
@@ -247,21 +247,21 @@ esac
#@version 0.9 - Primera versión compatible con OpenGNSys.
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009/07/24
-#*/
+#*/ ##
function ogGetPartitionActive () {
# Variables locales
local DISK
-#/// Si se solicita, mostrar ayuda.
+# Si se solicita, mostrar ayuda.
if [ "$*" == "help" ]; then
ogHelp "$FUNCNAME" "$FUNCNAME int_ndisk" "$FUNCNAME 1 => 1"
return
fi
-#/// Error si no se recibe 1 parámetro.
+# Error si no se recibe 1 parámetro.
[ $# == 1 ] || ogRaiseError $OG_ERR_FORMAT || return $?
-#/// Comprobar que el disco existe y listar su partición activa.
+# Comprobar que el disco existe y listar su partición activa.
DISK="$(ogDiskToDev $1)" || return $?
parted $DISK print 2>/dev/null | awk '/boot/ {print $1}'
}
@@ -279,22 +279,22 @@ parted $DISK print 2>/dev/null | awk '/boot/ {print $1}'
#@version 0.9 - Primera versión compatible con OpenGNSys.
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 25/03/2009
-#*/
+#*/ ##
function ogGetPartitionId () {
# Variables locales.
local DISK PART
-#/// Si se solicita, mostrar ayuda.
+# Si se solicita, mostrar ayuda.
if [ "$*" == "help" ]; then
ogHelp "$FUNCNAME" "$FUNCNAME int_ndisk int_npartition" \
"$FUNCNAME 1 1 => 7"
return
fi
-#/// Error si no se reciben 2 parámetros.
+# Error si no se reciben 2 parámetros.
[ $# == 2 ] || ogRaiseError $OG_ERR_FORMAT || return $?
-#/// Detectar id. de tipo de particion y codificar al mnemonico.
+# Detectar id. de tipo de particion y codificar al mnemonico.
DISK=$(ogDiskToDev $1) || return $?
PART=$(ogDiskToDev $1 $2) || return $?
echo $(sfdisk --id $DISK $2 2>/dev/null)
@@ -313,28 +313,30 @@ echo $(sfdisk --id $DISK $2 2>/dev/null)
#@version 0.9 - Primera versión para OpenGNSys
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009/07/24
-#*/
+#*/ ##
function ogGetPartitionSize () {
# Variables locales.
local PART
-#/// Si se solicita, mostrar ayuda.
+# Si se solicita, mostrar ayuda.
if [ "$*" == "help" ]; then
ogHelp "$FUNCNAME" "$FUNCNAME int_ndisk int_npartition" \
"$FUNCNAME 1 1 => 10000000"
return
fi
-#/// Error si no se reciben 2 parámetros.
+# Error si no se reciben 2 parámetros.
[ $# == 2 ] || ogRaiseError $OG_ERR_FORMAT || return $?
-#/// Obtener el tamaño de la partición.
+# Obtener el tamaño de la partición.
DISK="$(ogDiskToDev $1)" || return $?
PART="$(ogDiskToDev $1 $2)" || return $?
case "$(ogGetPartitionId $1 $2)" in
5|f) # Procesar detección de tamaño de partición Extendida.
+ # /* (comentario Doxygen)
sfdisk -l $DISK 2>/dev/null | \
awk -v p=$PART '{if ($1==p) {sub (/\*/,""); print $5} }'
+ # (comentario Doxygen) */
;;
*) sfdisk -s $PART
;;
@@ -355,7 +357,7 @@ esac
#@version 0.9 - Primera versión para OpenGNSys
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009/07/24
-#*/
+#*/ ##
function ogListPartitions () {
# Variables locales.
@@ -391,6 +393,7 @@ echo
#@brief Metafunción que lista las particiones primarias no vacías definidas en un disco.
#@arg \c int_ndisk nº de orden del disco
#@see ogListPartitions
+#*/ ##
function ogListPrimaryPartitions () {
# Variables locales.
@@ -406,6 +409,7 @@ echo $PARTS | cut -sf1-4 -d" " | sed 's/\( EMPTY:0\)*$//'
#@brief Metafunción que lista las particiones lógicas definidas en un disco.
#@arg \c int_ndisk nº de orden del disco
#@see ogListPartitions
+#*/ ##
function ogListLogicalPartitions () {
# Variables locales.
@@ -428,22 +432,22 @@ echo $PARTS | cut -sf5- -d" "
#@version 0.9 - Primera versión compatible con OpenGNSys.
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009/09/17
-#*/
+#*/ ##
function ogSetPartitionActive () {
# Variables locales
local DISK PART
-#/// Si se solicita, mostrar ayuda.
+# Si se solicita, mostrar ayuda.
if [ "$*" == "help" ]; then
ogHelp "$FUNCNAME" "$FUNCNAME int_ndisk int_npartition" \
"$FUNCNAME 1 1"
return
fi
-#/// Error si no se reciben 2 parámetros.
+# Error si no se reciben 2 parámetros.
[ $# == 2 ] || ogRaiseError $OG_ERR_FORMAT || return $?
-#/// Comprobar que el disco existe y activar la partición indicada.
+# Comprobar que el disco existe y activar la partición indicada.
DISK="$(ogDiskToDev $1)" || return $?
PART="$(ogDiskToDev $1 $2)" || return $?
parted -s $DISK set $2 boot on 2>/dev/null
@@ -464,27 +468,27 @@ parted -s $DISK set $2 boot on 2>/dev/null
#@version 0.9 - Primera versión para OpenGNSys
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009/07/24
-#*/
+#*/ ##
function ogSetPartitionSize () {
# Variables locales.
local DISK PART SIZE
-#/// Si se solicita, mostrar ayuda.
+# Si se solicita, mostrar ayuda.
if [ "$*" == "help" ]; then
ogHelp "$FUNCNAME" "$FUNCNAME int_ndisk int_npartition" \
"$FUNCNAME 1 1 10000000"
return
fi
-#/// Error si no se reciben 3 parámetros.
+# Error si no se reciben 3 parámetros.
[ $# == 3 ] || ogRaiseError $OG_ERR_FORMAT || return $?
-#/// Obtener el tamaño de la partición.
+# Obtener el tamaño de la partición.
DISK="$(ogDiskToDev $1)" || return $?
PART="$(ogDiskToDev $1 $2)" || return $?
# Convertir tamaño en KB a sectores de 512 B.
SIZE=$[$3*2] || ogRaiseError $OG_ERR_FORMAT || return $?
-#/// Usar \c sfdisk para redefinir el tamaño.
+# Usar \c sfdisk para redefinir el tamaño.
sfdisk -f -uS -N$2 $DISK <<< ",$SIZE" &>/dev/null || ogRaiseError $OG_ERR_PARTITION "$1,$2" || return $?
}
diff --git a/client/engine/File.lib b/client/engine/File.lib
index 7a4f1c66..5607cc87 100755
--- a/client/engine/File.lib
+++ b/client/engine/File.lib
@@ -17,7 +17,7 @@
#@version 0.9 - Pruebas con OpenGNSys.
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009-10-20
-#*/
+#*/ ##
function ogCopyFile () {
# Variables locales.
@@ -25,7 +25,7 @@ local ARGS SOURCE TARGET
ARGS="$@"
case "$1" in
- /*) # Camino completo. */ (necesario Doxygen)
+ /*) # Camino completo. */ (Comentrio Doxygen)
SOURCE=$(ogGetPath "$1")
shift ;;
[1-9]*) # ndisco npartición.
@@ -35,11 +35,11 @@ case "$1" in
SOURCE=$(ogGetPath "$1" "$2")
shift 2 ;;
esac
-#/// Comprobar fichero origen y directorio destino.
+# Comprobar fichero origen y directorio destino.
[ -n "$SOURCE" ] || ogRaiseError $OG_ERR_NOTFOUND "${ARGS% $*}" || return $?
TARGET=$(ogGetPath "$@")
[ -n "$TARGET" ] || ogRaiseError $OG_ERR_NOTFOUND "$@" || return $?
-#/// Copiar fichero.
+# Copiar fichero.
cp -p "$SOURCE" "$TARGET" # (definir posible error)
}
@@ -51,11 +51,11 @@ cp -p "$SOURCE" "$TARGET" # (definir posible error)
#@version 0.9 - Pruebas con OpenGNSys.
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009-09-29
-#*/
+#*/ ##
function ogDeleteFile () {
# Variables locales.
local FILE
-#/// Comprobar que existe el fichero y borrarlo.
+# Comprobar que existe el fichero y borrarlo.
FILE=$(ogGetPath "$@")
[ -n "$FILE" ] || ogRaiseError $OG_ERR_NOTFOUND "$*" || return $?
rm -f "$FILE" || ogRaiseError $OG_ERR_NOTFOUND "$*" || return $?
@@ -69,12 +69,12 @@ rm -f "$FILE" || ogRaiseError $OG_ERR_NOTFOUND "$*" || return $?
#@version 0.9 - Pruebas con OpenGNSys.
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009-09-29
-#*/
+#*/ ##
function ogDeleteTree () {
# Variables locales.
local DIR
-#/// Comprobar que existe el directorio y borrarlo con su contenido.
+# Comprobar que existe el directorio y borrarlo con su contenido.
DIR=$(ogGetPath "$@")
[ -n "$DIR" ] || ogRaiseError $OG_ERR_NOTFOUND "$*" || return $?
rm -fr "$DIR" || ogRaiseError $OG_ERR_NOTFOUND "$*" || return $?
@@ -99,13 +99,13 @@ rm -fr "$DIR" || ogRaiseError $OG_ERR_NOTFOUND "$*" || return $?
#@version 0.9 - Pruebas con OpenGNSys.
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009-09-15
-#*/
+#*/ ##
function ogGetPath () {
# Variables locales.
local MNTDIR FILE PREVFILE FILEPATH CURRENTDIR
-#/// Si se solicita, mostrar ayuda.
+# Si se solicita, mostrar ayuda.
if [ "$*" == "help" ]; then
ogHelp "$FUNCNAME" "$FUNCNAME int_ndisk int_npartition" \
"$FUNCNAME \"/mnt/sda1/windows/system32\" ==> /mnt/sda1/WINDOWS/System32" \
@@ -114,7 +114,7 @@ if [ "$*" == "help" ]; then
return
fi
-#/// Procesar camino según el número de parámetros.
+# Procesar camino según el número de parámetros.
case $# in
1) FILE="$1" ;;
2) case "$1" in
@@ -132,20 +132,21 @@ case $# in
return $? ;;
esac
-#/// Eliminar caracteres \c / iniciales, finales y duplicados.
+# Eliminar caracteres \c / iniciales, finales y duplicados.
CURRENTDIR="$PWD"
+ # /* (comentario Doxygen)
FILE="$(echo $FILE|sed -e 's/\(\/\)*\1/\//g' -e 's/^\///' -e 's/\/$//')"
PREVFILE=""
FILEPATH="/"
while [ "$FILE" != "$PREVFILE" ]; do
- #/// Busca el nombre correcto en el directorio actual.
+ # Busca el nombre correcto en el directorio actual.
cd "$FILEPATH"
- FILEPATH="${FILEPATH}/$(ls -A | grep -i -m1 "^${FILE%%/*}$")" || return $? # */ (necesario Doxygen)
+ FILEPATH="${FILEPATH}/$(ls -A | grep -i -m1 "^${FILE%%/*}$")" || return $?
PREVFILE="$FILE"
FILE="${FILE#*/}"
done
- # */ (necesario Doxygen)
-#/// Muestra el camino Linux, quitando el \c / inicial duplicado.
+ # (comentario Doxygen) */
+# Muestra el camino Linux, quitando el / inicial duplicado.
[ "$FILEPATH" != "/" ] && echo ${FILEPATH#/}
cd $CURRENTDIR
}
@@ -158,7 +159,7 @@ cd $CURRENTDIR
#@version 0.9 - Pruebas con OpenGNSys.
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009-09-29
-#*/
+#*/ ##
function ogGetParentPath () {
local PARENT
case $# in
@@ -179,7 +180,7 @@ ogGetPath $PARENT
#@version 0.9 - Pruebas con OpenGNSys.
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009-09-29
-#*/
+#*/ ##
function ogMakeDir () {
local PARENT DIR
PARENT=$(ogGetParentPath "$@") || return $?
diff --git a/client/engine/FileSystem.lib b/client/engine/FileSystem.lib
index 019b121b..9b0bd52f 100755
--- a/client/engine/FileSystem.lib
+++ b/client/engine/FileSystem.lib
@@ -161,7 +161,7 @@ ogFormatFs "$@"
#@version 0.9 - Primera versión para OpenGNSys.
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009-10-08
-#*/
+#*/ ##
function ogFormatFs () {
# Variables locales
@@ -176,13 +176,13 @@ if [ "$*" == "help" ]; then
"$FUNCNAME 1 1 EXT4 \"DATA\""
return
fi
-#/// Error si no se reciben entre 2 y 4 parámetros.
+# 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 dispositivo y tipo de sisitema de archivos.
PART="$(ogDiskToDev $1 $2)" || return $?
TYPE="$(ogGetFsType $1 $2)" || return $?
-#/// Elegir tipo de formato segun el tipo de particion.
+# Elegir tipo de formato segun el tipo de particion.
case "$3" in
EXT2) ID=83; PROG="mkfs.ext2";;
EXT3) ID=83; PROG="mkfs.ext3";;
@@ -201,7 +201,7 @@ case "$3" in
HFAT12) ID=11; PROG="mkdosfs"; PARAMS="-F 12" ;;
*) LABEL="$3" ;;
esac
-#/// Si no se indica explícitamente, detectar el tipo de sistema de archivos.
+# Si no se indica explícitamente, detectar el tipo de sistema de archivos.
if [ -z "$PROG" ]; then
case "$TYPE" in
EXT2) PROG="mkfs.ext2";;
@@ -221,10 +221,10 @@ if [ -z "$PROG" ]; then
else
[ $TYPE == "$3" -o $ID == "$(ogGetPartitionId $1 $2)" ] || ogRaiseError $OG_ERR_PARTITION "$3 != $TYPE" || return $?
fi
-#/// Comprobar consistencia entre id. de partición y tipo de sistema de archivos.
+# Comprobar consistencia entre id. de partición y tipo de sistema de archivos.
[ -n "$PROG" ] || ogRaiseError $OG_ERR_PARTITION "$3 != $TYPE" || return $?
-#/// Etiquetas de particion.
+# Etiquetas de particion.
if [ -z "$LABEL" ]; then
[ "$4" != "CACHE" ] || ogRaiseError $OG_ERR_FORMAT "$MSG_RESERVEDVALUE: CACHE" || return $?
[ -n "$4" ] && PARAMS="$PARAMS -L $4"
@@ -232,7 +232,7 @@ else
PARAMS="$PARAMS -L $LABEL"
fi
-#/// Error si la particion esta montada o está bloqueada.
+# Error si la particion esta montada o está bloqueada.
if ogIsMounted $1 $2; then
ogRaiseError $OG_ERR_PARTITION "$1 $2" # Indicar nuevo error
return $?
@@ -241,7 +241,7 @@ if ogIsLocked $1 $2; then
ogRaiseError $OG_ERR_LOCKED "$1 $2"
return $?
fi
-#/// Formatear en modo uso exclusivo.
+# Formatear en modo uso exclusivo.
ogLock $1 $2
eval $PROG $PARAMS $PART 2>/dev/null
ERRCODE=$?
@@ -267,22 +267,22 @@ return $ERRCODE
#@version 0.9 - Primera adaptación para OpenGNSys.
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009-07-21
-#*/
+#*/ ##
function ogGetFsType () {
# Variables locales.
local ID TYPE
-#/// Si se solicita, mostrar ayuda.
+# Si se solicita, mostrar ayuda.
if [ "$*" == "help" ]; then
ogHelp "$FUNCNAME" "$FUNCNAME int_ndisk int_npartition" \
"$FUNCNAME 1 1 => NTFS"
return
fi
-#/// Error si no se reciben 2 parámetros.
+# Error si no se reciben 2 parámetros.
[ $# == 2 ] || ogRaiseError $OG_ERR_FORMAT || return $?
-#/// Detectar id. de tipo de partición y codificar al mnemonico.
+# Detectar id. de tipo de partición y codificar al mnemonico.
DISK=$(ogDiskToDev "$1") || return $?
ID=$(ogGetPartitionId "$1" "$2") || return $?
case "$ID" in
@@ -325,20 +325,20 @@ echo $TYPE
#@version 0.9 - Primera versión para OpenGNSys.
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009-10-15
-#*/
+#*/ ##
function ogGetMountPoint () {
# Variables locales
local PART
-#/// Si se solicita, mostrar ayuda.
+# Si se solicita, mostrar ayuda.
if [ "$*" == "help" ]; then
ogHelp "$FUNCNAME" "$FUNCNAME int_ndisk int_npartition" \
"$FUNCNAME 1 1 => /mnt/sda1"
return
fi
-#/// Error si no se reciben 2 parámetros.
+# Error si no se reciben 2 parámetros.
[ $# == 2 ] || ogRaiseError $OG_ERR_FORMAT || return $?
-#/// Obtener partición.
+# Obtener partición.
PART="$(ogDiskToDev $1 $2)" || return $?
echo $(mount | awk -v P=$PART '{if ($1==P) {print $3}}')
@@ -354,7 +354,7 @@ echo $(mount | awk -v P=$PART '{if ($1==P) {print $3}}')
#@version 0.9 - Primera versión para OpenGNSys.
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009-10-15
-#*/
+#*/ ##
function ogIsMounted () {
#/// Si se solicita, mostrar ayuda.
@@ -363,7 +363,7 @@ if [ "$*" == "help" ]; then
"if $FUNCNAME 1 1; then ... ; fi"
return
fi
-#/// Error si no se reciben 2 parámetros.
+# Error si no se reciben 2 parámetros.
[ $# == 2 ] || ogRaiseError $OG_ERR_FORMAT || return $?
test -n "$(ogGetMountPoint $1 $2)"
@@ -380,25 +380,25 @@ test -n "$(ogGetMountPoint $1 $2)"
#@version 0.9 - Primera versión para OpenGNSys.
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009-09-03
-#*/
+#*/ ##
function ogIsLocked () {
# Variables locales
local PART LOCKFILE
-#/// Si se solicita, mostrar ayuda.
+# Si se solicita, mostrar ayuda.
if [ "$*" == "help" ]; then
ogHelp "$FUNCNAME" "$FUNCNAME int_ndisk int_npartition" \
"if $FUNCNAME 1 1; then ... ; fi"
return
fi
-#/// Error si no se reciben 2 parámetros.
+# Error si no se reciben 2 parámetros.
[ $# == 2 ] || ogRaiseError $OG_ERR_FORMAT || return $?
-#/// Obtener partición.
+# Obtener partición.
PART="$(ogDiskToDev $1 $2)" || return $?
-#/// Comprobar existencia del fichero de bloqueo.
+# Comprobar existencia del fichero de bloqueo.
LOCKFILE="/var/lock/lock${PART//\//-}"
test -f $LOCKFILE
}
@@ -424,25 +424,25 @@ ogLockPartition "$@"
#@version 0.9 - Primera versión para OpenGNSys.
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009-09-03
-#*/
+#*/ ##
function ogLockPartition () {
# Variables locales
local PART LOCKFILE
-#/// Si se solicita, mostrar ayuda.
+# Si se solicita, mostrar ayuda.
if [ "$*" == "help" ]; then
ogHelp "$FUNCNAME" "$FUNCNAME int_ndisk int_npartition" \
"$FUNCNAME 1 1"
return
fi
-#/// Error si no se reciben 2 parámetros.
+# Error si no se reciben 2 parámetros.
[ $# == 2 ] || ogRaiseError $OG_ERR_FORMAT || return $?
-#/// Obtener partición.
+# Obtener partición.
PART="$(ogDiskToDev $1 $2)" || return $?
-#/// Crear archivo de bloqueo exclusivo.
+# Crear archivo de bloqueo exclusivo.
LOCKFILE="/var/lock/lock${PART//\//-}"
touch $LOCKFILE
}
@@ -451,7 +451,7 @@ touch $LOCKFILE
#/**
# ogMount int_ndisk int_npartition
#@see ogMountFs ogMountCache ogMountCdrom
-#*/
+#*/ ##
function ogMount () {
case "$*" in
CACHE|cache)
@@ -475,34 +475,34 @@ esac
#@version 0.9 - Primera versión para OpenGNSys.
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009-09-28
-#*/
+#*/ ##
function ogMountFs () {
-#/// Variables locales
+# Variables locales
local PART TYPE MNTDIR MOUNT PARAMS
-#/// Si se solicita, mostrar ayuda.
+# Si se solicita, mostrar ayuda.
if [ "$*" == "help" ]; then
ogHelp "$FUNCNAME" "$FUNCNAME int_ndisk int_npartition" \
"$FUNCNAME 1 1 => /mnt/sda1"
return
fi
-#/// Error si no se reciben 2 parámetros.
+# Error si no se reciben 2 parámetros.
[ $# == 2 ] || ogRaiseError $OG_ERR_FORMAT || return $?
-#/// Obtener partición.
+# Obtener partición.
PART="$(ogDiskToDev $1 $2)" || return $?
-#/// Comprobar si el sistema de archivos ya está montada.
+# Comprobar si el sistema de archivos ya está montada.
MNTDIR="$(ogGetMountPoint $1 $2)"
-#/// Si no, montarla en un directorio de sistema
+# Si no, montarla en un directorio de sistema
if [ -z "$MNTDIR" ]; then
# Error si la particion esta bloqueada.
ogIsLocked $1 $2 && ogRaiseError $OG_ERR_LOCKED "$1 $2" && return $?
- #/// Crear punto de montaje.
+ # Crear punto de montaje.
MNTDIR=${PART/dev/mnt}
mkdir -p $MNTDIR
- #/// Montar según el tipo de sitema de archivos.
+ # Montar según el tipo de sitema de archivos.
TYPE="$(ogGetFsType $1 $2)" || return $?
case "$TYPE" in
CACHE) MOUNT=mount ;;
@@ -563,25 +563,25 @@ echo $MNTDIR
#@version 0.9 - Primera versión para OpenGNSys.
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009-09-23
-#*/
+#*/ ##
function ogReduceFs () {
# Variables locales
local PART BLKS SIZE
-#/// Si se solicita, mostrar ayuda.
+# Si se solicita, mostrar ayuda.
if [ "$*" == "help" ]; then
ogHelp "$FUNCNAME" "$FUNCNAME int_ndisk int_npartition" \
"$FUNCNAME 1 1"
return
fi
-#/// Error si no se reciben 2 parámetros.
+# Error si no se reciben 2 parámetros.
[ $# == 2 ] || ogRaiseError $OG_ERR_FORMAT || return $?
-#/// Obtener partición.
+# Obtener partición.
PART="$(ogDiskToDev $1 $2)" || return $?
-#/// Redimensionar según el tipo de particion.
+# Redimensionar según el tipo de particion.
case "$(ogGetFsType $1 $2)" in
EXT[234])
ogUnmount $1 $2 2>/dev/null
@@ -631,25 +631,25 @@ ogUnlockPartition "$@"
#@version 0.9 - Primera versión para OpenGNSys.
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009-09-03
-#*/
+#*/ ##
function ogUnlockPartition () {
# Variables locales
local PART LOCKFILE
-#/// Si se solicita, mostrar ayuda.
+# Si se solicita, mostrar ayuda.
if [ "$*" == "help" ]; then
ogHelp "$FUNCNAME" "$FUNCNAME int_ndisk int_npartition" \
"$FUNCNAME 1 1"
return
fi
-#/// Error si no se reciben 2 parámetros.
+# Error si no se reciben 2 parámetros.
[ $# == 2 ] || ogRaiseError $OG_ERR_FORMAT || return $?
-#/// Obtener partición.
+# Obtener partición.
PART="$(ogDiskToDev $1 $2)" || return $?
-#/// Borrar archivo de bloqueo exclusivo.
+# Borrar archivo de bloqueo exclusivo.
LOCKFILE="/var/lock/lock${PART//\//-}"
rm -f $LOCKFILE
}
@@ -675,29 +675,29 @@ ogUnmountFs "$@"
#@version 0.9 - Primera versión para OpenGNSys.
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009-09-28
-#*/
+#*/ ##
function ogUnmountFs () {
# Variables locales
local PART MNTDIR
-#/// Si se solicita, mostrar ayuda.
+# Si se solicita, mostrar ayuda.
if [ "$*" == "help" ]; then
ogHelp "$FUNCNAME" "$FUNCNAME int_ndisk int_npartition" "$FUNCNAME 1 1"
return
fi
-#/// Error si no se reciben 2 parámetros.
+# Error si no se reciben 2 parámetros.
[ $# == 2 ] || ogRaiseError $OG_ERR_FORMAT || return $?
-#/// Obtener partición y punto de montaje.
+# Obtener partición y punto de montaje.
PART="$(ogDiskToDev $1 $2)" || return $?
MNTDIR="$(ogGetMountPoint $1 $2)"
-#/// Si está montada, desmontarla.
+# Si está montada, desmontarla.
if [ -n "$MNTDIR" ]; then
# Error si la particion esta bloqueada.
ogIsLocked $1 $2 && ogRaiseError $OG_ERR_LOCKED "$1 $2" && return $?
- #/// Crear punto de montaje.
+ # Crear punto de montaje.
umount $PART 2>/dev/null && rmdir $MNTDIR || ogEcho warning "$FUNCNAME: $MSG_DONTUNMOUNT: \"$1,$2\""
# linea temporal durante desarrollo para testear nuevas herramientas con el cliente completo nfs
if grep -q nfsroot /proc/cmdline; then
@@ -721,20 +721,20 @@ fi
#@version 0.9 - Versión para OpenGNSys.
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009/10/07
-#*/
+#*/ ##
function ogUnmountAll () {
# Variables locales
local DISK PART
-#/// Si se solicita, mostrar ayuda.
+# Si se solicita, mostrar ayuda.
if [ "$*" == "help" ]; then
ogHelp "$FUNCNAME" "$FUNCNAME int_ndisk" "FUNCNAME 1"
return
fi
-#/// Error si no se recibe 1 parámetro.
+# Error si no se recibe 1 parámetro.
[ $# == 1 ] || ogRaiseError $OG_ERR_FORMAT || return $?
-#/// Obtener partición y punto de montaje.
+# Obtener partición y punto de montaje.
DISK="$(ogDiskToDev $1)" || return $?
for ((PART=1; PART<=$(ogGetPartitionsNumber $1); PART++)); do
case "$(ogGetFsType $1 $PART)" in
diff --git a/client/engine/Image.lib b/client/engine/Image.lib
index 1e998124..4972120c 100755
--- a/client/engine/Image.lib
+++ b/client/engine/Image.lib
@@ -28,7 +28,7 @@
#@version 0.9 - Versión en pruebas para OpenGNSys
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009/10/07
-#*/
+#*/ ##
function ogCreateImage () {
# Variables locales
@@ -96,7 +96,7 @@ return $ERRCODE
#@version 0.1 - Primera versión muy en pruebas para OpenGNSys
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009/09/11
-#*/
+#*/ ##
function ogGetImageSize () {
# Variables locales
@@ -148,7 +148,7 @@ partimage -B gui=no imginfo "$IMGFILE" 2>&1 | \
#@version 0.1 - Primera versión muy en pruebas para OpenGNSys
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009/09/10
-#*/
+#*/ ##
function ogRestoreImage () {
# Variables locales
diff --git a/client/engine/Inventory.lib b/client/engine/Inventory.lib
index 30f91f53..88b80e26 100755
--- a/client/engine/Inventory.lib
+++ b/client/engine/Inventory.lib
@@ -23,7 +23,7 @@
#@version 0.9 - Primera versión para OpenGNSys
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009-09-15
-#*/
+#*/ ##
function ogGetOsVersion () {
# Variables locales.
@@ -78,7 +78,7 @@ return 0
#@return OSType
#@note OSType = { Linux, Windows }
#@see ogGetOsVersion
-#*/
+#*/ ##
function ogGetOsType () {
ogGetOsVersion "$@" | cut -sf1 -d:
}
@@ -94,7 +94,7 @@ ogGetOsVersion "$@" | cut -sf1 -d:
#@version 0.1 - Primeras pruebas con OpenGNSys
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009-07-28
-#*/
+#*/ ##
function ogListHardwareInfo () {
#/// Si se solicita, mostrar ayuda.
@@ -146,7 +146,7 @@ lshw | awk 'BEGIN {type="mod";}
#@version 0.1 - Primeras pruebas con OpenGNSys
#@author Ramon Gomez, ETSII Universidad de Sevilla
#@date 2009-09-23
-#*/
+#*/ ##
function ogListSoftware () {
# Variables locales.
diff --git a/client/engine/System.lib b/client/engine/System.lib
index bc8e02d8..5e1f4116 100755
--- a/client/engine/System.lib
+++ b/client/engine/System.lib
@@ -109,7 +109,7 @@ return $CODE
#/**
-# ogHelp ["function" ["format" ["example" ... ]]]
+# ogHelp ["str_function" ["str_format" ["str_example" ... ]]]
#@brief Muestra mensaje de ayuda para una función determinda.
#@arg \c str_function Nombre de la función.
#@arg \c str_format Formato de ejecución de la función.
@@ -132,7 +132,7 @@ FUNC="${1:-${FUNCNAME[${#FUNCNAME[*]}-1]}}"
MSG="MSG_HELP_$FUNC"
ogEcho help "$MSG_FUNCTION $FUNC: ${!MSG}"
[ -n "$2" ] && ogEcho help " $MSG_FORMAT: $2"
-#/// Mostrar ejemplos.
+#/// Mostrar ejemplos (si existen).
shift 2
while [ $# -gt 0 ]; do
ogEcho help " $MSG_EXAMPLE: $1"
diff --git a/client/engine/ToolsGNU.c b/client/engine/ToolsGNU.c
index 20ffff50..cf2e2d2e 100644
--- a/client/engine/ToolsGNU.c
+++ b/client/engine/ToolsGNU.c
@@ -12,26 +12,42 @@
function awk () {
}
+function chntpw () {
+}
-function parted () {
+function egrep () {
}
+function fdisk () {
+}
+function grep () {
+}
-function fdisk () {
+function kexec () {
}
+function lshw () {
+}
-function egrep () {
+function mount () {
}
-function grep () {
+function ms-sys () {
}
+function parted () {
+}
+
+function partimage () {
+}
function partprobe () {
}
-function ms-sys () {
+function sfdisk () {
}
+
+function umount () {
}
+
diff --git a/installer/ogGenerateDoc.sh b/installer/ogGenerateDoc.sh
index c2745652..a6cff1f1 100755
--- a/installer/ogGenerateDoc.sh
+++ b/installer/ogGenerateDoc.sh
@@ -28,11 +28,11 @@ cat > /tmp/doxyfile << EOF
# Project related configuration options
#---------------------------------------------------------------------------
DOXYFILE_ENCODING = UTF-8
-PROJECT_NAME = "OpenGnsys"
+PROJECT_NAME = "OpenGNSys"
PROJECT_NUMBER = 1.0
OUTPUT_DIRECTORY = $2
CREATE_SUBDIRS = YES
-OUTPUT_LANGUAGE = English
+OUTPUT_LANGUAGE = Spanish
BRIEF_MEMBER_DESC = YES
REPEAT_BRIEF = YES
ABBREVIATE_BRIEF = "The $name class" \
@@ -331,4 +331,4 @@ SEARCHENGINE = NO
EOF
doxygen /tmp/doxyfile
-fi \ No newline at end of file
+fi
diff --git a/installer/opengnsys_installer.sh b/installer/opengnsys_installer.sh
index 94c95754..f6841514 100755
--- a/installer/opengnsys_installer.sh
+++ b/installer/opengnsys_installer.sh
@@ -6,19 +6,37 @@
#####################################################################
+
+# Sólo ejecutable por usuario root
+if [ "$(whoami)" != 'root' ]
+then
+ echo "ERROR: this program must run under root privileges!!"
+ exit 1
+fi
+
+# Comprobar si se ha descargado el paquete comprimido (USESVN=0) o sólo el instalador (USESVN=1).
+pushd $(dirname $0) >/dev/null
+PROGRAMDIR=$PWD
+popd >/dev/null
+if [ -d "$PROGRAMDIR/../installer" ]; then
+ USESVN=0
+else
+ USESVN=1
+ SVN_URL=svn://www.informatica.us.es:3690/opengnsys/trunk
+fi
+
WORKDIR=/tmp/opengnsys_installer
+mkdir -p $WORKDIR
+pushd $WORKDIR
+
+INSTALL_TARGET=/opt/opengnsys
LOG_FILE=/tmp/opengnsys_installation.log
# Array con las dependencias
DEPENDENCIES=( subversion apache2 php5 mysql-server php5-mysql nfs-kernel-server dhcp3-server udpcast bittorrent tftp-hpa tftpd-hpa syslinux openbsd-inetd update-inetd build-essential libmysqlclient15-dev wget doxygen graphviz)
-INSTALL_TARGET=/opt/opengnsys
-
MYSQL_ROOT_PASSWORD="passwordroot"
-# conexión al svn
-SVN_URL=svn://www.informatica.us.es:3690/opengnsys/trunk
-
# Datos de base de datos
OPENGNSYS_DATABASE=ogBDAdmin
OPENGNSYS_DB_USER=usuog
@@ -27,18 +45,8 @@ OPENGNSYS_DB_DEFAULTUSER=opengnsys
OPENGNSYS_DB_DEFAULTPASSWD=opengnsys
OPENGNSYS_DB_CREATION_FILE=opengnsys/admin/Database/ogBDAdmin.sql
-USUARIO=`whoami`
-
-if [ $USUARIO != 'root' ]
-then
- echo "ERROR: this program must run under root privileges!!"
- exit 1
-fi
-mkdir -p $WORKDIR
-pushd $WORKDIR
-
#####################################################################
####### Algunas funciones útiles de propósito general:
#####################################################################
@@ -823,7 +831,7 @@ function openGnsysCopyServerFiles () {
echoAndLog "${FUNCNAME}(): copying files to server directories"
- pushd $WORKDIR/opengnsys
+ [ $USESVN ] && pushd $WORKDIR/opengnsys
local i
for (( i = 0; i < ${#SOURCES[@]}; i++ )); do
if [ -f "${SOURCES[$i]}" ]; then
@@ -1027,12 +1035,16 @@ if [ $? -ne 0 ]; then
exit 1
fi
-# Descarga del repositorio de código en directorio temporal
-#svnCheckoutCode $SVN_URL
-svnExportCode $SVN_URL
-if [ $? -ne 0 ]; then
- errorAndLog "Error while getting code from svn"
- exit 1
+# Si es necesario, descarga el repositorio de código en directorio temporal
+if [ $USESVN ]; then
+ #svnCheckoutCode $SVN_URL
+ svnExportCode $SVN_URL
+ if [ $? -ne 0 ]; then
+ errorAndLog "Error while getting code from svn"
+ exit 1
+ fi
+else
+ ln -fs "$(dirname $PROGRAMDIR)" opengnsys
fi
# Compilar código fuente de los servicios de OpenGNSys.