cp: cannot stat: nessun file o directory


10

Ricevo un errore quando provo a copiare un file dal mio computer locale su un server remoto con ssh. Ottengo lo stesso errore se utilizzo cpo scp.

Ecco il mio input per l'errore risultante:

[root@xxx.xx.xxx.xx /]# cp /home/username/some.xml root@xxx.xx.xxx.xx:/path/to/directory/  
cp: cannot stat ‘/home/username/some.xml’: No such file or directory

Ho controllato e c'è sicuramente un file sul percorso /home/username/some.xmlsul mio computer locale.

Sia il computer locale che il server remoto sono in esecuzione CentOS 7. Come posso risolvere questo errore e copiarlo correttamente?


1
Riesci a incollare l'output di (come root) ls -l /home/username/some.xml?
Mark Plotnick,

È necessario ottenere il percorso corretto per iniziare il nome file, se è possibile trovare il file nel browser dei file, si dovrebbe essere in grado di trovarlo nel terminale navigando nelle directory con cd e usando ls per visualizzare ulteriori file e directory.
Chris Davidson,

@MarkPlotnick I tuoi suggerimenti mi hanno spinto a risolvere il problema. Come root@remote.server.ip, ho digitato exit, quindi ho digitato il scpcomando sopra e ha funzionato. Il problema era che ero loggato come root@remote.web.server, quindi vedevo solo la struttura di directory remote.web.server, che è diversa dalla struttura di directory del mio computer locale. Dal momento che mi hai fatto scoprire questo, sarei felice di accettare una risposta che potresti inviare. Grazie.
CodeMed

Risposte:


6

Se si è effettuato l'accesso al computer locale , si utilizzerà in scpquesto modo:

scp /home/username/some.xml root@remote.machine.ip.address:/path/to/directory/

Se si è effettuato l'accesso al computer remoto (come nell'OP), utilizzare in scpquesto modo:

scp username@local.machine.ip.address:/home/username/some.xml /path/to/directory

Sostituire gli indirizzi IP come indicato nei comandi.


Dopo aver provato diverse soluzioni tutto il giorno, questo funziona per me.
Hobby Dev,

2

Prima di tutto dovrai usare SCP, non c'è modo di usare semplicemente cp per copiare file sulla rete.

Il comando scp dovrebbe essere simile al seguente dal tuo esempio, nota che la struttura della directory dovrà esistere sul server che riceve il lato file;

scp /home/username/some.xml root@xxx.xxx.xxx.xxx:/path/to/directory/

Se non lo hai già fatto, dovrai accedere al server in cui stai copiando il file e creare la directory in cui desideri copiare il file, ad esempio;

mkdir /path/to/directory

Un'alternativa sarebbe usare rsync.


Questo non funziona Ho appena provato di nuovo ora, verificando che ho fatto esattamente come hai scritto, che è la stessa cosa a cui ho fatto riferimento nel mio OP sopra quando ho affermato che questo genera lo stesso errore sia che io usi scpo cp.
CodeMed
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.