Emulation der Raspbian SD Karte auf PC ... ich habe wirklich danach gesucht

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Also ich habe jetzt schon lange gesucht und Einiges probiert ... bin aber noch nicht fündig geworden.

    Die Problemstellung scheint einfach zu sein.

    Es gibt eine auf dem Raspi lauffähige µSD-Karte.

    Ich will genau diese Karte in meinen PC stecken und mittels Emulator von dieser µSD Karte booten.

    Und nein, ich will kein Image erstellen und von diesem Image booten, weil das zurückschreiben von geänderten Images einfach viel zu lange dauert.

    Also die Idee ist irgendwas (z. B. Konfiguration) in einem Textfile mittels Emulator am PC auf der Raspbian Partition ändern (schreiben), die Karte aus dem PC nehmen und in den Raspi stecken.

    Ist das wirklich zuviel verlangt oder stehe ich einfach massiv auf der Leitung.

    Die bislang beste Lösung ist der Zugriff auf die SD Karte mittels Linux File Systems for Windows by Paragon Software. Damit kann ich zumindest direkt über einen Windows LW-Buchstaben auf die Raspbian Partition schreibend zugreifen. Ist allerdings nur der halbe Spaß, wenn man z. B. Python Programme testen mag.

    Irgendwelche Ideen dazu?

  • Emulation der Raspbian SD Karte auf PC ... ich habe wirklich danach gesucht? Schau mal ob du hier fündig wirst!

  • Hey hela und willkommen im Forum

    Hab mal etwas gesucht und folgendes gefunden:

    Virtual machine from SD-Card da wurde das Tool qemu genannt welches anscheinend deine gesuchten Fähigkeiten besitzt. Leider ist der Beitrag bereits 3 Jahre alt, ob das noch so funktioniert kann ich dir also auch nicht genau sagen aber immerhin schon mal ein Anhaltspunkt.

    Hab mir nicht alle Suchergebnisse angeschaut aber evt findest du da ja noch was.

    Grüsse Apop

    Ich suche nicht nach einer fertigen Lösung sondern nach dem Weg dahin ;)

    • Offizieller Beitrag

    z. B. PuTTY gemeint ist, ist das auch nicht komfortabel.

    Aber den Pi runterfahren, Karte raus, in den PC, emu starten, Datei verändern, speichern, emu runterfahren, karte entfernen, in den Pi, Pi starten ist komfortabler, na Halleluja ;). Nimm nen Editor der SFTP kann, wie sublime oder notepad++ , wenn es dir bloss ums bequeme bearbeiten von Dateien am PC geht.

  • Wenn der SSH Zugriff mit z. B. PuTTY gemeint ist, ist das auch nicht komfortabel.

    Kannst du mir bitte erklären was daran unkonfortabel ist.

    Ich denke mal es läuft sich darauf heraus, dass du noch nicht so vertraut bist mit Linux und einem Terminal und die dazu benötigten Kommandos?

  • Das Betriebssystem auf der SD Karte ist für eine ganz bestimmte CPU-Architektur: ARM

    Dein PC wird aber höchst Wahrscheinlich eine andere CPU-Architektur besitzen: x86

    Nicht kompatibel.

    Man benötigt dann also einen Übersetzer damit der x86 CPU auch etwas mit dem speziellen ARM Code anfangen kann => Emulator.

    Einfach so die SD Karte in deinen PC stecken und davon booten geht also bereits aus diesem Grund nicht. Ein weiterer wäre die spezielle Partitionierung der SD Karte und den speziellen Startvorgang des Pi's da dieser kein BIOS besitzt.

    Wie dbv schon sagte ist der von Dir gewollte Weg weitaus umständlicher wenn du denn aber nur eine Datei verändern möchtest.

    Insbesondere dein letzter Satz bzgl. Python Programme testen solltest Du dich mal fragen wie es denn die anderen seit nunmehr 6 Jahren schaffen ;)

  • Also die Idee ist irgendwas (z. B. Konfiguration) in einem Textfile mittels Emulator am PC auf der Raspbian Partition ändern (schreiben), die Karte aus dem PC nehmen und in den Raspi stecken.

    Musst du dazu das System extra booten? Es würde für diesen Anwendungsfall ein einfaches Mounten der SD-Karte auf dem PC reichen. Oder hast du noch speziellere Sachen damit vor?

    EDIT: ach so, sorry, hattest du oben ja schon geschrieben. Hat sich damit erledigt.

  • Hey hela und willkommen im Forum

    Hab mal etwas gesucht und folgendes gefunden:

    Virtual machine from SD-Card da wurde das Tool qemu genannt welches anscheinend deine gesuchten Fähigkeiten besitzt. Leider ist der Beitrag bereits 3 Jahre alt, ob das noch so funktioniert kann ich dir also auch nicht genau sagen aber immerhin schon mal ein Anhaltspunkt.

    Hab mir nicht alle Suchergebnisse angeschaut aber evt findest du da ja noch was.

    Grüsse Apop

    Hallo Apop,

    bei Qemu war ich auch schon. Der Link

    bootet aber von einem Image :(

  • Aber den Pi runterfahren, Karte raus, in den PC, emu starten, Datei verändern, speichern, emu runterfahren, karte entfernen, in den Pi, Pi starten ist komfortabler, na Halleluja ;). Nimm nen Editor der SFTP kann, wie sublime oder notepad++ , wenn es dir bloss ums bequeme bearbeiten von Dateien am PC geht.

    Hallo dbv, so wie du das darstellst klingt es ja echt kompliziert ;)

    Spaß beiseite, es geht ja auch darum den Raspi zu emulieren, damit ich die Hardware nicht immer dazu brauche (z. B. zum Testen von Python Programmen, Autostarts u. dgl.) . Und das ist ja beim SFTP Zugriff vorausgesetzt.

    Wenn der Raspi angeschlossen wäre, finde ich persönlich ja den Teamviewer sehr praktisch.

  • Kannst du mir bitte erklären was daran unkonfortabel ist.

    Ich denke mal es läuft sich darauf heraus, dass du noch nicht so vertraut bist mit Linux und einem Terminal und die dazu benötigten Kommandos?

    Das kann ich gerne erklären.

    Es beginnt schon mal damit, das SSH nicht per se aktiviert ist. Das kann ich headless wohl durch einfügen einer ssh Datei im boot-Verzeichnis von Raspbian erreichen. Oder wenn ich die (neuen) WLAN-Zugangdaten eingeben will. Aber dazu brauche ich Zugriff auf die Ext4 Partition auf der SD, den ich nicht ohne weiters unter WIndows habe. Da wäre es doch jetzt echt praktisch das System am PC von einer gklonten SD zu starten ... oder etwa nicht?

    Und auch hier geht es ja wieder darum, dass ich die Raspi Hardware brauche. Wie bereits erwähnt, wenn ich die Hardware mit Netzwerkzugriff neben mir liegen habe/hätte kann ich gleich mit Teamviewer arbeiten.

  • Wenn der Raspi angeschlossen wäre, finde ich persönlich ja den Teamviewer sehr praktisch.

    Du magst Umwege, oder? Falls es grafisch sein darf, ist der vorinstallierte/konfigurierte VNCConnect doch mehr als geeignet. Sonst ssh und alles Andere, was hier schon an *tatsächlich* einfachen Dingen genannt wurde. Aber "jedem Tierchen sein Plaisierchen", wie meine Großeltern zu sagen pflegten. Grüße, STF

  • Dass ich die Karte nicht einfach vom PC aus booten kann, war mir schon klar ... ich habe im Eingangsthread ja bereits von einem Emulator gesprochen.

    Würde eEine spezielle Formatierung der SD diese nicht für den Raspi unbrauchbar machen?

    Das mit "nur eine Datei verändern" war auch nur als Beispiel gedacht. Mir geht es darum an meinem gewohnten Arbeitsplatz (geographisch, software- und hardwaremäßig) mit Raspbian zu arbeiten OHNE, dass ich den Raspi brauche.

    Also gut, dann frage ich. wie schaffen es die anderen seit 6 Jahren Python Programme zu testen?

    • Offizieller Beitrag

    einer gklonten SD zu starten ... oder etwa nicht?

    Ein ganz klares nicht. Der Pi wird aufgesetzt, Netzwerk eingerichtet und gut. Er läuft dann. Dann schreibt man seine Programme am PC und kopiert/speichert sie auf den Pi. Gestartet werden sie per ssh/bash.

    Mir geht es darum an meinem gewohnten Arbeitsplatz (geographisch, software- und hardwaremäßig) mit Raspbian zu arbeiten OHNE, dass ich den Raspi brauche.

    Was willst du denn da so machen? Ohne raspi? kannst du so gut programmieren, dass du die Scripte runterschreiben kannst, ohne zwischendurch mal test laufen zu lassen? Wenn ja, brauchst du nur nen texteditor. Meigrafd hat auch ne FAKE GPIO Bibliothek gebaut, die kannst du dir unter Windows einbinden und so auch ausgaben der GPIO "simulieren". Dein Weg ist nonsens ;)

  • Wie wäre es, wenn du einfach einen Python-Interpreter auf deinem PC installierst? Die Hardware hast du so oder so nicht - also Zugriff auf GPIOs oder sowas. Und falls du sogar das haben willst, gibt es meines Wissens GPIO-Emulatoren - Libraries, die GPIO-Zustände simulieren (-> GPIO Emulator). (Ah, dbv hat eben auch sowas erwähnt.)

    Oh, man kann hier unliebsame Nutzer blockieren. Wie praktisch!

  • Du magst Umwege, oder? Falls es grafisch sein darf, ist der vorinstallierte/konfigurierte VNCConnect doch mehr als geeignet. Sonst ssh und alles Andere, was hier schon an *tatsächlich* einfachen Dingen genannt wurde. Aber "jedem Tierchen sein Plaisierchen", wie meine Großeltern zu sagen pflegten. Grüße, STF

    Ich hatte in den Anfängen der Fernwartung mit VNC gearbeitet. Damals hat sich aber herausgestellt, dass Teamviewer die bessere Performance hatte. Ich mag am Teamviewer, dass ich in der Administrationskonsole alle meine Geräte sehe und anwählen kann (Mac, PC und Raspi).

    Beim vorliegende Projekt handelt es sich um eine (Art) Kiosk-Lösung. Die Bilder und Videos laufen auf einer Wordpressinstallation und werden vom Raspi lediglich angezeigt. Dazu startet Chromium im Kiosk-Mode, Mauszeiger und Bildschirmschoner werde abgeschaltet.

    So und jetzt kommt's: siehe https://eltechs.com/3-ways-to-run-…n-raspberry-pi/

    "VNC is simple if your PC and Raspberry Pi are located on the same local network. But if you want to connect from office to your home RPi you’ll have to do some pretty some tricky configurations to set up port forwarding on your home router."

    Und wenn ich das lese, wissend, dass ich die Raspis übers Internet fernwarten können muss (z. B. weil sich die URL für Chromium ändert), dann frage ich mich schon, warum ich nicht bei meiner gewohnten, funktionierenden Teamviewer-Lösung bleiben sollte.

    Aber im Grunde genommen geht es doch darum, dass ich Raspbian direkt von der Raspi SD in einem Emulator starten mag - ohne die Raspi-HW. Ich verstehe nicht, warum man mir das ausreden möchte.

  • Ich hab den Eindruck, dass du selbst nicht weißt, was du willst. Erst willst du eine SD-Karte aus dem Pi ziehen und in den PC stecken. Und jetzt plötzlich übers Internet fernwarten. Erst willst du Python-Programme und Config-Files editieren und jetzt läuft plötzlich Chrome im Kiosk-Mode... Erst geht es um Textdateien, dann plötzlich um Teamviewer und VNC.

    Es ist müßig, sich über unklare Anforderungen den Kopf zu zerbrechen.

    Wenn du deine Lösung hast, dann benutze sie doch einfach. Nimm deinen Teamviewer, wenn du den gut findest. Und wenn du übers Internet Probleme hast, dann richte dir halt ein VPN ein, dann bist du im virtuellen lokalen Netz. Wenn du einen Emulator willst, dann benutze ihn doch. Und wenns keinen gibt, der den Pi direkt von der Karte bootet, wirst du damit leben müssen. Ansonsten könntest du dir auch einen zweiten Pi für zuhause kaufen - dann erledigt sich die Diskussion auf dem für mein Empfinden einfachsten und praktikabelsten Weg.

    Oh, man kann hier unliebsame Nutzer blockieren. Wie praktisch!

    Einmal editiert, zuletzt von Gnom (20. März 2018 um 10:25)

  • Schon mal versucht nur einen Beitrag zum Antworten zu nutzen? :-/

    Es beginnt schon mal damit, das SSH nicht per se aktiviert ist. Das kann ich headless wohl durch einfügen einer ssh Datei im boot-Verzeichnis von Raspbian erreichen. Oder wenn ich die (neuen) WLAN-Zugangdaten eingeben will. Aber dazu brauche ich Zugriff auf die Ext4 Partition auf der SD, den ich nicht ohne weiters unter WIndows habe. Da wäre es doch jetzt echt praktisch das System am PC von einer gklonten SD zu starten ... oder etwa nicht?

    Nein. Die WLAN-Zugangsdaten lassen sich ebenso wie SSH-Aktivieren über eine Standardisierte Datei /boot/wpa_supplicant.conf einbinden und /boot/ ist die einzige Partition die Windows ohne Hilfsmittel ansprechen kann da FAT32.


    Was ist Raspbian? Ein speziell für den Pi angepasstes Debian.

    Wie sieht die spezielle Anpassung aus? Prozessor-Architektur ARM, bestimmte Pi-Scripts und Pakete vorinstalliert, Pi-Partitionslayout.

    Es spricht also erst mal nichts dagegen einfach ein anderes Linux basierend auf Debian zu verwenden. Viele Programme sind Systemübergreifend, zB. Python gibt es nicht nur auf dem Pi.

    Angenommen du bist unterwegs und schreibst ein Python Script. Dieses Script möchtest du dann testen... Entweder nutzt es keine Pi-spezifische-Hardware, dann kannst du es auf jedem X-beliebigen System mit installierter Python-Umgebung ausführen - ansonsten benötigst du einen echten Pi. Es gibt keine vollwertige Lösung die GPIO's, DSI oder CSI zu emulieren.

    Wie gesagt, wenn dein Python Script GPIO's nutzt musst du es nativ auf einem echten Pi ausführen, sonst kann man nicht wirklich die absolut fehlerfreie Funktionsweise testen.

    Man kann qemu anweisen ein Image zu verwenden oder ein Device. Dafür bedarf es keines Paragon o.ä..

    Aber du schreibst ja selber dass du physikalisch keinen Zugriff auf den Pi hast, also macht der Umweg über eine SD-Karte ja eigentlich auch kein Sinn.

    Mal angenommen:

    Zuhause steht der Pi, morgens aufm Weg zur Arbeit nimmst du die SD Karte mit, schreibst auf der Arbeit dann irgendein Script, speicherst die Datei auf der SD Karte und willst es dann... Vorort erst testen?

  • Ich hatte in den Anfängen der Fernwartung mit VNC gearbeitet. Damals hat sich aber herausgestellt, dass Teamviewer die bessere Performance hatte. Ich mag am Teamviewer, dass ich in der Administrationskonsole alle meine Geräte sehe und anwählen kann (Mac, PC und Raspi).

    Klingt wie ne Beschreibung für VNCConnect.

    So und jetzt kommt's:

    Jupp. So ist das, wenn Du beim Schmittchen Sachen nachguckst, die älter als das Rosental sind (sagt man hier in Leipzig), statt das beim Schmitt zu tun ,gelle? Aber wie ich schon sagte: Mach einfach, bau Dir ein paar zusätzliche Fehlerquellen ein. Ich steh da nicht so drauf.

  • Ein ganz klares nicht. Der Pi wird aufgesetzt, Netzwerk eingerichtet und gut. Er läuft dann. Dann schreibt man seine Programme am PC und kopiert/speichert sie auf den Pi. Gestartet werden sie per ssh/bash.

    Also angefangen hat es tatsächlich damit, dass ich gerade keinen Raspi zur Hand hatte, weil die Neubestellung noch nicht da war und am vorhandenen bereits eine Präsentation lief.

    Wie gesagt, stimme ich allen zu, die mir eine Emulation ausreden wollen, wenn ein Raspi gerade zum Testen "herumliegt".

    Aber im konkreten Fall geht es um folgendes Szenario. Kunde hat neues WLAN/WLAN-Passwort. Somit ist kein Zugriff von außen auf den Raspi möglich. Jetzt könnte man einem technischen Laien erklären, wie er mit Laptop, Netzwerkkabel und/oder USB Tastatur/Maus Zugriff auf den Raspi bekommt ... oder ich über Fernwartung Zugriff auf den Raspi bekomme.

    Da ich öfters unterwegs bin und meine Daten aber keinen Raspi mit dabei habe, wäre es doch fein, in den nächsten Laden zu gehen, eine SD kaufen, das letzte Backup draufspielen, die WLAN Zugangsdaten ändern und die SD mit der Post zu verschicken.

    Es stellt ja auch niemand die prinzipielle Sinnhaftigkeit von Emulatoren in Frage ... oder? Mein "einziges" Anliegen ist es den Emulator nicht von einem Image sondern von der bootfähigen SD zu starten.

    Was willst du denn da so machen? Ohne raspi? kannst du so gut programmieren, dass du die Scripte runterschreiben kannst, ohne zwischendurch mal test laufen zu lassen?

    Den Test will ich natürlich mit dem Emulator laufen lassen. Dass es eine FAKE GPIO Bibliothek gibt, bestärkt mich lediglich in meinem Ansinnen.

    Wie binde ich denn die FAKE GPIO Bibliothek unter Windows ein?

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!