Tomcat ile izin sorunları


9

Tomcat 7'yi Ubuntu rehberini izleyerek yükledim . Sunucu çalışıyor ve bana "Çalışıyor!" sayfasında http://localhost:8080/.

Şimdi Netbeans kullanarak kendi web uygulamamı kurmak istiyorum. Java EE 6 ve Tomcat 7 ile yeni bir Web Projesi oluşturdum . Kullanıcı /var/lib/tomcat7/conf/tomcat-users.xmldosya üzerinde düzgün yapılandırılmış.

Projeyi çalıştırdığımda her şey yolunda görünüyor, ancak tarayıcıyı açtığımda 500 hata veriyor .

Dosya izinleri:

lucio@lucio-pc:/$ ll /var/lib/tomcat7/logs
lrwxrwxrwx 1 root root 17 jul 24 18:07 /var/lib/tomcat7/logs -> ../../log/tomcat7/
lucio@lucio-pc:/$ ll /var/log/tomcat7/
total 136
drwxr-x---  2 tomcat7 adm      4096 ago 28 10:50 ./
drwxrwxr-x 15 root    syslog   4096 ago 28 09:29 ../
-rw-r--r--  1 tomcat7 tomcat7   800 ago 26 17:23 catalina.2014-08-26.log.gz
-rw-r--r--  1 tomcat7 tomcat7  5173 ago 27 21:59 catalina.2014-08-27.log
-rw-r--r--  1 tomcat7 tomcat7 31285 ago 28 10:36 catalina.2014-08-28.log
-rw-r--r--  1 tomcat7 root    44192 ago 28 10:36 catalina.out
-rw-r--r--  1 tomcat7 tomcat7    45 ago 26 16:19 localhost.2014-08-26.log.gz
-rw-r--r--  1 tomcat7 tomcat7     0 ago 27 11:15 localhost.2014-08-27.log
-rw-r--r--  1 tomcat7 tomcat7   433 ago 28 09:49 localhost.2014-08-28.log
-rw-r--r--  1 tomcat7 tomcat7  7435 ago 26 17:23 localhost_access_log.2014-08-26.txt
-rw-r--r--  1 tomcat7 tomcat7     0 ago 27 11:15 localhost_access_log.2014-08-27.txt
-rw-r--r--  1 tomcat7 tomcat7 15186 ago 28 09:58 localhost_access_log.2014-08-28.txt

Dosyalara neden erişemiyorum, kullanıcının ve grubun tomcat7dosyalara izinleri olduğunu görebilirsiniz. JVM için dosyalar üzerinde ayrıcalıklara ihtiyaç duyan bir kullanıcı var mı?

Ayrıca burada belirtildiği gibi dosya sahipliklerini değiştirmeyi denedim ama hiç değişmiyor.


/etc/default/tomcat7Dosya vardır:

TOMCAT7_USER=tomcat7
TOMCAT7_GROUP=tomcat7

Bu yüzden sanırım kullanıcı olarak çalışıyor tomcat7.


Kullanıcıyı tomcat7gruba ekledim :

sudo usermod -aG tomcat7 $USER

Ve sonra makineyi yeniden başlattı, ancak sorun devam ediyor.


Tomcat tomcat7 kullanıcısı olarak mı çalışıyor?
muru

Tomcat'i kullandığımdan beri çok uzun zaman geçti, ancak benim başıma 2 şey geliyor: Programın günlüğe erişmesine izin vermek için tomcat7 grubunda olmanıza gerek yok mu? Ve ayrıca, gerçekten bir geçici dosyaya erişmek istiyor gibi görünüyor /var/lib/tomcat7/temp; bu var mı? Aynı izin sorunu da olabilir. Belki de kendinizi tomcat7 grubuna eklemeniz gerekir.
Marty Fried

Ayrıca, fikrimi kullanmak için dosya grubunu yazılabilir hale getirmeniz gerekir. Ve burada yardımcı olabilecek daha fazla bilgi var .
Marty Fried

Tomcat7'yi çalıştıran kullanıcının (insan veya uygulama) / var / lib / tomcat7 / ve özellikle de logs klasörüne erişim izni yok gibi görünüyor.
MickyInTheSky

Yanıtlar:


9

Burada iki sorun fark ettim.

Hata günlüğündeki iki satır bana göze çarpıyordu:

SEVERE: Cannot find specified temporary folder at /var/lib/tomcat7/temp  

ve:

java.io.FileNotFoundException: /var/lib/tomcat7/conf/tomcat-users.xml (Permission denied)

Lucio ile biraz teşhis yaparak , tomcat-users.xmldosyanın Tomcat'e ait olmadığını, bunun yerine olduğunu anladım root. Komutu çalıştırarak izinleri uygun olanlarla değiştirin:

sudo chown tomcat7:tomcat7 /var/lib/tomcat7/conf/tomcat-users.xml

Ayrıca, klasörü /var/lib/tomcat7/temptomcat izinleriyle oluşturun, örneğin:

sudo mkdir /var/lib/tomcat7/temp && sudo chown -R tomcat7:tomcat7 /var/lib/tomcat7/temp

Son olarak, günlüklerin düzeltilmesi kullanıcının / grubun /var/lib/tomcat7/logssahibi olunarak yapılmalıdır tomcat7. /var/log/tomcat7/Ayrıca ait olmalıdır tomcat7kullanıcıya VE grubun.


Benim için tomcat-user.xmldosyadaki izinleri değiştirmek yeterliydi. Günlükler için aynı şeyi yapmak işe yaramadı ama uygulama yine de çalışıyor :-)
Lucio
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.