richiesta di esecuzione scp non riuscita sul canale 0


11

Sto provando a scaricare i file SCP da un computer all'altro, comunque

richiesta exec non riuscita sul canale 0 ".

Quando uso SSH, tuttavia, posso accedere alla macchina senza problemi. Sto usando la funzione SCP in Cygwin se questo aiuta.

Quello che ho trovato durante la ricerca online ha parlato del file ".bashrc", tuttavia l'unico che ho trovato è "bash.bashrc".

Questo è il comando che ho usato:

scp /filelocation/file user@hostname:/folderlocation

Ho anche provato con l'indirizzo IP anziché il nome host, ma ho lo stesso risultato.

Ho verificato che il sito remoto abbia il comando SCP.

Risposte:


0

Per vedere il file .bashrc (e altri file che iniziano con un punto) devi farlo

ls -a

La semplice soluzione consiste nel rinominare i file .profile, .bashrc, .login, .bash_profile in modo che non vengano inclusi. Questi sono noti come file di avvio della shell.

Se il tuo scp ora funziona, la risposta si trova in uno di quei file.

Fondamentalmente uno dei file di avvio della shell sta restituendo l'output e questo rovina la negoziazione ssl in corso.

Potrebbe essere semplice come inviare sequenze di escape speciali per impostare il titolo della finestra. Un altro colpevole è il comando stty.

Si desidera circondare l'output al terminale solo dopo aver effettuato l'accesso

if tty -s >/dev/null 2>&1; then
    # here if have a real terminal associated to send stty commands 
    # or other special escape sequences to terminal
fi

0

Sono d'accordo con strobelight che questo errore proviene spesso dall'output dei file di inizializzazione bash di .bashrc (e altri).

Ci sono alcuni modi integrati in bash per testare shell interattive: riferimento avanzato alla guida di scripting bash , riferimento serverfault .

Quello che ho visto più spesso è testare $ PS1 per quando eseguire l'output:

if [ "$PS1" ]; then
    echo "some message"
fi
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.