Provo a trasferire file dal computer remoto utilizzando ssh
al mio computer:
scp My_file.txt user_id@server:/Home
Questo dovrebbe mettere My_file.txt nella cartella home del mio computer, giusto? Ottengo
scp / Home: autorizzazione negata
Anche quando provo: ...@server:/Desktop
, per copiare i file dal computer remoto al desktop.
Cosa sto facendo di sbagliato?
Commenti
Risposta
I tuoi comandi stanno tentando di inserire il nuovo documento nella root (/
) della tua macchina. Quello che vuoi fare è trasferirli nella tua directory home (dato che non hai i permessi per scrivere in /
). Se il percorso per la tua casa è qualcosa come /home/erez
prova quanto segue:
scp My_file.txt user_id@server:/home/erez/
Puoi sostituire il percorso al tuo home directory con la scorciatoia ~/
, quindi quanto segue avrà lo stesso effetto:
scp My_file.txt user_id@server:~/
Puoi anche andartene fuori il sentiero del tutto sul lato remoto; questo significa la tua directory home.
scp My_file.txt user_id@server:
Cioè, per copiare il file sul desktop potresti trasferirlo in /home/erez/Desktop/
:
scp My_file.txt user_id@server:/home/erez/Desktop/
o utilizzando la scorciatoia:
scp My_file.txt user_id@server:~/Desktop/
o utilizzando un percorso relativo sul lato remoto, che viene interpretato rispetto alla directory home:
scp My_file.txt user_id@server:Desktop/
Modifica:
As @ ckhan già menzionato, devi anche scambiare gli argomenti, deve essere
scp FROM TO
Quindi se vuoi copiare il file My_file.txt
dal server user_id@server
al desktop, dovresti provare quanto segue:
scp user_id@server:/path/to/My_file.txt ~/Desktop/
Se il il file My_file.txt
si trova nella tua directory home sul server, puoi utilizzare nuovamente il collegamento:
scp user_id@server:~/My_file.txt ~/Desktop/
Commenti
- – ‘ ho provato: ” ~ / per ‘ Home ‘ adesso e anche ” ~ / Desktop /. Entrambi hanno prodotto: My_file.txt 100% 0 0.0 KB / s 00:00 e non riesco a vedere i file nelle mie cartelle. Cosa sto ancora facendo di sbagliato? Grazie mille!
- Nel secondo esempio di comando, il
~
dovrebbe essere protetto dalla valutazione in modo da essere valutato sullhost remoto:\~
per esempio. - Per ringraziarti, mi sono registrato al sito. Grazie mi hai salvato la giornata 🙂
Risposta
Sono venuto qui per “Trasferisci file usando scp: permesso negato “perché ho avuto lo stesso errore.
Nel mio caso, il file scaricato con scp avrebbe sovrascritto un file di proprietà di root e io non ero root. In breve, controlla la proprietà del file sovrascritto.
Commenti
- In questo caso ‘ è perché ‘ sta cercando di scrivere su
/Home
e non essendo root, ‘ non ha accesso in scrittura al di fuori di~/
- Mi aiuti.
Rispondi
Ciò che ha corretto il “permesso negato” per me è stato, sul server remoto, cambiare la proprietà della cartella in root: (Questo può accadere quando si invia un file a un utente non root e la directory è di proprietà di root! ) Sul computer remoto (copiando dest.):
sudo chown (your username) (remote folder)
Inoltre, per sicurezza, abilita tutti i permessi sulla cartella remota: (Non sempre necessario):
sudo chmod 777 (remote folder)
Risposta
questo sembra essere un problema di autorizzazione
Il file potrebbe non disporre delle autorizzazioni di lettura poiché viene consegnato al server di destinazione come account di origine.
devi assicurarti che il file allorigine abbia i permessi richiesti, in particolare i permessi di lettura
-rw-r – r–
chmod 744
quindi scp il file a destinazione. Questo verrà risolto
Commenti
-
-rw-r--r--
è 644, non 744. Impostazione dellautorizzazione eseguibile su un file che non è effettivamente eseguibile può causare problemi.
Risposta
Hai gli argomenti per scp
invertito.È prima la sorgente, poi la destinazione, ad esempio cp
. man scp
per ulteriori dettagli.
Risposta
Come ha sottolineato Jinzai, la cartella remota può essere di proprietà del root. Nel mio caso, qualcuno (o qualcosa) ha cambiato il proprietario della cartella home dellutente radicare. Quindi, quando ho provato a inviare un file a un server remoto, si è verificato un errore di autorizzazione negata.
Puoi controllare il proprietario della cartella con il comando ls -l
:
drwxr-xr-x 5 root root 4096 Oct 21 08:16 user2
Nellesempio sopra, la cartella user2 è di proprietà di root. Puoi cambiare il proprietario in questo modo:
chown user2:user2 user2
Cè anche un modo più veloce per verificare se il server sta bloccando un file scp o no. Prova a creare un file nella cartella di destinazione, ad esempio con touch test_file
. Se non puoi creare un file nella cartella, non sarai in grado di inviare il file qui da remoto dallo stesso utente.
Risposta
Permisssion Denied significa che non sei il root del server. Hai solo un account lì. Quindi in questo caso devi fare questo:
sudo scp -r /path2yourFolder/ username@server_Ip:/home/username
Questo copierà nella tua home directory sul server.
Funzionerà anche :
scp -r /path2yourFolder/ username@server_Ip:~/
Risposta
AMI Amazon Linux
Assicurati di impostare il percorso del server assoluto, da home nel caso corrente:
scp file.txt SSH-ALIAS:/home/YOUR_USER/
Risposta
Installa uno strumento Windows” mRemoteG “da www.mremoteng.org/
Crea la tua connessione SSH nella casella desiderata.
Fai clic sul menu “Trasferisci file”.
Permetterà di trasferire facilmente i file da Windows a Linux.
grazie.
Risposta
Gli stessi permessi si applicano su entrambi i lati di scp. Riceverai questo errore se lutente non dispone dellautorizzazione per scrivere nella destinazione. I sintomi sembrano implicare la fonte, tuttavia nel mio caso la destinazione è stata creata da root e mancava lautorizzazione di scrittura per laccount utente previsto.
Risposta
Nel mio caso, ho anche provato a concedere tutte le autorizzazioni con -R alla cartella, ma ho ancora ricevuto lerrore sullautorizzazione.
Ho dovuto rimuovere “/” prima del percorso del server e della cartella di destinazione. Il motivo è perché Download è la prima cartella che posso elencare dopo aver eseguito ssh sul server, ad esempio: ssh [email protected]
Funziona:
sudo scp -rp /Users/macintosh.vn/Downloads/bbhs_20190301.zip [email protected]: Download
Non funzionava:
sudo scp -rp /Users/macintosh.vn/Downloads /bbhs_20190301.zip [email protected]: / Download
Risposta
Soluzione facile. Assicurati di essere root. SCP al telecomando e ti chiederà la password di root di quella macchina. Ho appena avuto questo problema che era la soluzione. Li esegui come root.
Commenti
- Poiché i login di root sono normalmente disabilitati in sshd_config , dovresti mostrare allOP come per cambiarlo (anche se ‘ non è consigliato).
- Perché insisti a usare root per copiare un (qualsiasi) file? Nota anche la risposta accettata di circa 7 anni fa …
Risposta
prima di utilizzare il comando scp, make assicurati di concedere le autorizzazioni di lettura, scrittura ed esecuzione a tutti allesterno. “chmod 777 nome_file”
Commenti
- puoi copiare file che non sono 777
scp My_file.txt user_id@server:
Copia nella cartella home dellutente.