bambuloader Handbuch
bambuloader ist ein Kommandozeilenwerkzeug zum Sichern der ueber FTPS erreichbaren Dateien eines BambuLab-Druckers.
Das Tool verbindet sich per FTPS implicit TLS mit dem Drucker, listet das FTP-Root rekursiv auf und baut die gefundene Verzeichnisstruktur lokal im Zielordner nach.
Kurzstart
bambuloader --user bblp --pw 12345678 --ip 192.168.1.50 --out ./bambu-backup --insecure-skip-verify
Der Access Code des Druckers ist meistens das Passwort. BambuLab-Drucker nutzen ueblicherweise FTPS implicit TLS auf Port 990, nicht SFTP und nicht normales FTP auf Port 21.
Installation
Aus dem Projektverzeichnis bauen:
go build -o bambuloader ./cmd/bambuloader
Unter Windows kann die Binary auch explizit als .exe gebaut werden:
go build -o bambuloader.exe ./cmd/bambuloader
Aufruf
Minimaler Aufruf:
bambuloader --user USERNAME --pw PASSWORD --ip 1.2.3.4
Mit Zielordner und unsicherer Zertifikatspruefung:
bambuloader --user bblp --pw 12345678 --ip 192.168.1.50 --out ./bambu-backup --insecure-skip-verify
Ohne Terminal-UI:
bambuloader --user bblp --pw 12345678 --ip 192.168.1.50 --notui
Optionen
| Option | Pflicht | Standard | Beschreibung |
| --- | --- | --- | --- |
| --user USERNAME | Ja | - | Benutzername fuer den FTPS-Login. Bei BambuLab haeufig bblp. |
| --pw PASSWORD | Ja | - | Passwort fuer den FTPS-Login. Meistens der Access Code des Druckers. |
| --ip 1.2.3.4 | Ja | - | IP-Adresse des Druckers. |
| --out PATH | Nein | ./download | Lokaler Zielordner fuer den Dump. |
| --port PORT | Nein | 990 | Port fuer FTPS implicit TLS. |
| --insecure-skip-verify | Nein | false | Deaktiviert TLS-Zertifikats- und SNI-Pruefung, falls das Druckerzertifikat nicht passt. |
| --timeout 30s | Nein | 30s | Timeout fuer Verbindung und FTP-Operationen. Go-Durations wie 10s, 1m, 500ms sind gueltig. |
| --notui | Nein | false | Deaktiviert die Bubble-Tea-TUI und nutzt klassische Logs plus Summary. |
Wenn --user, --pw oder --ip fehlen, zeigt bambuloader die Usage an und beendet sich mit Exit Code 2.
Terminal-UI
Standardmaessig startet bambuloader nach erfolgreichem Login eine Terminal-UI.
Die TUI zeigt:
- Verbindungsstatus
- Anzahl verarbeiteter und gefundener Dateien
- heruntergeladene, uebersprungene und fehlgeschlagene Dateien
- Gesamtfortschritt mit Fortschrittsbalken
- aktuelle Datei mit Fortschrittsbalken
- aktuelle und durchschnittliche Download-Geschwindigkeit
- geschaetzte Restzeit
- Live-Aktivitaet
- Statistikbox mit Gesamtgroesse, heruntergeladenen Bytes und verbleibenden Bytes
Taste:
Q: Abbrechen und beenden
Die weiteren angezeigten Tastenhinweise sind Platzhalter fuer moegliche spaetere Funktionen.
Klassischer Modus ohne TUI
Mit --notui laeuft das Tool ohne Vollbild-Terminaloberflaeche:
bambuloader --user bblp --pw 12345678 --ip 192.168.1.50 --notui
Dieser Modus ist hilfreich fuer einfache Logs, Remote-Sessions, Skripte oder Umgebungen, in denen Terminal-UIs nicht gut funktionieren.
Am Ende wird immer eine Summary ausgegeben:
Summary:
Dateien gefunden: 2183
Heruntergeladen: 120
Uebersprungen: 2050
Fehlgeschlagen: 13
Zielordner: C:\path\to\download
Download-Verhalten
bambuloader arbeitet in zwei Schritten:
- Das FTP-Root
/wird rekursiv aufgelistet. - Alle gefundenen Dateien werden in den Zielordner heruntergeladen.
Dabei gilt:
- Die Remote-Verzeichnisstruktur wird lokal unter
--outnachgebaut. - Bereits existierende Dateien werden uebersprungen, wenn ihre lokale Dateigroesse der Remote-Groesse entspricht.
- Fehler bei einzelnen Dateien werden geloggt, der Dump laeuft weiter.
- Root-Listing-, Netzwerk-, TLS- oder Login-Fehler brechen den Lauf ab.
- Remote-Pfade werden bereinigt, damit keine Dateien ausserhalb des Zielordners geschrieben werden.
Exit Codes
| Code | Bedeutung |
| --- | --- |
| 0 | Alles erfolgreich heruntergeladen oder uebersprungen. |
| 1 | Netzwerk-, TLS-, Login-, Root-Listing- oder anderer fataler Fehler. |
| 2 | Fehlende oder ungueltige CLI-Argumente. |
| 3 | Einzelne Dateien oder Ordner sind fehlgeschlagen, andere Arbeit wurde abgeschlossen. |
Sicherheit
Das Passwort wird nicht geloggt.
Der aktuelle CLI-Aufruf akzeptiert das Passwort ueber --pw, weil das Tool bewusst so bedient wird. Beachte aber: Prozessargumente koennen auf manchen Systemen fuer andere lokale Benutzer oder in Shell-Historien sichtbar sein. Eine Umstellung auf Umgebungsvariable oder interaktive Passwortabfrage waere fuer spaetere Versionen sicherer.
--insecure-skip-verify sollte nur verwendet werden, wenn die Verbindung wegen Zertifikat oder SNI fehlschlaegt und du dem lokalen Drucker vertraust. Die Verbindung bleibt TLS-verschluesselt, aber die Zertifikatspruefung wird deaktiviert.
Troubleshooting
Verbindung schlaegt fehl
Pruefe:
- Ist die IP-Adresse korrekt?
- Ist der Drucker eingeschaltet und im gleichen Netzwerk erreichbar?
- Wird Port
990verwendet? - Blockiert eine Firewall die Verbindung?
- Ist FTPS/FTP-Zugriff am Drucker aktiviert?
Login schlaegt fehl
Pruefe:
- Benutzername, haeufig
bblp - Passwort bzw. Access Code des Druckers
- Ob der Access Code am Drucker geaendert wurde
TLS-Zertifikat passt nicht
Viele lokale Geraete haben Zertifikate, die nicht zur IP-Adresse passen oder nicht von einer bekannten CA signiert sind. In diesem Fall kann helfen:
bambuloader --user bblp --pw 12345678 --ip 192.168.1.50 --insecure-skip-verify
TUI sieht kaputt aus
Versuche:
- Terminalfenster vergroessern
- Windows Terminal statt alter Konsole verwenden
- aktuellen Build verwenden
- mit
--notuilaufen lassen
bambuloader --user bblp --pw 12345678 --ip 192.168.1.50 --notui
Viele Dateien werden uebersprungen
Das ist normal, wenn bereits ein vorheriger Dump im Zielordner liegt. Dateien mit identischer Groesse werden nicht erneut heruntergeladen.
Einzelne Dateien schlagen fehl
Das Tool laeuft weiter und meldet am Ende Exit Code 3. Starte den Dump erneut; bereits vollstaendige Dateien werden uebersprungen, fehlgeschlagene Dateien werden erneut versucht.