ssh üzerinden scp kopyalama çalışmıyor - hata reddedildi, lütfen?


83

Beni deli ediyor! Sadece basit bir dosyayı dizüstü bilgisayardan sunucuya aktarmak istiyorum.

Her iki makinede de ubuntu kullanıyorum.

Bu yüzden var:

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

Ve onu kullanarak gönderiyorum:

sudo scp -P XXXX sandrophoto-html.tar.gz usern@server.local:/media/xx/xx/xx

Ve anladım: scp: /media/xx/xx/xx/sandrophoto-html.tar.gz: Permission denied

ps bunu başka bir şekilde yapıyor olabilirim - masaüstümde bulunan tar.gz dosyasını uzak sunucuya / media / yadayda klasörüne göndermek istiyorum


2
Benim durumumda, bu alıcı tarafında güvenlik nedeni, ben uzak kullanıcı dosyası yazmak için izin dizinin chmod zorunda kaldı (- ama iç laboratuar i 777 dizinin chmod)
ilansch

Yanıtlar:


95

Anladığım kadarıyla doğru sırada şeyler var, bir scp yapmanın genel yolu şudur:

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

Sorunuza bakıldığında, hedef sunucuya göndermek istediğiniz yerel bir dosyanız var. Yani iyi olan doğru sözdizimine sahipsiniz!

İzin verilmedi reddedilirse, doğru kullanıcı adını veya kimlik doğrulamasında yanlış bir şey kullanmazsınız. Büyük olasılıkla, sudo komutunun yalnızca yerel olarak çalıştığından, yeni başlayanlar için, bu nedenle size uzaktaki kutuda kök vermez, bu yüzden sorun budur. Uzak sunucuda oturum açtığınız kullanıcının, yazmaya çalıştığınız konuma yazma izinlerine sahip olduğundan emin olun.

Sorun, hedef kullanıcı sudo olmadan bu konuma erişemiyorsa, dosyayı hedef kullanıcının ana klasörüne taşıyın, ardından dosyayı doğru konuma yerleştirmek için diğer sunucudaki kabuktan sudo yapın.


9
Teşekkür ederim, hedef dizine yazma iznini eklemek zorunda kaldım
PiKey

@PiKey Bu bir cevap olmalı
Code-Guru

39

Merhaba bu aynı izin hatası sorunu vardı bu şekilde çözdü

Kopyaladığınız dizinin 192.168.0.4kullanıcının kullanıcı adına ait olduğundan emin olun

chown username downloads

Yerel makinenizde yapın

sudo scp filename.zip username@192.168.0.4:/etc/Myfiles/downloads

Şerefe


thx, izinlerdi, özellikle burada chmoduzak sunucudaki hedef klasörde kullanmak zorunda kaldım
Aquarius Power

26

İzin Reddedildi, sunucunun kökü olmadığınız anlamına gelir. Sadece orada bir hesap tutuyorsun. Yani bu durumda bunu yapmanız gerekir:

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

Bu sunucudaki ana dizininize kopyalayacaktır.

Bu da işe yarayacak:

scp -r /path2yourFolder/ username@server_Ip:~/

2
cankurtaran! : ~ / benim için yaptım.
trdavidson

~/Aslında, -rbu, tekrar tekrar dizinin tamamını kopyalamak içindir.
Noam Manos

9

Bu hata benim için, dosya zaten hedef konumda bulunduğunda ve varolan dosyanın salt okunur izinleri olduğunda (dosyanın üzerine yazılmasını önleyen) benim için oluştu. Benim durumumda az önce giriş yaptım ve mevcut dosyayı sildim ve bu sorunu düzeltti.


7

Çünkü bu gerçekleşti, benzer bir sorun vardı sshsürer -p xxxxiken port belirtmek için scpgereken -P xxxxbağlantı noktasını belirtmek için. Küçük tutarsızlık, kaçırması çok kolay :(


Seni övmek. Bunu daha görünür hale getirmek için Google’a birkaç anahtar kelime scp doesn't work Permission denied (publickey). lost connection for ec2 compute.amazonaws.com
eklersem, sakıncası yoksa

0

Aynı problem vardı. Kaynak dosyamı içeren dizinin yetkisi olmadığını öğrendim . Bu yüzden modu tekrar tekrar kullanarak değiştirdim: chmod -R 771 directory_pathkaynak makinede.


0

Yerel makinemden kopyalamayı deniyordum username@localhost; Kullandığım SSH anahtarı, yerel ana bilgisayarıma erişmek için kayıtlı değildi, bu yüzden izin verilmedi. Bunu kaynak bölümünden çıkardığımda işe yaradı.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.