2013-11-14 4 views
0

Я пытаюсь установить REDHAWK v1.8.2 на новую установку CentOS 6.4 32 бит, но я не могу запустить omniNames и omniEvents.Ошибка при запуске OmniEvents

sudo /sbin/service omniEvents stop 
Stopping CORBA event service: omniEvents 

sudo /sbin/service omniNames stop 
Stopping omniNames           [ OK ] 

sudo /sbin/service omniNames start 
Starting omniNames           [ OK ] 

sudo /sbin/service omniEvents start 

Starting CORBA event service on port 11169: omniEvents: [25848]: Warning - failed to resolve initial reference 'NameService'. Exception: TRANSIENT 
omniEvents. 

Я попытался проверить, если omniNames действительно работает путем вызова клиента имен, но получил сообщение об ошибке (см ниже), так что кажется omniNames успешно не начинается.

nameclt list 
Caught a TRANSIENT exception when trying to validate the type of the 
NamingContext. Is the naming service running? 

В рамках процесса отладки, я пытался убить процесс omniNames и запустить его по-другому (смотри ниже).

sudo killall omniNames 
omniNames -start 

Wed Nov 13 21:08:08 2013: 

Starting omniNames for the first time. 
Error: cannot create initial log file '/var/omninames/omninames-orion.log': 
No such file or directory 

You can set the environment variable OMNINAMES_LOGDIR to specify the 
directory where the log files are kept. 

Я не уверен, почему omniNames не может создать файл журнала, потому что я проверил, что/вар/omninames папка на самом деле существует, и даже начиная omniNames, как корень дает ту же ошибку. Несмотря на это, я установил каталог журнала на свой рабочий стол, чтобы обойти ошибку (см. Ниже).

export OMNINAMES_LOGDIR=/home/$USER/Desktop/logs 
mkdir -p /home/$USER/Desktop/logs 
omniNames -start 

Wed Nov 13 21:09:17 2013: 

Starting omniNames for the first time. 
Wrote initial log file. 
Read log file successfully. 
Root context is IOR:010000002b00000049444c3a6f6d672e6f72672f436f734e616d696e672f4e616d696e67436f6e746578744578743a312e30000001000000000000005c000000010102000a00000031302e322e382e333500f90a0b0000004e616d6553657276696365000200000000000000080000000100000000545441010000001c00000001000000010001000100000001000105090101000100000009010100 
Checkpointing Phase 1: Prepare. 
Checkpointing Phase 2: Commit. 
Checkpointing completed. 

Несмотря на то, что выглядит как omniNames успешно началось, когда я открываю другое окно терминала и вызвать клиент именования, я получаю ту же ошибку, как и раньше (см. Ниже)

nameclt list 
Caught a TRANSIENT exception when trying to validate the type of the 
NamingContext. Is the naming service running? 

Единственное изменение, которое я сделал в файле /etc/omniORB.cfg, чтобы добавить строки для InitRef (см. Ниже)

InitRef = NameService=corbaname::localhost 
InitRef = EventService=corbaloc::localhost:1169/omniEvents 

Кроме того, я не подключен к Интернету, так что моя версия CentOS не обновлялись от базовой версии, для библиотек наддува, за исключением, как это рекомендовано в Приложении J руководства (http://sourceforge.net/projects/redhawksdr/files/redhawk-doc/1.9.0/REDHAWK_Manual_v1.9.0.pdf/download).

ответ

2

Похоже, проблема в вашей конфигурации. У вас неправильный порт в файле конфигурации. Это должен быть порт 11169, однако вы указали порт 1169.

Для получения более подробной информации см.: http://redhawksdr.github.io/Documentation/mainch2.html#x4-120002.6.

Несколько других замечаний и рекомендаций относительно omniOrb в случае, если это не проблема.

  • Иногда omninames/omnievents могут попасть в плохое состояние. Исправление состоит в том, чтобы удалить файлы журнала, созданные omniNames и omniEvents, и перезапустить службы. Они расположены:

    /вар/Библиотека/omniEvents/*

    /вар/omniNames/*

Вы должны быть суперпользователем, чтобы удалить эти файлы. Я всегда забываю, где они находятся, и часто «нахожу omni | grep -i log», чтобы напомнить себе, но вы должны сделать это как root, так как они не видны стандартным пользователям.

  • Хотя это не имеет значения, я лично обнаружил, что использование 127.0.0.1 более надежно, чем localhost. По какой-то причине использование localhost внутри виртуальной машины в файле конфигурации в прошлом вызывало у меня проблемы. Рассмотрите возможность использования 127.0.0.1 вместо localhost. Это то, что рекомендует текущая версия Руководства Redhawk.

  • Вы упомянули, что используете Redhawk v1.8.2. В качестве FYI последняя версия REDHAWK в серии 1.8 в настоящее время v1.8.5 и 1.9.0 также была недавно выпущена.

Надеюсь, это поднимет вас!

+0

Благодарим за сообщение о неправильном порту для omniEvents. В документации для версии 1.8.2 специально сказано, что используется порт 1169, но я не понимал, что это опечатка. После того, как вы выполнили все свои шаги, тот, кто окончательно устранил проблему, использовал 127.0.0.1 вместо localhost. Кроме того, я понимаю, что версия 1.9.0 была выпущена, но поскольку мой компьютер не подключен к Интернету, крайне утомительно вручную загружать все зависимости для установки последней версии. – coder

Смежные вопросы