• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

sudo: Cannot connect to X server

Hallo,
habe versucht mein moneyplex ( bankprogramm ) mittels sudo als User zu starten,
da ich nicht als root damit ins Internet will. Soweit so gut, aber wenn ich dann eingebe
sudo ./start, bekomme ich die Meldung:

Cannot connect to X Server

Was mache ich da falsch ?


mfg.
Freddy
 
Das muss keine root-Rechte haben. moneyplex läuft 100% auch ohne 'sudo'. Wenn nicht, dann hast du ein anderes Problem.
Was passiert, wenn du moneyplex über die Kommanozeile aufrufst?
 
Dann passiert leider folgendes :

freddy@linux-ej41:~/moneyplex> ./start
./start: line 26: /home/freddy/moneyplex/prestart: Keine Berechtigung
/home/freddy/moneyplex/moneyplex: symbol lookup error: /home/freddy/moneyplex/moneyplex: undefined symbol: initPAnsiStrings
freddy@linux-ej41:~/moneyplex>


mfg.
Freddy
 
Hm, ich bin mir nicht ganz sicher, aber überprüfe mal, ob Dein Moneyplex zu der Distribution / Version paßt.

Welche Distri nutzt Du denn in welcher Version?
Woher hast Du Moneyplex? Hast Du es selber kompiliert?
 
Ich habe mal nachgeschaut. Moneyplex unterstützt Suse (sofern Du Suse hast) bis 10.0. Von daher könnte es sein, daß es mit 10.1 schon nicht mehr läuft.
 
Ne, ich habe Moneyplex legal bei Matrica gekauft.
Es funktioniert ja auch als Root wunderbar. Nur wenn ich als user freddy
den Aufruf starte, dann muckelt es eben mit mir :-(

Mein Wunsch ist es eben es irgendwie hinzubekommen eine Shell zu öffnen,
cd moneyplex einzugeben, und dann einfach moneyplex mit ./ start zu starten.
Aber dann bekomme ich immer diese komische Fehlermeldung mit dem X Server

Gruss
Freddy
 
Das sind Variablen. Du musst schauen, welcher Wert da drin steht.
Ich bin aber leider überhaupt kein Programmierer, der dir da helfen könnte.
 
Ist zwar nur ein Schuss ins Blaue, aber kann es sein, dass du das Programm als root in das Home-Verzeichnis von freddy installiert/kopiert hast, so dass dabei irgendwelche Dateien mit den falschen Zugriffsrechten angelegt wurden? Vielleicht kannst du dann diese Installation einfach stattdessen als freddy durchführen.
 
sc_m schrieb:
Ist zwar nur ein Schuss ins Blaue, aber kann es sein, dass du das Programm als root in das Home-Verzeichnis von freddy installiert/kopiert hast, so dass dabei irgendwelche Dateien mit den falschen Zugriffsrechten angelegt wurden? Vielleicht kannst du dann diese Installation einfach stattdessen als freddy durchführen.

Ja, das kann wohl sein. Daher dachte ich ja auch, ich könnte dies wieder gerade biegen wenn ich rekursiv mit chmod -R 755 moneyplex den ganzen Ordner auch für andere freigebe. Aber es funzt nicht :-(

Und wenn ich jetzt die Installation als freddy neu mache, habe ich Bedenken das meine Daten futsch sind .....


mfg.
Freddy
 
Code:
home/freddy/moneyplex/moneyplex: symbol lookup error: /home/freddy/moneyplex/moneyplex: undefined symbol: initPAnsiStrings

dem fehlt eine library im PATH.

probiere mal
Code:
export LD_LIBRARY_PATH=<pfad-wo-moneypley-shared-libs-stehen>:$LD_LIBRARY_PATH

dann ./start
 
Folgendes fällt mir noch auf:
freddyscharbert schrieb:
[...]mittels sudo als User zu starten,
da ich nicht als root damit ins Internet will.
Wenn du das Programm per sudo startest, dann läuft es anschließend mit root-Rechten. Das ist im Effekt also dasselbe, als wenn du es direkt als Benutzer root startest, allein ein paar Umgebungsvariablen werden dabei nicht auf die Login-Einstellungen von root gesetzt, einen Sicherheitsgewinn bedeutet das nicht.

Dass mit sudo nicht auf die X11-session eines Benutzers zugegriffen werden kann, ist ebenfalls normal. Wenn ein Benutzer den Bildschirm eines anderen benutzen möchte, dann braucht er dazu dessen Erlaubnis. (Wobei root sich die allerdings auch einfach selbst holen kann.) Dafür gibt es xauth, eine kurze Anleitung findest du hier: http://www.theparallax.org/dcoul/user2root/xhost.shtml
 
oc2pus schrieb:
Code:
home/freddy/moneyplex/moneyplex: symbol lookup error: /home/freddy/moneyplex/moneyplex: undefined symbol: initPAnsiStrings

dem fehlt eine library im PATH.

probiere mal
Code:
export LD_LIBRARY_PATH=<pfad-wo-moneypley-shared-libs-stehen>:$LD_LIBRARY_PATH

dann ./start

Das habe ich leider nicht genau verstanden :-(
Asche auf mein Haupt. Im Verzeichnis moneyplex gibt es nur einen Ordner ctapi,
da sind die libs für die chipkartenleser drin. Meinst Du diesen ?
Leider habe ich den von Dir gewünschten Befehl noch niemals benutzt bis Dato...
Sorry dafür.....

Aber allzu lang mache ich SUSE noch nicht....

mfg.
Freddy
 
shared-libraries sind das, was man in der Windows-Welt DLLs nennt.

und normalerweise stehen diese in /usr/lib, /opt/kde3/lib, /opt/gnome/lib, /usr/local/lib....

damit Programme diese Bibliotheken finden können wenn sie nicht in den "Standard-Pfaden" stehen, muss man sie dem Programm mit der Umgebungsvariable LD_LIBRARY_PATH mitteilen. Nichts anderes macht der export LD_LIBRARY_PATH Befehl.

Oder du startest das Programm aus dem Verzeichnis wo die Bibliotheken stehen, dann würden sie auch gefunden.

Da das Programm als root funktioniert, solltest du dennoch die Besitzrechte der Dateien mal überprüfen!
 
Oben