2012-12-21 13 views
5

Ich habe ein Problem mit der LSF-Plattform Ich kann mich nicht umdrehen.Fehler bei der LSF-Plattform: lsb_init: Fehler in einem LSF-Bibliotheksaufruf: Datei lsf.conf konnte nicht geöffnet werden

Aus Scriptergründen muss ich die laufenden/ausstehenden Jobs mit 'bjobs' (und anderen b ***) mit einem Perl-Skript überprüfen.

Aus irgendeinem Grund hat es nicht funktioniert, und ich konnte die folgende Fehlermeldung anzuzeigen:

lsb_init: Failed in an LSF library call: Unable to open file lsf.conf 

Einige Forschungsergebnisse auf Google und im Handbuch gab nichts Besonderes, ich habe einen kleinen Test.

Mein Konto (max) ist ein LSF-Administrator. Root ist ebenfalls ein LSF-Admin.

Also wechselte ich zu root und versuchte, bjobs zu starten, aber maximal mit 'sudo -u max'. Bitte sehen Sie sich diese Befehle an:

hn[~]=> whoami 
max 
hn[~]=> bjobs 
No unfinished job found 
hn[~]=> su 
Password: 
[[email protected] max]# whoami 
root 
[[email protected] max]# sudo -u max whoami 
max 
[[email protected] max]# bjobs 
No unfinished job found 
[[email protected] max]# sudo -u max bjobs 
lsb_init: Failed in an LSF library call: Unable to open file lsf.conf 

Wie kann ich das korrigieren?

Antwort

3

Standardmäßig sucht LSF in/etc nach lsf.conf. Wenn es nicht dort ist, dann wird es in dem Verzeichnis in der env-Variablen LSF_ENVDIR suchen.

sudo setzt wahrscheinlich Ihre Umgebung zurück. Versuchen Sie sudo -i oder

Defaults !env_reset 

in Ihre sudoers-Datei setzen.

Sie auch so etwas wie dieses

sudo -u max LSF_ENVDIR=$LSF_ENVDIR LSF_SERVERDIR=$LSF_SERVERDIR bjobs 
+0

Vielen Dank, es funktioniert einwandfrei! Frohe Feiertage für Sie! – user1921895

+0

Das gab mir den Hinweis, den ich brauchte, danke. Ich habe nur meine LSF-bezogenen Umgebungsvariablen zurückgemeldet und sie dann im Skript exportieren lassen, bevor ich die Jobs anrief. –

0

Für alle Scripting um SSH, die beiden Variablen oben muss explizit festgelegt werden könnten versuchen, entweder auf der Kommandozeile, wie in:

ssh [email protected] 'export LSF_ENVDIR=/path/to/lsf/envdir; export LSF_SERVERDIR=/path/to/lsf/serverdir; bsub ...' 

oder in der Datei ~/.ssh/environment Datei (vorausgesetzt, dass sshd mit PermitUserEnvironment yes konfiguriert ist).