Benutzeravatar
Administrator
System Terminal in Mainsail (Befehle im Browser wie per SSH)
System Terminal in Mainsail: Befehle direkt im Browser eingeben

Mit dem Paket rf-terminal bekommt Mainsail links den Menüpunkt System Terminal. Dort öffnet sich ein Terminal im Browser, und du kannst alles machen wie per SSH: Befehle eingeben, Pakete installieren, Dateien ansehen. PowerShell oder ein Terminal-Programm brauchst du danach nicht mehr.

Links auf der Seite stehen das 3D-Artmaker-Logo, eine kurze Anleitung und der Knopf Zurück zu Mainsail. Rechts ist das Terminal.

Repo: github.com/Dennis02121978/3D-Artmaker
Release: v1.5.9

Passt das zu meinem Drucker?
  • Du hast Klipper, Moonraker und Mainsail mit nginx.
  • Dein Drucker läuft auf einem Raspberry Pi oder einem MKS-SKIPR-Board. Getestet habe ich beides: Raspberry Pi 3 mit Debian 13 und MKS SKIPR mit Armbian.
  • Der Drucker ist mit dem Internet verbunden.
Hängen mit rf-multi mehrere Drucker an einem Pi, bekommt jeder den Menüpunkt.

So sicher ist das
  • Jede Sitzung beginnt mit der normalen Anmeldung: Benutzer und Passwort, genau wie bei SSH. Ein falsches Passwort wird abgewiesen.
  • Andere Webseiten können sich nicht mit dem Terminal verbinden.
  • Aber: Wer das Passwort kennt, kann über diese Seite alles auf dem Drucker ändern.
Wichtig: Ändere das Standard-Passwort (zum Beispiel raspberry oder makerbase) und gib den Drucker nicht im Router für das Internet frei.

Das Passwort änderst du mit diesem Befehl. Er fragt erst das alte, dann zweimal das neue Passwort:

Code: Alles auswählen

passwd
Schritt 1: Mit dem Drucker verbinden

Für die Installation brauchst du ein letztes Mal das normale Terminal.
  • Windows: Windows-Taste drücken, PowerShell eingeben und öffnen.
  • Mac: Das Programm Terminal öffnen.
  • Linux: Ein Terminal öffnen.
Die IP-Adresse deines Druckers ist die Zahl, die im Browser oben steht, wenn du Mainsail öffnest. Ersetze die Beispiel-IP durch deine eigene. Beim Raspberry Pi ist der Benutzer oft pi, beim SKIPR mks:

Code: Alles auswählen

ssh pi@192.168.1.50
  • Bei der ersten Verbindung kommt eine Frage mit yes/no. Tippe yes und drücke Enter.
  • Dann wird das Passwort abgefragt.
  • Keine Sorge: Beim Tippen des Passworts siehst du nichts, auch keine Sternchen. Das ist normal.
Einfügen im Terminal: In der PowerShell reicht ein Rechtsklick, auf dem Mac geht es mit Cmd+V, unter Linux meist mit Strg+Umschalt+V.

Schritt 2: Paket herunterladen

Code: Alles auswählen

cd ~
wget https://github.com/Dennis02121978/3D-Artmaker/releases/download/v1.5.9/rf-terminal_1.5.9_all.deb
Schritt 3: Datei prüfen

Damit stellst du sicher, dass die Datei vollständig und unverändert ist:

Code: Alles auswählen

echo "db9f0fb135ff8df363fa847e570538449c219ab9ae0abda00dad70e60bcb6bfa  rf-terminal_1.5.9_all.deb" | sha256sum -c
Es muss OK erscheinen. Bei einer anderen Meldung installiere bitte nicht weiter und melde dich hier im Thema.

Schritt 4: Installieren

Code: Alles auswählen

sudo apt install ./rf-terminal_1.5.9_all.deb
  • Falls nach dem Passwort gefragt wird, gib es wieder ein.
  • Am Ende steht: System-Terminal ist installiert
  • Ein Neustart des Druckers ist nicht nötig.
Schritt 5: Terminal benutzen
  1. Lade Mainsail im Browser mit F5 neu.
  2. Klicke links auf System Terminal. Du erreichst die Seite auch direkt mit deiner IP: http://192.168.1.50/terminal/
  3. Gib bei login: deinen Benutzer ein, zum Beispiel pi oder mks, und drücke Enter.
  4. Gib bei Password: dein Passwort ein und drücke Enter. Auch hier siehst du beim Tippen nichts.
  5. Jetzt kannst du Befehle eingeben wie per SSH, auch mit sudo.
  6. Mit exit meldest du dich ab. Mit Neu verbinden oben rechts startest du eine neue Sitzung.
Wenn etwas nicht klappt
  • Menüpunkt fehlt: Lade Mainsail mit F5 neu.
  • Login incorrect: Benutzer oder Passwort stimmen nicht. Tippe beides noch einmal in Ruhe ein.
  • Das Terminal bleibt leer: Klicke auf Neu verbinden. Hilft das nicht, starte den Dienst im normalen Terminal neu: sudo systemctl restart rf-terminal
  • Mainsail mit nginx wurde nicht gefunden: Das Paket braucht Mainsail mit nginx. Fluidd allein reicht nicht.
  • Dieses System wird nicht unterstützt: Das Paket gibt es für arm64, armhf und amd64, also für Raspberry Pi, SKIPR und normale PCs.
Komm hier im Thema nicht weiter? Dann poste bitte die genaue Fehlermeldung, aber niemals dein Passwort.

Updates

Das System Terminal hat keinen Eintrag im Update-Manager. Gibt es eine neue Version, wiederholst du die Schritte 1 bis 4 mit dem neuen Dateinamen und der Prüfsumme aus der Datei SHA256SUMS im Release. Entfernen musst du vorher nichts.

Wieder entfernen

Code: Alles auswählen

sudo apt remove rf-terminal
Der Menüpunkt und die Seite verschwinden damit. Deine Klipper-Config bleibt unverändert.

Technik für Neugierige
  • Das Terminal im Browser ist ttyd 1.7.7 (MIT-Lizenz). Debian 13 hat dafür kein Paket mehr, deshalb liegt es dem Paket bei.
  • ttyd ist nur auf dem Drucker selbst erreichbar. Von außen kommst du nur über Mainsail an die Seite /terminal/.
  • Höchstens 4 Sitzungen gleichzeitig.
Viel Erfolg! Fragen und Rückmeldungen gerne hier im Thema.
🔧 Troubleshooter | Entwickler | Klipper
⚠️ Hinweis: Ich hafte nicht für verbrannte Finger oder verstopfte Nozzles.
👉 Erste Regel: Hast du dein Druckbett gelevelt?

Information

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste