2014-12-01 2 views
3

Context Broker 인스턴스를 실행중인 CentOS가있는 가상 시스템을 중지했습니다. 작동 코드로 시스템을 다시 시작하면 후자는 치명적 오류를 표시합니다. 아래 로그를 참조하십시오 :컨텍스트 브로커 FI : 치명적인 오류 (REST 인터페이스 시작 오류)

# contextBroker 
[email protected]:18:32 contextBroker.cpp[1348]: Orion Context Broker is running 
[email protected]:18:32 mongoGlobal.cpp[164]: Successful connection to database 
[email protected]:18:32 contextBroker.cpp[1157]: Connected to mongo at localhost:orion 
[email protected]:18:32 mongoGlobal.cpp[483]: Database Operation Successful ({ conditions.type: "ONTIMEINTERVAL" }) 
[email protected]:18:32 rest.cpp[901]: Fatal Error (error starting REST interface) 

저는 VirtualBox에서 실행중인 CentOS 6의 Orion 4.1.2 버전에서 작업하고 있습니다. su 로그 파일 오류에 대한 사용 권한이 거부 되었기 때문에 실행 중입니다. 정보를 위해 VM 재부팅 직전에 브리징 네트워크 연결을 활성화했습니다.

브로커가 올바르게 닫히지 않아 다시 시작을 차단하는 것이 있습니까? (PS. 예. 관리 가이드에 거의 동일한 오류 메시지가 있음을 알고 있지만 거기에는 해결책이 표시되지 않습니다.)

고마워요!

편집 : 작동하는 하나의 솔루션은 contextBroker 패키지를 제거하고 다시 설치하는 것입니다. 나는 더 깨끗한 방법이 있었으면 좋겠다!

EDIT :이 문제는 contextBroker 응용 프로그램을 죽일 때마다 재생됩니다. 다시 시작하지 않으면 다시 패키지가 설치됩니다.

답변

0

같은 포트를 사용하는 다른 브로커 인스턴스 (ps aux | grep contextBroker)가 없는지 확인하십시오. 실행중인 브로커의 다른 인스턴스가 있으면 포트가 사용되고 REST 초기화가 실패합니다.

로그 파일 권한으로 인해 루트로 실행하는 방법 ... 대신 단순히 로그 파일의 소유자를 변경하지 않는 것이 어떻습니까?

+0

1) 시작 스크립트에 contextBroker를 추가하지 않으면 contextBroker가 자동으로 부팅됩니다. 없으면 브로커가 제거 될 때 포트가 차단되고 차단 해제 될 이유가 없습니다. 그러나 나는 그것을 점검 할 것이다. 2) 로그 파일의 경우 : 저는 리눅스 사용자가 아니며 살아남을 수 있도록 최선을 다하고 있습니다.) –

+0

프로세스 죽이는 것이 옳습니다. 감사합니다. 오해의 소지가있는 것은'contextBroker'로 중개인을 시작하면, 예상했던대로 '^ C'로 죽일 수있는 응용 프로그램이 아니라 배경에서 서비스를 시작한다는 것입니다. –