Arduino zum Laufen bringen

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

Hinweis: In dem Thema Arduino zum Laufen bringen gibt es 18 Antworten auf 2 Seiten. Der letzte Beitrag () befindet sich auf der letzten Seite.
  • Arduino zum Laufen bringen

    Da es nun doch etwas Speziell wird, habe ich gedacht, dass es besser ist, einen eigenen Fred dafür aufzumachen. Wie hier beschrieben habe ich die Arduino-IDE in der heruntergeladenen Version des Herstellers installiert. Da es, vermutlich wegen der Einstellung eines seriellen Ports, noch nicht funktioniert und einige Fragen auch zu Suse_linux gehören, versuche ich die Probleme erstmal hier zu klären:

    Ich habe ein erstes Programm ["Sketch"] für den Arduino geschrieben, konnte dieses aber nicht auf das Board hochladen. Dafür gibt es auf der Arduinoseite Lösungsvorschläge, die ich versucht habe umzusetzen. Dafür muss ich mich als User zu der erlaubten Benutzergruppe für den seriellen Port eintragen. In YaST gibt es dafür auch Einstellmöglichkeiten, die ich leider verwirrend finde. Daher ist mir die Konsole lieber, für die auch die Einträge genannt werden:

    Das Ganze soll als Superuser ausgeführt werden- das habe ich bisher immer mit dem speziellen "Terminal- Superuser Modus" bewerkstelligt. Dazu erstmal eine generelle Frage:

    Wenn ich mich in diesen Superuser Terminal mittels Passworteingabe erfolgreich eingeloggt habe, wie soll dann mit folgender Anweisung umgegangen werden?

    Quellcode

    1. sudo usermod -a -G dialout <username>

    Soll "sudo" mit in die Zeile oder nicht (da ich ja schon im "Superuser-Modus" bin)?

    Ich habe das jedenfalls in beiden Varianten probiert, mich nach Anleitung dann ausgeloggt ("logout") und dann wieder eingeloggt- aber es hat scheinbar nichts genutzt. Das Arduino-Board wird in der Systeminfo bei den USB-Geräten als solches erkannt. Aber das Hochladen klappt immer noch nicht.

    Vielleicht ist ja hier idealerweise auch ein Arduino-Bastler....
    Die IDE gibt aus:

    Quellcode

    1. [Jede Menge gelöscht, weil's nicht reinpasst- sollte Relevantes fehlen, liefere ich das andere Zeug nach!]
    2. avrdude: Version 6.3, compiled on Dec 16 2016 at 12:32:01
    3. Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
    4. Copyright (c) 2007-2014 Joerg Wunsch
    5. System wide configuration file is "/home/paul/eigene_progs/arduino/arduino-1.8.0/arduino-1.8.0/hardware/tools/avr/etc/avrdude.conf"
    6. User configuration file is "/home/paul/.avrduderc"
    7. User configuration file does not exist or is not a regular file, skipping
    8. Using Port : /dev/ttyACM0
    9. Using Programmer : arduino
    10. Overriding Baud Rate : 115200
    11. avrdude: ser_open(): can't open device "/dev/ttyACM0": Permission denied
    12. avrdude done. Thank you.
    13. Problem beim Hochladen auf das Board. Hilfestellung dazu unter http://www.arduino.cc/en/Guide/Troubleshooting#upload.
    Alles anzeigen

    Für den Inhalt des Beitrages 103287 haftet ausdrücklich der jeweilige Autor: Suse-Paul

  • Suse-Paul schrieb:

    Wenn ich mich in diesen Superuser Terminal mittels Passworteingabe erfolgreich eingeloggt habe, wie soll dann mit folgender Anweisung umgegangen werden

    Quellcode

    1. sudo usermod -a -G dialout <username>
    Soll "sudo" mit in die Zeile oder nicht (da ich ja schon im "Superuser-Modus" bin)?
    sudo kann weg. Wie du schon richtig erkannt hast bist du schon root
    There's no place like 127.0.0.1

    Für den Inhalt des Beitrages 103288 haftet ausdrücklich der jeweilige Autor: wurzel99

  • Du sollst bei openSUSE prinzipiell kein sudo verwenden.

    Bei openSUSE verwenden wir in einer Konsole schlicht:

    Shell-Script

    1. # einfach root werden mit
    2. su
    3. # das Spasswort blind tippen und Enter drücken.
    4. # Damit wird eine weitere Shell ( bash) geladen, die aber
    5. # als root läuft.
    6. exit
    7. # die Rootshell wird mit exit beendet.
    8. # oder mit <strg><d>, was in Linux EndOfData heißt.
    9. # Die Shell wartet ja auf deine Eingabe, kommen endgültig
    10. # keine Daten mehr, eben EOD, dann beendet sie sich.
    11. # Zwei gleichwertige Wege.
    12. # Wenn du nur einen Befehle als root ausführen willst:
    13. su -c irgendeinKommando
    14. # Oder ein paar Befehle
    15. su -c { kommando1; kommando2
    16. kommando3
    17. kommando4
    18. }
    19. # Geschweifte Klammern sind ein Block von Anweisungen in der bash
    20. # su == Substitute User (Prozesskontext)
    21. # damit kann man auch zu einem anderen User werden.
    22. su -l andererLooser
    23. # -l meint "Loginshell". Damit werden ein paar mehr "Dotfiles"
    24. # abgearbeitet und alle Environmentvariablen neu nach den Vorgaben
    25. # in $HOME/.bashrc und $HOME/.profile gesetzt.
    26. # natürlich werden auch die ganzen systemweiten Dotfiles
    27. # abgearbeteitet. Es gibt davon ziemlich viele,
    28. # oder halt auch nicht.
    29. # DO NOT USE SUDO!!!!
    Alles anzeigen
    sudo ist SubstituteUserAndDO
    Dieser Befehl setzt einen korrekten Eintrag in der sudoers Datei voraus.
    Dieser Mechanismus dient dazu Leuten, die keinerlei Root- Rechte haben sollen, dennoch bestimmte und genau definierte Befehle als root ausführen zu lassen.

    Diese Verwirrung wurde durch *buntu erzeugt, weil dort der root Account per default disabled ist.
    Man kann also nicht einfach root werden.
    Deshalb machen die alles mit sudo, mit einer speziell dafür verhunzten sudoers.

    NO NOT USE SUDO with openSUSE!!!!
    Sokrates sagte, dass er nichts wisse.
    Ich bin viel, viel klüger als Sokrates.
    Ich weiß ganz genau, dass ich gar nichts weiß.

    Für den Inhalt des Beitrages 103292 haftet ausdrücklich der jeweilige Autor: Berichtigung

  • Berichtigung schrieb:

    sudo ist SubstituteUserAndDO
    Und ich dachte immer, das hieße Superuser Do.... In der Tat kenne ich das auch aus dem *buntu-Bereich, als das mal an einem Linux-Installations-Tag an der Uni vorgestellt wurde. Da sollte Ubuntu installiert werden, was bei meinem HP 625 Noztebook nicht wollte- da dort von Anfang an ein Novell Suse Linux Enterprise 11 drauf war, ahbe ich gedacht: versuch es doch mal mit openSUSE- und siehe da...


    Berichtigung schrieb:

    # einfach root werden mit
    su
    # das Spasswort blind tippen und Enter drücken.
    OK; das gilt jetzt für jede beliebige Konsole, außer dem speziellen "Terminal- Superuser Modus", oder? Denn diese Spezial-Konsole fordert ja initial eine Passworteingabe mit anschleißendem Superuser [Root]- Status.


    Berichtigung schrieb:

    # Damit wird eine weitere Shell ( bash) geladen, die aber
    # als root läuft.
    Wäre das dann dieser erwähnte "Terminal- Superuser Modus"?

    sudo mach also nur Sinn, wenn ich als Admin Usern weitergehende Rechte einräumen will, aber keine Root- Rechte, richtig?


    Sauerland schrieb:

    Und nach hinzufügen des Users zu ein Gruppe müssen wir uns immer ab- und danach neu anmelden....
    Habe ich auch gemacht. Gewundert habe ich mich, dass ich so wenig von der Konsole zurückbekommen habe.

    Für den Inhalt des Beitrages 103297 haftet ausdrücklich der jeweilige Autor: Suse-Paul

  • Suse-Paul schrieb:

    OK; das gilt jetzt für jede beliebige Konsole, außer dem speziellen "Terminal- Superuser Modus", oder? Denn diese Spezial-Konsole fordert ja initial eine Passworteingabe mit anschleißendem Superuser [Root]- Status.
    Also nochmal ..

    Wenn du eine Konsole im 'Superuser-Modus' startest - dann musst du sofort das root-passwort eingeben. Und du bist und bleibst root.
    wenn du irgendeine andere Konsole nimmst bist du dort der User, der sich angemeldet hat bzw der, der die Konsole gestartet hat.
    Dann kannst du jederzeit mit 'su' zum root werden und musst dann natürlich das root-passwort eingeben.
    There's no place like 127.0.0.1

    Für den Inhalt des Beitrages 103298 haftet ausdrücklich der jeweilige Autor: wurzel99

  • Es ist völlig egal, welches Terminal man nimmt.
    Die Chause bleibt die gleiche:

    Bin ich normaler User und öffne ein Terminal, dann bin ich dort auch normaler User.
    Mit su werde ich dann root.

    Oder ich nehme eine der vielen anderen Wege, das zu erreichen.

    Die hübschen Bezeichnungen, wie "Superuser Terminal ganz bunt und lustig" sind eben nur das: hübsche Bezeichnungen
    Passieren tut jedoch letztlich das Gleiche: Man startet eine Shell (bei uns die bash) und wird/ist dort root.

    Ob das nun vorher mittels eines anderen Aufrufs des KDE- Programmes konsole passiert, was letztlich nur einer Definition im Profil entspricht, oder sonstwie erreicht wird, ist völlig belanglos.
    Wenn man sich anguckt, was der Menueintrag "Terminal - Superuser Modus" letztlich startet, sieht man dass das Programm ledilgich mit einem anderen Profil aufgerufen wird: konsole --profile "Root Shell"
    Rufe ich ein "normales Terminal" auf in KDE, dann rufe ich einfach nur das KDE-Programm konsole auf und damit implizit das Standardprofil. Und dieses Profil ist halt einfach der normal angemeldete User.

    Beide Varianten rufen letztlich nur ein einziges minikleines Oberflächenprogramm namens "konsole", das letztlich wiederrum nur dazu dient, um ein hübsches Fenster um das Programm herum zu malen, das eigentlich darin läuft. Es läuft nämlich immer nur ein xterm, also quasi ein gefenstertes Terminal. Und ein Terminal lädt nun mal eine interaktive Instanz einer Shell. Das sehen wir dann nachtschwarz in aller Pracht.
    (Falls wir nicht auf knallbunt umgestellt haben)

    KDE kennt noch den in den Desktop integrierten Anwendungsstarter. Das ist das kleine Fenster, das mit <alt><f2> aufgeht.
    Auch damit kann man ein Terminal starten.
    Einfach die Kombi eingeben und wahlweise konsole oder konsole --profile "Root Shell" eingeben.

    Es geht aber noch anders. Sowohl Gnome, wie KDE bringen selbst auch wieder so einen Starter mit, mit dem man Programme direkt als root laufen lassen kann. kdesu und gksu. Der Name zeigt uns schon, was da passieren wird.
    Einfach mal mit <alt><f2> den Starter öffnen und diesmal mit kdesu konsole aufrufen. Das sieht dann ziemlich genau nach ganz dem Gleichen aus, als hätte man beim Aufruf das Superuser Profil von "konsole" gewählt.
    Isses abba nich. Man sieht das, wenn man das Profil des Superusers drastisch ändert und es nochmal probiert.
    Beide Varianten.

    Analog geht das alles natürlich auch mit Gnome.
    Dort heißt es halt gksu

    Und, was auch installiert ist, ist xdg-su. Noch so ein Starter, der wie alle anderen auch, entweder ein Programm als root startet, oder eben als anderen dabei mit anzugebenden User. Das ist die älteste Variante und noch ein reines echtes uraltes X-Programm.
    (Man probiere in einer Konsole einfach mal x<tab><tab> und wundere sich, wieviele solcher X-Programme von Haus mit an Bord sind. Und natürlich gibbet noch zum Nachinstallieren ohne Ende)

    Egal, welches DE man hat, es gibt immer einige solcher Fensterprogramme, die letztlich nur dazu dienen ein Terminal gefenstert laufen zu lassen. Und in all diesen Fenstern läuft immer nur ein Programm. Das berühmt berüchtigte xterm. Natürlich ist das auch installiert. Man starte es einfach mal. Egal, ob über Starter, oder aus einer Konsole.
    Es geht ein hübsch dekoriertes modernes Fenster auf, mit einem uralten Terminal, das in viel zu kleiner Schrift wieder nur eine Bash am Laufen hat.
    Das ist der Entwicklung geschuldet. In Zeiten von 640x480 Auflösungen konnte man das gut lesen.
    Man kann es natürlich auch heute noch sauber einstellen. Einfach mal nach xterm googeln. Und es wird ja von den "Fensterrahmenprogrammen" so eingestellt, dass man damit bequem arbeiten kann. Es läuft unter DEs nahezu immer ein xterm.

    Es ist also wirklich völlig egal, wie man root wird, also den SubstituteUserkontext ereicht.

    Und es ist ebenso völlig richtig, dass ich mit sudo sehr fein einstellen kann, was welcher User darf. Und natürlich kann ich auch dem User A erlauben den Befehl Halligalli als User B aufzurufen.
    Wenn ich das korrekt in die sudoers eingetragen habe.man sudoers
    Sokrates sagte, dass er nichts wisse.
    Ich bin viel, viel klüger als Sokrates.
    Ich weiß ganz genau, dass ich gar nichts weiß.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Berichtigung ()

    Für den Inhalt des Beitrages 103299 haftet ausdrücklich der jeweilige Autor: Berichtigung

  • Schöne Übersicht über diese ganzen Konsolen-Terminal-Dinger; das beantwortet Fragen, die ebenfalls schon lange in meiner Fragen-Pipeline waren.

    Nachdem ich mal ein bisschen in die Original-Docs geschnuppert habe, konkret jetzt hier, muss ich noch mal auf das su / sudo - Thema zurückkommen:


    Im Doc-Abschnitt über Zypper (ziemlich oben auf der verlinkten Seite), wird immer sudo benutzt. Hat das einen bestimmten Grund? Offenbar lassen sich, zumindest einige Zypperbefehle, auch mit reduzierten Rechten ausführen. Für mich hat das jetzt keine praktische Relevanz, da ich mein Notebook eh allein benutze- und ich, wenn weitergehende Einstellungen vorzunehmen sind, auch direkt als Superuser aktiv werden kann. Aber interessant wär's schon mal zu wissen.

    Für den Inhalt des Beitrages 103304 haftet ausdrücklich der jeweilige Autor: Suse-Paul

  • Suse-Paul schrieb:

    Im Doc-Abschnitt über Zypper (ziemlich oben auf der verlinkten Seite), wird immer sudo benutzt. Hat das einen bestimmten Grund?
    nein - hat keinen. Höchstens die ganz pragmatischen Gedanken:
    .- ich signalisiere dem Ubuntu-geprägten Leser dass hier was als root passiert.
    - klappt auch wenn ich aus Versehen in der user-Konsole bin
    There's no place like 127.0.0.1

    Für den Inhalt des Beitrages 103305 haftet ausdrücklich der jeweilige Autor: wurzel99

  • Es sind -gottverdammtnochmal- keine anderen Rechte.

    Ein su -c blablubb tut exakt das Gleiche mit exakt den gleichen Rechten, wie ein sudo blablubb
    Nur dass das Environment leicht anders ist.

    VERGISS ENDLICH sudo unter openSUSE.
    Du wirst einfach IMMER und ÜBERALL die su Varianten nehmen.
    Jedenfalls bis dir der Unterschied selbst klar ist.
    Dann wirst du unter openSUSE aber auch für root Arbeiten gar nicht mal mehr wollen.
    Du hast es vergessen.
    Bis du viele Maschinen verwalten wirst, auf der sich mehr als drei User tummeln.
    Sokrates sagte, dass er nichts wisse.
    Ich bin viel, viel klüger als Sokrates.
    Ich weiß ganz genau, dass ich gar nichts weiß.

    Für den Inhalt des Beitrages 103308 haftet ausdrücklich der jeweilige Autor: Berichtigung

www.cyberport.de