= OGR = ''ogr'' ó ''OpenGnSys Runner'' es un comando que se ha desarrollado para la versión 2 para facilitar el uso del engine. Se basa en ejecutar comandos que se encuentre en el directorio que marque la variable global $OGEDIR. Si la variable no estuviera seteada se usará por defecto el valor: '/opt/opengnsys/engine/' . En esta carpeta se encontrarán los distintos directorios, al que vamos a llamar módulos a partir de ahora, que tiene el engine: * net: Scripts para redes. * proto: Scripts de protocolos. * rellenar todos los que falten. * utils: Aquí encontramos todos los scripts propios de está herramienta que facilitarán el uso del engine: * help: muestra la ayuda. Si recibe un script como argumento se mostrará la ayuda del script. * list: muestra todos los comandos disponibles. Si se le pasa como argumento un módulo mostrará sólo los de el módulo en concreto. * listmodules: muestra la lista de módulos. * trace: muestra la traza que siguen los scripts. * debug: muestra la traza que siguen los scripts pero se pueden modificar los argumentos en cada llamada. * ... Ejemplos de uso: {{{ ogr getNumDisk ogr help getNumDisk ogr list }}} = Engine = El engine se encarga de todas las tareas a bajo nivel de OpenGnSys. Las operaciones van desde saber que IP tiene el cliente, como crear particiones, crear imágenes, arrancar una partición, etc. Dentro del engine divisamos dos niveles diferenciados: * '''Scripts de bajo nivel:''' Son creados principalmente en bash. Realizan las tareas de bajo nivel como saber el número de discos que tiene un ordenador, o el número de particiones de un disco, o qué IP tiene el ordenador asociado, etc. El valor de retorno puede tener los siguiente valores: * 0: si el script se ejecuto sin problemas. * -1: si hubo problemas que hace que se cancele la ejecución. * 1: con problemas pero puede continuar la ejecución. La salida estándar devuelve el/los valor/es obtenidos por el script y la salida de errores las advertencias o errores que éste tuvo. * '''Scripts de alto nivel:''' Son creados principalmente en python. Realizan operaciones mucho más compleja como por ejemplo devolver toda la información sobre discos: número de discos, con cuántas particiones cada uno, tamaño, tipo, etc. Además su salida está formateada en json para la comunicación con el WebConsole.