Hi,
~
 I am trying to run tomcat from a directory mounted as read-only and I
was under the impression all it took was, doing two or three things
namely:
~
 * If you need to edit the webapps as tomcat runs, resetting the
[Engine > Realm > Host]:appBase to the new webapps directory in the
writable area
~
 * changing the [Engine > Realm > Host]:workDir to an area in the
writable partition
~
 * setting the [Engine > Realm > Host > Valve]:directory with the full
path to where you want the logs to be sent
~
 I also changed CATALINA_TMPDIR in catalina.sh to an area in the
writable partition
~
 But, even though tomcat seemed to run, I got stack traces of
exceptions which looked all the same.
~
 I basically see that there are 5 files trying to write to
$TOMCAT_HOME/logs and all of the are suffixed with a yyyy-mm-dd.log
pattern; namely catalina, localhost, manager, admin and host-manager
~
 Well, my question is stated in the subject line, how do you do that?
~
 Thanks
 lbrtchx
~
// _ P.S. the stack traces
~
sh-3.1# sh ./catalina.sh run
Using CATALINA_BASE:   /media/hda3/tc/tc-6.0.18
Using CATALINA_HOME:   /media/hda3/tc/tc-6.0.18
Using CATALINA_TMPDIR: /media/hda2/tc/tc-6.0.18/TMPDIR
Using JRE_HOME:       /media/hda3/jdk1.6.0_07
java.util.logging.ErrorManager: 4
java.io.FileNotFoundException:
/media/hda3/tc/tc-6.0.18/logs/catalina.2008-12-04.log (Read-only file
system)
 at java.io.FileOutputStream.openAppend(Native Method)
 at java.io.FileOutputStream.<init>(FileOutputStream.java:177)
 at java.io.FileOutputStream.<init>(FileOutputStream.java:102)
 at java.io.FileWriter.<init>(FileWriter.java:61)
 at org.apache.juli.FileHandler.open(FileHandler.java:259)
 at org.apache.juli.FileHandler.<init>(FileHandler.java:59)
 at org.apache.juli.FileHandler.<init>(FileHandler.java:50)
 at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
 at 
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
 at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
 at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
 at java.lang.Class.newInstance0(Class.java:350)
 at java.lang.Class.newInstance(Class.java:303)
 at 
org.apache.juli.ClassLoaderLogManager.readConfiguration(ClassLoaderLogManager.java:404)
 at 
org.apache.juli.ClassLoaderLogManager.readConfiguration(ClassLoaderLogManager.java:348)
 at 
org.apache.juli.ClassLoaderLogManager.readConfiguration(ClassLoaderLogManager.java:239)
 at java.util.logging.LogManager$2.run(LogManager.java:254)
 at java.security.AccessController.doPrivileged(Native Method)
 at 
java.util.logging.LogManager.readPrimordialConfiguration(LogManager.java:252)
 at java.util.logging.LogManager.getLogManager(LogManager.java:235)
 at java.util.logging.Logger.<init>(Logger.java:201)
 at java.util.logging.LogManager$RootLogger.<init>(LogManager.java:969)
 at java.util.logging.LogManager$RootLogger.<init>(LogManager.java:966)
 at java.util.logging.LogManager$1.run(LogManager.java:179)
 at java.security.AccessController.doPrivileged(Native Method)
 at java.util.logging.LogManager.<clinit>(LogManager.java:156)
 at java.util.logging.Logger.getLogger(Logger.java:254)
 at org.apache.juli.logging.DirectJDKLog.<init>(DirectJDKLog.java:71)
 at org.apache.juli.logging.DirectJDKLog.getInstance(DirectJDKLog.java:178)
 at org.apache.juli.logging.LogFactory.getInstance(LogFactory.java:170)
 at org.apache.juli.logging.LogFactory.getInstance(LogFactory.java:241)
 at org.apache.juli.logging.LogFactory.getLog(LogFactory.java:296)
 at org.apache.catalina.startup.Bootstrap.<clinit>(Bootstrap.java:54)
java.util.logging.ErrorManager: 4
java.io.FileNotFoundException:
/media/hda3/tc/tc-6.0.18/logs/manager.2008-12-04.log (Read-only file
system)
 at java.io.FileOutputStream.openAppend(Native Method)
. . .
 at org.apache.catalina.startup.Bootstrap.<clinit>(Bootstrap.java:54)
java.util.logging.ErrorManager: 4
java.io.FileNotFoundException:
/media/hda3/tc/tc-6.0.18/logs/admin.2008-12-04.log (Read-only file
system)
 at java.io.FileOutputStream.openAppend(Native Method)
. . .
 at org.apache.catalina.startup.Bootstrap.<clinit>(Bootstrap.java:54)
java.util.logging.ErrorManager: 4
java.io.FileNotFoundException:
/media/hda3/tc/tc-6.0.18/logs/host-manager.2008-12-04.log (Read-only
file system)
 at java.io.FileOutputStream.openAppend(Native Method)
. . .
 at org.apache.catalina.startup.Bootstrap.<clinit>(Bootstrap.java:54)
Dec 4, 2008 3:27:15 PM org.apache.catalina.core.AprLifecycleListener init
INFO: The APR based Apache Tomcat Native library which allows optimal
performance in production environments was not found on the
java.library.path:
/media/hda3/jdk1.6.0_07/jre/lib/i386/client:/media/hda3/jdk1.6.0_07/jre/lib/i386:/media/hda3/jdk1.6.0_07/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib
Dec 4, 2008 3:27:15 PM org.apache.coyote.http11.Http11Protocol init
INFO: Initializing Coyote HTTP/1.1 on http-80
Dec 4, 2008 3:27:15 PM org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 1315 ms
Dec 4, 2008 3:27:15 PM org.apache.catalina.users.MemoryUserDatabase save
WARNING: User database is not persistable - no write permissions on directory
Dec 4, 2008 3:27:15 PM org.apache.catalina.core.StandardService start
INFO: Starting service Catalina
Dec 4, 2008 3:27:15 PM org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/6.0-snapshot
Dec 4, 2008 3:27:16 PM org.apache.coyote.http11.Http11Protocol start
INFO: Starting Coyote HTTP/1.1 on http-80
Dec 4, 2008 3:27:16 PM org.apache.jk.common.ChannelSocket init
INFO: JK: ajp13 listening on /0.0.0.0:8009
Dec 4, 2008 3:27:16 PM org.apache.jk.server.JkMain start
INFO: Jk running ID=0 time=0/67  config=null
Dec 4, 2008 3:27:16 PM org.apache.catalina.startup.Catalina start
INFO: Server startup in 994 ms

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to