salin scp lewat ssh tidak berfungsi - izin ditolak kesalahan?

83

Itu membuatku gila! Saya hanya ingin mentransfer satu file sederhana dari laptop ke server.

Saya menggunakan ubuntu di kedua mesin.

Jadi saya punya:

-rwxr-xr-x 1 sandro    414622 2011-10-14 23:42 sandrophoto-html.tar.gz

Dan saya mengirimnya menggunakan:

sudo scp -P XXXX sandrophoto-html.tar.gz [email protected]:/media/xx/xx/xx

Dan saya mendapatkan: scp: /media/xx/xx/xx/sandrophoto-html.tar.gz: Permission denied

ps saya mungkin melakukan sebaliknya - Saya ingin mengirim file tar.gz yang terletak di desktop saya, ke server jauh ke folder / media / yadayda

Edd
sumber
2
Dalam kasus saya, itu adalah alasan keamanan di pihak penerima, saya harus chmod direktori untuk memungkinkan pengguna jarak jauh untuk menulis file (saya chmod 777 direktori - tetapi ini adalah lab internal)
ilansch

Jawaban:

95

Anda memiliki hal-hal dalam urutan yang benar dari apa yang saya mengerti, cara umum scp dilakukan adalah:

scp sourceuser@sourcehost:/path/to/source/file destinationuser@destinationhost:/path/to/destination/

Dilihat oleh pertanyaan Anda, Anda memiliki file lokal yang ingin Anda kirim ke server tujuan. Jadi Anda memiliki sintaks yang tepat yang bagus!

Jika Anda mendapatkan izin ditolak, maka Anda tidak menggunakan nama pengguna yang benar atau ada sesuatu yang salah dengan otentikasi. Kemungkinan besar, itu karena perintah sudo hanya berfungsi secara lokal, sebagai permulaan, jadi itu tidak akan memberi Anda root pada kotak remote, jadi itu mungkin masalahnya. Pastikan bahwa pengguna yang Anda masuki seperti pada server jarak jauh memiliki izin menulis ke lokasi yang Anda coba tulis.

Jika masalahnya adalah pengguna tujuan tidak memiliki akses ke lokasi itu tanpa sudo, pindahkan file tersebut ke folder home destinationer lalu sudo mv file dari shell di server lain untuk meletakkannya di lokasi yang tepat.

Anna
sumber
9
Terima kasih, saya harus menambahkan izin menulis ke direktori tujuan
PiKey
@PiKey Ini seharusnya menjadi jawaban
Code-Guru
39

Hai punya masalah kesalahan izin yang sama ini diselesaikan dengan cara ini

Pastikan direktori yang Anda salin 192.168.0.4dimiliki oleh nama pengguna pengguna

chown username downloads

Di mesin lokal Anda kemudian lakukan

sudo scp filename.zip [email protected]:/etc/Myfiles/downloads

Tepuk tangan

mainakibui
sumber
thx, adalah izin, khususnya di sini saya harus menggunakan chmodpada folder tujuan di server jauh
Aquarius Power
26

Permisssion Denied berarti Anda bukan root dari server. Anda cukup memegang akun di sana. Jadi dalam hal ini Anda perlu melakukan ini:

sudo scp -r /path2yourFolder/ username@server_Ip:/home/username

Ini akan menyalin ke direktori home Anda di server.

Ini juga akan berfungsi:

scp -r /path2yourFolder/ username@server_Ip:~/
Abhishek Kaushik
sumber
2
penyelamat! : ~ / aku melakukannya untukku.
trdavidson
~/memang cara, -radalah untuk menyalin seluruh direktori secara rekursif.
Noam Manos
9

Kesalahan ini terjadi pada saya ketika file sudah ada di lokasi target dan file yang ada memiliki izin baca-saja (mencegah file ditimpa). Dalam kasus saya, saya baru saja masuk dan menghapus file yang ada dan yang memperbaiki masalahnya.

Kevin
sumber
7

Saya punya masalah yang sama, itu terjadi karena sshdiperlukan -p xxxxuntuk menentukan port sementara yang scpdiperlukan -P xxxxuntuk menentukan port. Inkonsistensi kecil, sangat mudah dilewatkan :(

beladau
sumber
Puji kamu. Jangan pedulikan saya jika saya menambahkan beberapa kata kunci yang dapat Google scp doesn't work Permission denied (publickey). lost connection for ec2 compute.amazonaws.com
gunakan
0

Punya masalah yang sama. Saya menemukan bahwa direktori yang berisi file sumber saya tidak memiliki izin yang cukup. Jadi saya baru saja mengubah mode secara rekursif menggunakan: chmod -R 771 directory_pathpada mesin sumber.

Changba
sumber
0

Saya mencoba menyalin dari mesin lokal saya sebagai username@localhost; kunci SSH yang saya gunakan tidak terdaftar untuk mengakses localhost saya, jadi saya mendapat izin ditolak. Ketika saya menghapus itu dari bagian sumber , itu berhasil.

Chaim Eliyah
sumber