Cara mengunggah file lokal ke server melalui terminal Linux

47

Saya mencoba mengunggah file lokal ke server dengan menggunakan Putty atau SSH tetapi tidak mendapatkan unggahan di sana.

Apakah ada metode langsung untuk mengunggah file dari lokal ke server dari terminal Linux tanpa menggunakan FTP dll?

Sanjeev Kumar Goswami
sumber
SFTP adalah apa yang Anda cari.
ingin mentransfer file lokal saya ke server dengan menggunakan Terminal Linux. Misalkan kami dulu mengakses server dengan dempul atau ssh tetapi tidak dapat mentransfer file di sana dengan di terminal yang sama.

Jawaban:

64

Yakin. Gunakan scp(salinan aman) seperti ini:

scp [source file] [username]@[destination server]:.

Tentu saja ganti braket [source file], [username]dan [destination server]agar sesuai dengan pengaturan lokal Anda. Jadi, jika file itu cool_stuff.txtdan nama pengguna Anda pada remote sever sanjeevdan tujuan sever adalah example.com, perintahnya adalah:

scp cool_stuff.txt [email protected]:.

Dan sumbernya juga bisa jarak jauh sehingga Anda bisa melakukan ini untuk melakukan kebalikan dari contoh di atas:

scp [email protected]:cool_stuff.txt .

Perintah itu akan menyalin file jarak jauh cool_stuff.txtke direktori lokal mana pun Anda berada. Dan jika Anda melakukan ini dengan banyak file, cukup gunakan wildcard ( *) seperti yang Anda lakukan untuk cpperintah normal .

Juga, .hanya menunjukkan jalur direktori langsung; seperti yang ada di kanan saat Anda menjalankan perintah atau jalur langsung yang dimiliki pengguna jarak jauh di server tujuan. Tetapi Anda juga bisa menentukan lintasan seperti /this/path/right/herepada contoh lokal ke jarak jauh:

scp cool_stuff.txt [email protected]:/this/path/right/here

Atau contoh remote ke lokal di sini:

scp [email protected]:cool_stuff.txt /this/path/right/here

Sekarang jika server jauh tidak mengizinkan SSH dan hanya SFTP, maka SFTP adalah cara untuk pergi. Tetapi scpsangat berguna ketika Anda hanya ingin melemparkan file dan tidak melakukan seluruh proses SFTP secara manual dari baris perintah.

JakeGould
sumber
13

Ketika login ke server jauh melalui kunci ssh , kita dapat menggunakan -ibendera di bawah ini untuk meneruskan kunci kita ke server:

scp -i /path/to/.ssh/id_rsa path/to/file/myFiles.gz myServer.com:/folder/on/server

-i identity_file
Memilih file dari mana identitas (kunci pribadi) untuk otentikasi kunci publik dibaca.
Opsi ini secara langsung diteruskan ke ssh (1).

zx8754
sumber
13

Untuk menambahkan jawaban Jake , Anda dapat menentukan lokasi — alih-alih hanya .— menyalin ke dengan menambahkan jalur di akhir URL sebagai:

scp /path/to/file username@servername/ip:/destination/folder/
CBinyenya
sumber
1
FYI ruang antara host jarak jauh dan path adalah kesalahan, jadi Anda perlu menulis ini tanpa spasi! (mengedit jawaban ini tidak mungkin sekarang)
Sliq