L'autre jour j'ai eu besoin d'aller travailler sur UCM et au moment donné on a dû charger l'interface graphique depuis le serveur, le problème est que l’installation et la configuration de sécurité a été faite pour être obligé de passer par un "sudo" pour aller regarder le "owner" de l'application.
Pour être plus précis :
[oracle@serveurduclient ~]$ uname -a
Linux serveurduclient 2.6.18-274.el5 #1 SMP Fri Jul 8 17:36:59 EDT 2011 x86_64 x86_64 x86_64 GNU/Linux
[oracle@serveurduclient ~]$ sudo su - ucmowner
[sudo] password for oracle: ******
[ucmowner@serveurduclient ~]$
[oracle@serveurduclient ~]$ xclock
X11 forwarding request failed on channel 0
Error: Can't open display:
Cela ne charge pas.
Bon, en principe, je voulais m'assurer que l'interface graphique fonctionnait avec le compte "oracle". Pour ce faire, nous avons juste besoin de lancer le xclock.
[oracle@serveurduclient ~]$ xclock
et cela fonctionne.
En suite, voici comment réussir à charger l'interface graphique après un sudo.
[oracle@serveurduclient ~]$ xauth list
serveurduclient/unix:11 MIT-MAGIC-COOKIE-1 48620000447600002c7100000e150000
serveurduclient/unix:12 MIT-MAGIC-COOKIE-1 7f360000015700004c1a0000280d0000
serveurduclient/unix:13 MIT-MAGIC-COOKIE-1 61640000185d0000de3b0000ba230000
[oracle@serveurduclient ~]$ echo $DISPLAYlocalhost:10.0
Maintenant je vais me connecter à "ucmowner" à travers le sudo
[oracle@serveurduclient ~]$ sudo su - ucmowner
[sudo] password for oracle:
Il faut assigner une des entrées listées préalablement, de préférence celle qui utilise le même "display", soit le 10.
[ucmowner@serveurduclient ~]$ xauth add serveurduclient/unix:10 MIT-MAGIC-COOKIE-1 2ffc5fe4c12536c4c8477864b94aa659
Maintenant on peut lancer l'interface graphique.
[ucmowner@serveurduclient ~]$ xclock
Warning: Missing charsets in String to FontSet conversion
et voilà.
Donc, maintenant je peux continuer avec mon travail avec UCM...
Cette semaine, chez un client j'ai dû créer une petite base de données pour être utilisé comme catalogue RMAN sur un serveur distant.
Celle-ci est une bd 11gR2 (11.2.0.2.0) mais le même problème pu apparaître sur les versions plus récentes.
La partie de la création s'est bien passé mais après lorsque le listener a été configuré je me suis retrouvé avec ce message d'erreur :
oracle@xxxxx:....../admin> sqlplus system@rmantmp
SQL*Plus: Release 11.2.0.2.0 Production on Jeu. Juil. 9 12:00:38 2015
Copyright (c) 1982, 2010, Oracle. All rights reserved.
Enter password:
ERROR:
ORA-01034: ORACLE not available
ORA-27101: shared memory realm does not exist
Linux-x86_64 Error: 2: No such file or directory
ID de processus : 0
ID de session : 0, Numero de serie : 0Cependant la connexion sans le listener n'avait pas de problèmes
oracle@xxxxx:....../admin> sqlplus / as sysdba
SQL*Plus: Release 11.2.0.2.0 Production on Jeu. Juil. 9 12:02:01 2015
Copyright (c) 1982, 2010, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
Mon "listener" montrait que tout était correct :
oracle@xxxxx:..../admin> lsnrctl start LSN_RMANTMP_PUB
LSNRCTL for Linux: Version 11.2.0.2.0 - Production on 09-JUIL.-2015 12:09:30
Copyright (c) 1991, 2010, Oracle. All rights reserved.
Starting /appl/oracle/product/11.2.2/bin/tnslsnr: please wait...
TNSLSNR for Linux: Version 11.2.0.2.0 - Production
System parameter file is /appl/...../admin/listener.ora
Log messages written to /appl/...../log.xml
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=10.abc.xyz.27)(PORT=1521)))
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
STATUS of the LISTENER
------------------------
Alias LSN_RMANTMP_PUB
Version TNSLSNR for Linux: Version 11.2.0.2.0 - Production
Start Date 09-JUIL.-2015 12:09:32
Uptime 0 days 0 hr. 0 min. 0 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /appl/...../admin/listener.ora
Listener Log File /appl/...../log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=10.abc.xyz.27)(PORT=1521)))
Services Summary...
Service "rmantmp" has 1 instance(s).
Instance "rmantmp", status UNKNOWN, has 1 handler(s) for this service...
The command completed successfully
Mon tnsping fonctionnait :
oracle@xxxxx:...../admin> tnsping rmantmp
TNS Ping Utility for Linux: Version 11.2.0.2.0 - Production on 09-JUIL.-2015 12:14:52
Copyright (c) 1997, 2010, Oracle. All rights reserved.
Used parameter files:
/appl/...../sqlnet.ora
Used TNSNAMES adapter to resolve the alias
Attempting to contact (Description = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = xxxxxx.yyyyyy.zzz)(PORT = 1521))) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = RMANTMP)))
OK (0 msec)
Après plusieurs essais, j'ai regardé si des caractères cachés se trouvaient dans mon listener.ora et malgré que je n'ai rien vu d'anormale, j'ai décidé finalement de le recréer, même chose pour mon tnsnames.ora, et cela a corrigé mon problème.
oracle@xxxxx:..../admin> sqlplus evta@rmantmp
SQL*Plus: Release 11.2.0.2.0 Production on Jeu. Juil. 9 12:17:00 2015
Copyright (c) 1982, 2010, Oracle. All rights reserved.
Enter password:
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> exit