2013년 1월 22일 화요일

[TechNote] Application Server does not start - OSGi permission issue

Application Server does not start - OSGi permission issue

Problem(Abstract)

You attempt to start an application server (ie: server1), but it does not start and the systemout.log is not updated when using IBM WebSphere Application Server.

Symptom

The native_stdout.log shows:
deleteEclipseInstanceArea shutdown hook: deleting /app/wasprofile/profile1/temp/osgi_instance_location/wasadm/9697023
Under the folder there is a file called nnnnnnnnnnnnn.log (where nnnnnnnnnnnnn is a random number). The content of that file shows:
!ENTRY org.eclipse.osgi 4 0 2012-01-17 10:00:31.414
!MESSAGE Error reading configuration: Unable to create lock manager.
!STACK 0
java.io.IOException: Unable to create lock manager.
at org.eclipse.osgi.storagemanager.StorageManager.open(StorageManager.java:687)
at org.eclipse.osgi.internal.baseadaptor.BaseStorage.initFileManager(BaseStorage.java:213)
at org.eclipse.osgi.internal.baseadaptor.BaseStorage.initialize(BaseStorage.java:147)
at org.eclipse.osgi.baseadaptor.BaseAdaptor.initializeStorage(BaseAdaptor.java:114)
at org.eclipse.osgi.framework.internal.core.Framework.initialize(Framework.java:185)
at org.eclipse.osgi.framework.internal.core.Framework.<init>(Framework.java:157)
at org.eclipse.core.runtime.adaptor.EclipseStarter.startup(EclipseStarter.java:286)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:175)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
at java.lang.reflect.Method.invoke(Method.java:611)
at org.eclipse.core.launcher.Main.invokeFramework(Main.java:340)
at org.eclipse.core.launcher.Main.basicRun(Main.java:282)
at org.eclipse.core.launcher.Main.run(Main.java:981)
at com.ibm.wsspi.bootstrap.WSPreLauncher.launchEclipse(WSPreLauncher.java:371)
at com.ibm.wsspi.bootstrap.WSPreLauncher.main(WSPreLauncher.java:141)

Cause

The problem is caused by a permission problem with the folders under the <profile_home>/servers/<servername>/configuration folder. The WebSphere Application Server was not able to read/write to the folders. The folders have the wrong permissions because the osgicfgInit.sh command was ran as the root user but WebSphere Application Server is being run as a non-root user.

Environment

This is only seen in WebSphere Application Server Version 8.

Diagnosing the problem

The errors in the nnnnnnnnnnnnn.log indicate that files could not be created in the <profile_home>/servers/<servername>/configuration subfolders.

Resolving the problem

Remove or rename the <profile_home>/servers/<servername>/configuration folder and re-running the osgicfgInit.sh command as the correct user. This will create a new <profile_home>/servers/<servername>/configuration folder with the correct permissions.

댓글 없음:

댓글 쓰기