Hallo ich blick gleich nicht mehr durch :-(( bis jetzt habe ich meine Python-Programme für den beaglebone immer per SSH-Zugriff geschrieben und gestartet. Das läuft immer einwandfrei. Jetzt wollte ich eines dieser Programme mal über das GUI bzw. eines der Konsolen XTerm starten => Files nicht vorhanden :-( Die Programme sind gemäss SSH vom eclipse alle auf Beaglebone black - Sftp files - My Home wo finde ich diesen Ort per GUI bzw. auf Debian?... und wenn ich die Files per Eclipse/SSH auf einen Ort kopiere wo ich Sie finde, dann funktioniert das Programm nicht wie es sollte, bzw. bleibt irgendwo hängen....wieso das..
:
Verschoben durch User
Bist du sicher, dass du das Home-Verzeichnis vom richtigen Benutzerkonto genutzt hast? Möglicherweise hast du über ssh/sftp die Dateien in ein Home-Verzeichnis von einem anderen Benutzerkonto gespeichert, als das, mit dem du dich später am beagelbone angemeldet hast. Das die Programme nicht starten hat höchstwahrscheinlich auch damit zu tun. Möglicherweise lassen die Benutzerrechte einige Datei-oder Hardware Zugriffe nicht zu. Versuche mal die Python-Programme mit root Rechten auszuführen.
Simeon O. schrieb: > Bist du sicher, dass du das Home-Verzeichnis vom richtigen Benutzerkonto > genutzt hast? ich habe gar nie irgendwelche Benutzerkonto errichtet? Ich logge mich auch nicht mit irgendeinem speziellen Konto ein, auch nicht bei der GUI... verstehe es nicht :-( (zudem habe ich per GUI gar kein Zugriff auf den root-Ordner...) beim ssh, immer mit root passwort rein, und per vi xy.py die scripts erstellt und gestartet ... Simeon O. schrieb: > Versuche mal die Python-Programme mit root Rechten auszuführen. d.h: z.b sudo execfile("programm.py") ?
Nachtrag, das ist mein Code, ich habe alle Files auf dem Desktop kopiert, und versuche per doppelmausklick, execute zu starten, nichts geht :-((((, keine Meldung nichts! per SSH no problem!!: #!/usr/bin/env python import Adafruit_BBIO.GPIO as GPIO import time import subprocess GPIO.setup("P9_14", GPIO.IN) GPIO.setup("P9_12", GPIO.OUT) GPIO.add_event_detect("P9_14", GPIO.FALLING) while 1: if GPIO.event_detected("P9_14"): subprocess.call(['./touch.txt']) else: time.sleep(0.1) subprocess.call(['./xdomouseup.txt'])
Genau das ist dein Problem. Du gehst mit root über ssh rein. Ich kann mir kaum vorstellen dass die Desktop-Oberfläche mit root- Rechten gestartet wird. Es muss noch einen anderen Benutzer geben. Versuche doch mal: sudo python Pfad_zum_Programm.py
> Versuche doch mal: > sudo python Pfad_zum_Programm.py ich finde per Terminal den Pfad zum Desktop nicht, wo ich die Files abgelegt hätte... Kann man auch per Doppelklick Execute irgendwie im Root-Modus das ganze starten?
Es ist schwer über das Forum grundlegende Linux-Kenntnisse zu vermitteln. Zudem reagieren nicht alle Benutzer hier im Forum so geduldig wie ich. Deshalb rate ich dir, dass du dir ein Tutorial anschaust oder Bekannte fragst. Auf die schnelle habe ich das gefunden. https://www.howtoforge.de/anleitung/erste-schritte-der-bedienung-von-linux-per-terminal/ Wahrscheinlich kennt jemand bessere. Edit: Die Seite wird dir wohl doch nicht viel bringen. Waren halt die ersten google- Ergebnisse Es ist allerdings sehr schwierig im Forum jemandem beim suchen von Dateien im Terminal zu helfen, wenn er sich nicht sicher auskennt.
Simeon O. schrieb: > Es ist schwer über das Forum grundlegende Linux-Kenntnisse zu > vermitteln. DEN EINEN Grundsatz aber schon. Es wird niemals irgendwas "Nuetzliches" unter root gemacht, root ist nur zur Systemverwaltung da. (OK, vielleicht 1-mal zum Testen) qwssxdecf
GPIO Zeug braucht in der Default Einstellung 'root' Rechte, der Rest des Programms nicht. Also entweder das Py-Programm als 'root' laufen lassen (NoNo) oder die entsprechenden Rechteanpassungen durchführen. Alles ist dokumentiert...
Oder wie hier beschrieben: http://www.raspberry-pi-geek.de/Magazin/2013/05/Tricks-zum-Programmieren-der-GPIO-Schnittstelle qwssxdecf
vielen Dank noch, also zusammengefasst: Files auf Desktop kopiert Directory gewechselt zu Desktop mit "cd Desktop" und Programm gestartet mit "sudo ./programm.py" funktioniert :-) Danke für die Hilfe!
epikao schrieb: > Directory gewechselt zu Desktop mit "cd Desktop" und Programm gestartet > mit "sudo ./programm.py" funktioniert :-) Danke für die Hilfe! Das ist aber nicht die Lösung, sondern nur der Work-Around für ein noch nicht korrekt konfiguriertes System! Auch solltest du in Zukunft nicht als Root auf dem System arbeiten.
Hallo epikao. epikao schrieb: > vielen Dank noch, > also zusammengefasst: > Files auf Desktop kopiert > Directory gewechselt zu Desktop mit "cd Desktop" und Programm gestartet > mit "sudo ./programm.py" funktioniert :-) Danke für die Hilfe! Das ist aber erst die Hälfte der Problemlösung. 1) Du weist jetzt, dass Du als User NICHT root bist. 2a) Du weisst, das Dein Skript wo liegt, wo Du nur als root herankommst, und 2b) Du brauchst auch root Rechte zum starten. DU SOLLTEST AUF KEINEN FALL IRGENDETWAS AUSSER VERWALTUNGSTÄTIGKEIT ALS ROOT ODER MIT ROOTRECHTEN MACHEN. Der Test mit sudo (Du arbeitest als "Superuser" (das ist rootähnlich)) dient nur dazu, um das abzuklären. Weiteres vorgehen: 1) Krieg raus, wer Du bist als User. 2) Verschiebe (dazu ist root nötig) das Skript in das home Verzeicnis des Users, der Du bist. 3) Teile als Root Dir als User die schreib, lese und Ausführungsrechte an dem Skript zu. 4) MELDE DICH ALS ROOT AB! 5) Jetzt sollte das Skript auch von Dir als User an bekanntem zugänglichen Platz gefunden und benutzt werden können. Viel Glück. Mit freundlichem Gruß: Bernd Wiebus alias dl1eic http://www.l02.de
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.