Cargando...
 

 Obsoleta
La información de esta página es antigua. Puede que esté obsoleta.

Historial: Funcionalitats d'N4D

Previsualización de la versión: 10

Versiones
  -LliureX 16

  -LliureX 15

 

1. Introducció

 

És recomanable abans de llegir aquesta entrada que consulteu  El sistema n4d. El llenguatge que s'utilitza per a programar connectors (plugins) d'n4d és principalment python. Per aquest motiu és recomanable tindre'n unes nocions bàsiques  per a poder seguir aquesta entrada. En podeu trobar informació detallada als següents enllaços:

http://mundogeek.net/tutorial-python/

http://librosweb.es/libro/python/

Encara que trobareu explicacions sobre codi a l'entrada, aquesta no pretén ser un tutorial de python, motiu pel qual és recomanable tenir algunes nocions bàsiques de programació.

 

2. Funcionalitats d'n4d.

 

Per a invocar funcionalitats n4d sobre un sistema en llenguatges com pyn o javascript, necessitarem un servidor amb n4d funcionant. Així, per exemple, python podem fer cridades  xmlrpc de la manera següent:

En primer lloc, executarem python:

 

Python 2.7.12 (default, Nov 19 2016, 06:48:10) [GCC 5.4.0 20160609] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>>


I carregarem la llibreria xmlrpc

>>> import xmlrpclib


Ara que ja tenim la llibreria carregada, caldrà dir-li al sistema a quina màquina que suporte cridades xmlrpc volem que es connecte.

>>> client=xmlrpclib.ServerProxy("https://IP_DE_NUESTRA_MÁQUINA:9779")


D'aquesta manera ja podrem executar peticions a la nostra màquina :

>>> mirror=client.get_variable("", "VariablesManager", "LLIUREXMIRROR") >>> print mirror {'llx16': {'exception_msg': '', 'status_mirror': 'Ok', 'mirror_size': '14.258067918', 'progress': 100, 'last_mirror_date': '30/01/2017'}}

 
Podem fixar-nos com

 

2.1.  N4d-remote-gui-plugin:

 

Una de les funcionalitats que presenta n4d és el connector (plugin) n4d-remote-gui-pluguin que permet llançar interfície gràfica des de qualsevol màquina  que estiga connectada a la nostra xarxa a través del servidor gràfic Xephyr.

Aquest connector presenta dues classes que podems utilizar, per tal de conéixer-les podem executar :

 

n4d-client getmethods | grep Gui


Fixa't que en Gui, la G està en majúscula. Així tindrem la següent eixida on podrem veure tres classes: RemoteWebGu, RemoteGuiManager i GuiLauncherManager.

 

[RemoteWebGui] run_into_connection : anonymous [RemoteWebGui] remote_execute : anonymous [RemoteWebGui] create_connection : anonymous [RemoteWebGui] close_connection : anonymous [RemoteGuiManager] remote_execute : anonymous [GuiLauncherManager] register_display : adm admins [GuiLauncherManager] execute : adm admins

 

Una és per llançar interfícies gràfiques en local (a una màquina remota) ,  una altra per a interfícies remotes (a una màquina local) i finalment hi ha una classe per a llançar interfícies remotes en una pàgina  web. RemoteWebGui no forma part del paquet d'n4d-remote-gui-plugin, s'utilitza per a l'admin-cente en LliureX 16.  Veurem alguns exemples d'utilització del paquet. 

 

 

GUI en local sobre una màquina remota

La classe GuiLauncherManager proporciona un mètode per llançar una aplicació en una màquina remota. Utilitzarem el mètode amb n4d-client:

 

n4d-­client   ­-h  172.27.104.107  ­-c   GuiLauncherManager   ­-m execute   ­-u   lliurex   ­-p   lliurex   ­-a   " "   lliurex "firefox wiki.lliurex.net"

 
Utilitzarem la instrucció:

Opción Función
-h Dirección IP del host que servirá la función (host remoto).
-c Clase donde se encuentra el método que queremos usar.
-m Método que vamos a usar.
-u Usuario del host remoto. El método no es anónimo por lo que es necesario proporcionar un usuario del grupo adm.
-p Contraseña del host remoto.
-a Atributos de la función. En este caso " " es la ip desde dónde se invoca la petición que se autocompleta, lliurex es el usuario que queremos que se ejecute la aplicación y finalmente firefox es la aplicación que queremos lanzar.



D'aquesta manera s'obrirà el firefox en l'ordinador remot.
 

GUI remota sobre la nostra màquina

Altra opció que tenim és la d'executar a la nostra màquina una instància remota.

 

n4d­-client ­-c RemoteGuiManager- ­m remote_execute -­a $USER "caja" 172.27.104.107 lliurex lliurex True

 

Els paràmetres que utilitzarem són:

Opción Función
-c Clase donde se encuentra el método que queremos usar.
-m Método que vamos a usar.
-a
$USER: Usuario local.
"caja": Programa que queremos ejecutar
IP: Ip del host remoto.
lliurex: Usuario del host remoto.
lliurex: Contraseña
True: Este parámetro indica que la aplicación se lanzará como sudo

 

El que estem fent és llançar el programa caixa com a sudo en l'ordinador on estem connectats, de manera que els fitxers que veurem seran els de l'altre ordinador. A més, podrem modificar qualsevol arxiu ja que hem llançat el programa com a sudo.

 

Historial

Avanzado
Información Versión
2024-08-21 08:44 juanma 20
Ver
2020-12-03 14:59 munoz_ric Ajustament de salts de línia 19
Ver
2020-12-01 13:28 munoz_ric 18
Ver
2020-11-13 12:12 juanma 17
Ver
2020-01-10 13:41 raul 16
Ver
2019-04-08 14:27 admin 15
Ver
2018-09-19 12:44 empar 14
Ver
2018-09-19 12:37 empar 13
Ver
2018-09-19 12:29 empar 12
Ver
2018-09-19 12:20 empar 11
Ver
2018-09-19 12:01 empar 10
Ver
2018-09-19 11:52 empar 9
Ver
2018-09-19 11:47 empar 8
Ver
2018-09-19 11:34 empar 7
Ver
2018-09-19 11:20 empar 6
Ver
2018-09-19 11:11 empar 5
Ver
2018-09-19 11:02 empar 4
Ver
2018-09-19 10:19 empar 3
Ver
2018-09-19 10:10 empar 2
Ver
2018-09-19 12:44 empar 1
Ver

Historial

No hay registros que mostrar
Mastodon E-Mail