Saya memiliki perangkat kehadiran yang berjalan Linux OS
. Saya dapat menghubungkan perangkat ini melalui sesi telnet. Ada beberapa file di perangkat yang ingin saya unduh dan unggah dengan file baru. Bagaimana saya bisa melakukan itu? Saya memiliki pengetahuan yang sangat rendah di OS Linux. Maukah Anda membantu!
15
busybox --help
danls -l /bin
danls -l /usr/bin
, tolong.Jawaban:
Ini tergantung pada alat yang diinstal pada perangkat klien / yang didukung oleh kernel.
Metode yang mungkin untuk transfer file (tidak dipesan):
netcat
atausocat
atau denganbash
dan / dev / tcpwget
ataucurl
dari server webBaca transfer file Sederhana dan Cara mendapatkan file ke host ketika semua yang Anda miliki adalah konsol serial? untuk lebih banyak kemungkinan.
Salin
desktop.jpg
dari perangkat ke PC Anda dengan metode netcat / nc:Pada pc Anda, nonaktifkan sementara (atau konfigurasi ulang jika memungkinkan) firewall apa pun dan jalankan
dan di perangkat
di mana Anda perlu mengganti ABCD dengan alamat IP komputer Anda. Segera setelah transfer berhasil, proses netcat di komputer Anda akan berhenti secara otomatis. Jika tidak, ada sesuatu yang salah dan Anda dapat menghentikannyaCtrl+C
Untuk arah lain, tukar saja
<
dan>
di kedua sisi. Buat cadangan pertama dari yang aslidesktop.jpg
(cp desktop.jpg desktop_orig.jpg
).sumber
sz
untuk mengirim file melalui terminal. Anda akan membutuhkannya di kedua sisi.Saya tidak memiliki ssh atau ftp (atau dll) pada perangkat.
Jadi, saya lakukan selanjutnya:
telnet a.b.c.d | tee telnet.log
cat file.txt
telnet.log
dari sampahSeharusnya mudah untuk menulis utilitas untuk mengunduh / mengunggah file melalui telnet
sumber
Coba dengan
rcp
perintah.Gunakan
man rcp
untuk informasi lebih lanjut jika Anda ingin mengotomatiskan transfer.Omong-omong, Anda tahu ini sangat tidak aman , bukan?
sumber
Saya baru saja mengunggah ~ 7 Kb file firmware ke sistem embedded Linux berbasis BusyBox melalui port serial.
Tidak ada jaringan, tidak ada utilitas transfer file; tidak ada utilitas Base64 atau apa pun yang jauh berguna di perangkat.
Di host, saya dengan sepele mengodekan firmware ke dalam format berikut; sejenis hex-dump yang terdiri dari shell literal yang dikombinasikan dengan
printf
perintah:pada dasarnya shell
printf
perintah dengan\x
escape sequence yangprintf
diinterpretasikan. Pada perangkat yang saya lakukan:kemudian menggunakan
minicom
file ASCII send ( Ctrl-AS) untuk mengirim file ini ke host. Saya bisa saja menggunakan salin dan tempel, karena jumlah datanya kecil.Kemudian, tandai dieksekusi dan jalankan
printf
skrip:Diperiksa menggunakan BusyBox
md5sum
bahwafirmware.bin
checksum pada perangkat cocok dengan gambar firmware asli pada host.PS Sintaks kutipan shell ganda melewati
\x
kata demi kata karena itu bukan urutan escape yang dikenali; karenanya kita tidak perlu menggandakan backslash.sumber
@jofel dan yang lainnya, Terima kasih banyak atas bantuannya. Saya pikir perangkat memiliki os khusus yang diinstal karena hanya mengenali beberapa perintah linux tertentu. netcat tidak dikenali oleh perangkat. Namun hari ini saya berhasil mentransfer file menggunakan perintah tftp. Saya berhasil mengganti file desktop.jpg dengan perintah ini. Apa yang saya lakukan adalah, membuat server tftp pada sistem jendela. login melalui telnet pada perangkat dan jalankan perintah ini:
unduh file tftp -l -p tftp -l desktop.jpg - 192.168.0.249 69
unggah file tftp -l desktop.jpg -g 192.168.0.249 69
sumber
Saya telah melakukan ini sekarang dengan metode ini:
Buat server ftp (dengan menginstal solerwinds) pada sistem jendela. login melalui telnet pada perangkat dan jalankan perintah ini:
Untuk mengunduh file:
Contoh:
atau untuk mengunggah file:
Contoh:
lokasi default dari file tftp adalah
C:\TFTP-Root
sumber
Saya menggunakan metode berikut untuk mengunduh file biner kecil melalui telnet ke dalam kotak windows saya:
sumber