Ich habe ein Anwesenheitsgerät am Laufen Linux OS
. Ich kann dieses Gerät über eine Telnet-Sitzung verbinden. Das Gerät enthält einige Dateien, die ich mit neuen Dateien herunterladen und hochladen möchte. Wie kann ich das machen? Ich habe sehr geringe Kenntnisse in Linux OS. Würden Sie bitte helfen!
15
busybox --help
undls -l /bin
und einfügenls -l /usr/bin
, bitte.Antworten:
Dies hängt davon ab, welche Tools auf dem Client-Gerät installiert sind / vom Kernel unterstützt werden.
Mögliche Methoden zur Dateiübertragung (ungeordnet):
netcat
odersocat
oder mitbash
und / dev / tcpwget
odercurl
von einem WebserverLesen Sie Einfache Dateiübertragung und Wie wird eine Datei auf einen Host übertragen, wenn Sie nur eine serielle Konsole haben? für mehr möglichkeiten.
Kopieren
desktop.jpg
Sie mit der netcat / nc-Methode vom Gerät auf Ihren PC:Deaktivieren Sie auf Ihrem PC vorübergehend die Firewall (oder konfigurieren Sie sie nach Möglichkeit neu) und führen Sie sie aus
und auf dem Gerät
Hier müssen Sie ABCD durch die IP-Adresse Ihres PCs ersetzen. Sobald die Übertragung erfolgreich war, sollte der Netcat-Prozess auf Ihrem PC automatisch beendet werden. Wenn nicht, stimmt etwas nicht und Sie können damit aufhörenCtrl+C
Für die andere Richtung einfach austauschen
<
und>
auf beiden Seiten. Erstellen Sie zuerst eine Sicherungskopie des Originalsdesktop.jpg
(cp desktop.jpg desktop_orig.jpg
).quelle
sz
die Dateien auch über das Terminal senden. Sie werden es auf beiden Seiten brauchen.Ich habe kein ssh oder ftp (oder etc) auf dem Gerät.
Also mache ich als nächstes:
telnet a.b.c.d | tee telnet.log
cat file.txt
telnet.log
aus dem Müll räumenEs sollte einfach sein, ein Dienstprogramm zum Herunterladen / Hochladen von Dateien über Telnet zu schreiben
quelle
Versuchen Sie es mit dem
rcp
Befehl.Verwenden
man rcp
Sie diese Option für weitere Informationen, wenn Sie Übertragungen automatisieren möchten.Übrigens wissen Sie, dass dies sehr unsicher ist , oder?
quelle
@jofel und alle anderen, vielen Dank für Ihre freundliche Unterstützung. Ich denke, auf dem Gerät ist ein angepasstes Betriebssystem installiert, da es nur einige bestimmte Linux-Befehle erkennt. netcat wird vom Gerät nicht erkannt. Allerdings habe ich heute Erfolg gehabt, die Datei mit dem Befehl tftp zu übertragen. Ich habe die Datei desktop.jpg erfolgreich durch diesen Befehl ersetzt. Was ich getan habe, ist, TFTP-Server auf Windows-System erstellt. Melden Sie sich über Telnet auf dem Gerät an und führen Sie die folgenden Befehle aus:
Datei herunterladen tftp -l -p tftp -l desktop.jpg - 192.168.0.249 69
Datei hochladen tftp -l desktop.jpg -g 192.168.0.249 69
quelle
Ich habe das jetzt durch diese Methoden gemacht:
Erstellen Sie einen FTP-Server (durch Installation von Solerwinds) auf einem Windows-System. Melden Sie sich über Telnet auf dem Gerät an und führen Sie die folgenden Befehle aus:
So laden Sie eine Datei herunter:
Beispiel:
oder um eine Datei hochzuladen:
Beispiel:
Der Standardspeicherort der TFTP-Datei ist
C:\TFTP-Root
quelle
Ich habe gerade eine ~ 7-KB-Firmware-Datei über die serielle Schnittstelle auf ein BusyBox-basiertes Linux-Embedded-System hochgeladen.
Keine Netzwerk- oder Dateiübertragungsprogramme; Keine Base64-Hilfsprogramme oder andere nützliche Funktionen auf dem Gerät.
Auf dem Host habe ich eine Firmware einfach in das folgende Format codiert. eine Art Hex-Dump, bestehend aus Shell-Literalen kombiniert mit
printf
Befehlen:im Grunde Shell-
printf
Befehle mit\x
Escape-Sequenzen, dieprintf
interpretiert. Auf dem Gerät habe ich:Verwenden Sie dann die
minicom
ASCII-Datei send ( Ctrl-AS), um diese Datei an den Host zu senden. Ich hätte einfach Kopieren und Einfügen verwenden können, da die Datenmenge gering ist.Dann markierte ausführbare Datei und führte das
printf
Skript aus:Überprüft mit BusyBox's,
md5sum
ob diefirmware.bin
Prüfsumme auf dem Gerät mit dem ursprünglichen Firmware-Image auf dem Host übereinstimmt.PS Die Shell-Syntax mit doppelten Anführungszeichen wird
\x
wörtlich durchlaufen, da es sich nicht um eine erkannte Escape-Sequenz handelt. Daher müssen wir die Backslashes nicht verdoppeln.quelle
Ich verwende die folgende Methode, um kleine Binärdateien über Telnet in meine Windows-Box herunterzuladen:
quelle