# Suse + Tomcat + Sysdeo Plugin: Tomcat als user starten



## jollyroger (22. Mrz 2007)

Hallo zusammen,

war mir nicht sicher ob das das richtige Unterforum ist, aber naja........

Folgendes:

ich verwende Eclipse und Tomcat unter Edgy in Kombination mit dem Sysdeo-Plugin.

Mit diesem Plugin kann ich sehr komfortabel aus eclipse heraus den Tomcat starten und stoppen und - was noch viel wichtiger ist - auch meine Applikationen in eclipse debuggen.

Nun habe ich aber das Problem, das Tomcat zwar nicht unter root läuft, aber nur von root gestartet werden kann.

Damit ich also Tomcat über eclipse bzw. über das Plugin starten kann, muss ich eclipse als root starten.

Starte ich ihn als user über das Plugin, kriege ich haufenweise exceptions der Art:


```
SEVERE: Error deploying configuration descriptor host-manager.xml
java.io.FileNotFoundException: /etc/tomcat55/Catalina/localhost/host-manager.xml (Permission denied)
	at java.io.FileInputStream.open(Native Method)
	at java.io.FileInputStream.<init>(FileInputStream.java:106)
	at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1543)
	at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:565)
	at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:535)
	at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:470)
	at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1190)
	at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:292)
	at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
	at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1305)
	at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1569)
	at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1578)
	at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1558)
	at java.lang.Thread.run(Thread.java:595)
Mar 22, 2007 2:46:07 PM org.apache.catalina.startup.HostConfig deployDescriptor
SEVERE: Error deploying configuration descriptor admin.xml
java.io.FileNotFoundException: /etc/tomcat55/Catalina/localhost/admin.xml (Permission denied)
	at java.io.FileInputStream.open(Native Method)
	at java.io.FileInputStream.<init>(FileInputStream.java:106)
	at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1543)
	at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:565)
	at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:535)
	at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:470)
	at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1190)
	at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:292)
	at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
	at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1305)
	at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1569)
	at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1578)
	at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1558)
	at java.lang.Thread.run(Thread.java:595)
Mar 22, 2007 2:46:07 PM org.apache.catalina.startup.HostConfig deployDescriptor
SEVERE: Error deploying configuration descriptor manager.xml
java.io.FileNotFoundException: /etc/tomcat55/Catalina/localhost/manager.xml (Permission denied)
	at java.io.FileInputStream.open(Native Method)
	at java.io.FileInputStream.<init>(FileInputStream.java:106)
	at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1543)
	at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:565)
	at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:535)
	at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:470)
	at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1190)
	at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:292)
	at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
	at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1305)
	at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1569)
	at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1578)
	at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1558)
	at java.lang.Thread.run(Thread.java:595)
```

Was ja auch irgendwie einleuchtend ist....

Ich hab meinen User über die /etc/sudoers berechtigt den Tomcat zu starten - das klappt auch in der Konsole - , dummerweise gibt es keine Möglichkeit dem Plugin zu sagen, vor dem Starten von Tomcat ein "sudo" voranzusetzen...

Die Homepage von Sysdeo ist seit ein paar tagen offline( = faq) und im Netz hab ich nicht wirklich was dazu gefunden...

Deshalb nun die Frage: Was muss ich tun, damit ich als user über eclipse bzw. über das Plugin Tomcat starten kann?

Danke für alle Tips!


----------



## jollyroger (22. Mrz 2007)

jollyroger hat gesagt.:
			
		

> Hallo zusammen,
> 
> war mir nicht sicher ob das das richtige Unterforum ist, aber naja........
> 
> ...


----------



## jollyroger (22. Mrz 2007)

Ups, 

da ist beim Editieren wohl was schiefgelaufen........

Wie auch immer, hab einen workaround den ich zwar nicht optimal finde, der aber seinen Zweck erfüllt:


```
chmod -R o=rw /var/run
chown -R myUser:users /etc/tomcat55
chown -R myUser:users /usr/share/tomcat55
chown -R myUser:users /var/lib/tomcat55
```


----------

