Ayrıcalıklı kullanıcıyla çalışırken Xulrunner çökmesi


1

SlimerJ'leri bir sunucuda başsız bir tarayıcı olarak kullanıyorum. Sunucunun xserver'ı olmadığından çalıştırmak için xvfb kullandım.

Komut böyle bir şeye gider:

xvfb-run --server-args="-screen 0, 1024x768x24" slimerjs-0.10.0pre/slimerjs \
script.js --debug=yes "/tmp/file986Iww" "/tmp/file28bAEv" "pdf"

Bu dosya script.jsgiriş için bir dosya adı, çıktı için bir dosya adı ve daha ince yazıcı özelliğini kullanarak dönüştürülecek bir format alır.

Benim sorunum root olarak çalışırken, iyi çalışıyor olmasıdır. Ama apache'nin işi yapmasına izin verdiğimde başarısız oluyor ve takılıyor.

Apache www-datakullanıcı ve grup altında çalışır . Bu önceki komutun çıktısıdır:

slimerjs-0.10.0pre/xulrunner/xulrunner -app slimerjs-0.10.0pre/application.ini --profile /tmp/slimerjs.gRAJJar6 -no-remote script.js --debug=yes /tmp/file986Iww /tmp/file28bAEv pdf
Xlib:  extension "RANDR" missing on display ":99".
JavaScript warning: resource://slimerjs/slUtils.jsm, line 154: JavaScript 1.7's let blocks are deprecated
JavaScript error: jar:file:///var/www/project/slimerjs-0.10.0pre/xulrunner/omni.ja!/components/XULStore.js, line 66: NS_ERROR_FAILURE: Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIProperties.get]
** stuck forever here **

66 numaralı hat XULStore.js:

65. Services.obs.addObserver(this, "profile-before-change", true);
66. this._storeFile = Services.dirsvc.get("ProfD", Ci.nsIFile);
67. this._storeFile.append(STOREDB_FILENAME);

Strace’de neyin yanlış olduğunu görmeye çalışmak bana bir tür döngüye takıldığını gösteriyor.

Bu kullanıcının bu ikiliyi çalıştırmamasının sebeplerini göremiyorum.
Hangi iznin eksik olduğunu veya xulrunner'da neyin yanlış gittiğini nasıl hata ayıklayabilirim?

Strace'i göndermedim çünkü oldukça ağır, ilgili bilgiler içerdiğini düşünüyorsanız sormaktan çekinmeyin.

$ uname -a
Linux *host* 3.10-0.bpo.2-amd64 #1 SMP Debian 3.10.5-1~bpo70+1 (2013-08-11) x86_64 GNU/Linux

Yanıtlar:


2

Almaya çalıştığınız profil dizinine erişme veya yazma izniniz olmayabilir.

Aracılığıyla size (muhtemelen) profil dizini ile eşleşen rağmen SlimerJS belgelerine gösterir bu olmalıdır (tek çizgi)--profile /tmp/slimerjs.gRAJJar6-profile

Varsayılan olarak, profil seçeneğini atlarsanız, çift çizgi vs. ANA / .innophi / slimerjs /"

Bunu çalıştırmayı denediğiniz için www-datagiriş dizinini kontrol edin ve SlimerJS varsayılan dizin yolunda dosya oluşturup erişebildiğinizi veya -profilebunun yerine kullanıp kullanmadığınızı --profileve belirtilen klasörde dosya oluşturabileceğinizi ve erişebileceğinizi doğrulayın.


Onlarınki bundan çok daha fazlaydı ama sen beni doğru yola soktun. Kullanarak straceve grep EACCdosyaların nerelerde sorun çıkardığını gördüm. Profil gerçekten dahil oldu. Çalışması için birçok dosya oluşturmak ve chmod yapmak zorunda kaldım.
Cyrbil,
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.