Mentransfer file antar mesin adalah tugas operasional yang sangat umum yang akan Anda lakukan sepanjang waktu sebagai pengembang.
Linux menyediakan sejumlah utilitas untuk mentransfer file. Dalam tutorial ini kita akan membahas FTP
dan SCP
. Banyak skrip otomatis juga menggunakan FTP atau SCP untuk memindahkan file.
Apa itu FTP?
FTP adalah protokol jaringan yang digunakan untuk bertukar file melalui jaringan. Menggunakan port 21. FTP memungkinkan Anda mengakses sistem jarak jauh untuk bertukar file menggunakan ftp
perintah.
Sintaks FTP
Sintaks FTP adalah seperti di bawah ini:
ftp host
Di sini, host
dapat berupa nama host atau alamat IP dari host jarak jauh.
Perintah FTP
Perintah FTP mirip dengan perintah Linux. Kami akan membahas beberapa di antaranya.
Perintah | Penggunaan |
---|---|
buka | Membuka koneksi jarak jauh dengan komputer lain. |
dapatkan | Menyalin file dari sistem jarak jauh ke sistem lokal. |
masukkan | Menyalin file dari sistem lokal ke direktori pada sistem jarak jauh. |
mget | Mentransfer banyak file dari sistem jarak jauh ke direktori sistem lokal saat ini. |
putut | Mentransfer banyak file dari sistem lokal ke direktori pada sistem jarak jauh. |
sampai jumpa/berhenti | Bersiap untuk keluar dari lingkungan FTP. |
tutup | Mengakhiri koneksi FTP. |
ascii | Mengaktifkan mode transfer file ke ASCII |
biner | Mengaktifkan mode transfer file ke biner. |
Cara Mentransfer File melalui FTP
FTP menawarkan dua mode transfer:ASCII dan Binary.
- ASCII adalah singkatan dari Kode Standar Amerika untuk Pertukaran Informasi . Ini digunakan untuk mentransfer file biasa seperti file teks.
- Mode biner :Mode biner digunakan untuk mentransfer file non-teks seperti gambar.
Modus transfer default adalah ASCII.
Langkah 1 – Hubungkan ke FTP
Pada contoh di bawah ini, hostA
adalah host jarak jauh. Anda akan dimintai nama pengguna dan kata sandi.
$ ftp hostA
Connected to hostA.
220 hostA FTP server ready.
Name (hostA:user): user
331 Password required for user.
Password: password
230 User user logged in.
Remote system type is LINUX.
Setelah koneksi berhasil, Anda akan melihat ftp>
simbol di awal. Sekarang kita dapat menjalankan perintah FTP.
Langkah 2 – Pilih mode transfer file
Anda dapat memilih mode (biner atau ASCII) tergantung pada jenis file Anda.
ftp> ascii
200 Type set to A.
Langkah 3 – Transfer file
Kami menggunakan get
perintah untuk mentransfer file sample.txt
dari server FTP jarak jauh ke mesin lokal.
ftp> get sample.txt
200 PORT command successful.
150 Opening ASCII mode data connection for sample.txt (22 bytes).
226 Transfer complete.
local: sample.txt remote: sample.txt
22 bytes received in 0.012 seconds (1.54 Kbytes/s)
Langkah 4. Akhiri sesi
ftp> bye
221-You have transferred 22 bytes in 1 files.
221-Total traffic for this session was 126 bytes in 2 transfers. 221-Thank you for using the FTP service on hostA.
221 Goodbye.
Cara Mentransfer Banyak File melalui FTP
Untuk mentransfer file secara massal, ada dua perintah:mget
dan mput
.
Anda menggunakan mget
untuk mengunduh file, sedangkan Anda menggunakan mput
untuk mengunggah file.
ftp> mget sample_file.1 sample_file.2
ftp> mput sample_file.1 sample_file.2
Semua langkah yang baru saja kita pelajari dapat ditempatkan dalam file yang dapat dieksekusi dan dijadwalkan. Anda dapat menemukan kode untuk otomatisasi di sini.
Apa itu SCP?
SCP adalah singkatan dari Salin Aman. Menggunakan SSH dan port 22. Data yang ditransfer melalui SCP dienkripsi dan sniffer tidak dapat mengaksesnya. Ini membuat SCP sangat aman.
Anda dapat menggunakan SCP untuk:
- Mentransfer file dari mesin lokal ke host jarak jauh.
- Mentransfer file dari host jarak jauh ke mesin lokal.
Sintaks SCP
Mari kita jelajahi sintaks SCP.
scp [FLAG] [user@]SOURCE_HOST:]/path/to/file1 [user@]DESTINATION_HOST:]/path/to/file2
[FLAG]
menentukan opsi yang dapat diberikan kepada SCP. Berikut beberapa detail tentang bendera:
Tandai | Deskripsi |
---|---|
-r | Untuk menyalin direktori secara rekursif. |
-q | Digunakan untuk menyembunyikan pengukur kemajuan dan info lain selain kesalahan. |
-C | Digunakan untuk mengompresi data saat mengirimnya ke tujuannya. |
-P | Menentukan port SSH tujuan. |
-p | Mempertahankan waktu akses file. |
[user@]SOURCE_HOST
adalah mesin sumber.[user@]DESTINATION_HOST:]
adalah mesin tujuan.
Catatan :Untuk mentransfer file melalui SCP, kredensial harus diketahui dan pengguna harus memiliki izin untuk menulis .
Cara Mentransfer File dari Mesin Lokal ke Host Jarak Jauh melalui SCP
Untuk mentransfer file ke host jarak jauh, gunakan perintah di bawah ini:
scp source_file.txt [email protected]:/path/to/remote/directory
Pada perintah di atas, source_file.txt
adalah file yang akan disalin. Remote_username
adalah nama pengguna untuk host jarak jauh 10.13.13.11
. Setelah :
jalur tujuan ditentukan.
Contoh keluaran:
[email protected]'s password:
source_file.txt 100% 0 0.0KB/s 00:00
File source_file.txt
sekarang akan ditempatkan di /path/to/remote/directory
.
Untuk menyalin direktori, gunakan -r
bendera seperti yang ditunjukkan di bawah ini.
scp -r /local/directory [email protected]:/path/to/remote/directory
Cara Mentransfer File dari Host Jarak Jauh ke Mesin Lokal melalui SCP
Untuk mentransfer file dari host jarak jauh ke mesin lokal, gunakan perintah di bawah ini:
scp [email protected]:/remote/source_file.txt /path/to/local/directory
Berhati-hatilah saat mentransfer file karena SCP menimpa file yang sudah ada.
Menutup
Dalam tutorial ini, Anda mempelajari cara mentransfer file dan direktori menggunakan FTP dan SCP melalui baris perintah.
Saat diotomatisasi, perintah ini melayani tujuan yang lebih besar dalam pergudangan data, ETL (Ekstrak, Transformasi, Muat), pelaporan, pengarsipan, dan pemrosesan file massal. Cobalah perintah-perintah ini. Mari terhubung di Twitter.