sshpass с SSH работает, но sshpass с SCP не

В моем случае у меня есть ситуация, когда я пытаюсь отправить файл через scp с помощью sshpass, но я не могу. Мне нужно использовать скрипт с паролем, но самый простой способ не работает

на hostName2 у меня нет возможности увидеть конфигурацию sshd_config и т. д. и отправить ssh-copy-id, мне нужно использовать 'myPass'

посмотри на это:

sshpass -p 'myPass' ssh -p 2122 tomcat@xxx.xxx.xx.xxx 

^ ОК

 sshpass -p 'myPass' scp ~/myDir/testPB.txt tomcat@xxx.xxx.xx.xxx:/chroot/tomcat/testPB 

^ НЕ ОК

Он отлично работает:

 [tomcat@hostName .ssh]$ sshpass -p 'myPass' ssh -p 2122 tomcat@xxx.xxx.xx.xxx Last login: Mon Aug 22 11:41:32 2016 from xxx.xxx.xx.xxx ################# # hostName2 # ################# JAVA_HOME=/opt/java TOMCAT_HOME = /chroot/tomcat LOG = /log/tomcat , /log/apache LOG_ARCH = /log/arch/tomcat , /log/arch/apache STATS = /log/stats 

и есть проблема:

 [tomcat@hostName .ssh]$ sshpass -p 'myPass' scp -vvv ~/myDir/testPB.txt tomcat@xxx.xxx.xx.xxx:/chroot/tomcat/testPB Executing: program /usr/bin/ssh host 195.182.52.175, user tomcat, command scp -v -t /chroot/tomcat/testPB OpenSSH_5.3p1, OpenSSL 1.0.1e-fips 11 Feb 2013 debug1: Reading configuration data /etc/ssh/ssh_config debug1: Applying options for * debug2: ssh_connect: needpriv 0 debug1: Connecting to xxx.xxx.xx.xxx [xxx.xxx.xx.xxx] port 22. debug1: Connection established. debug1: identity file /home/tomcat/.ssh/identity type -1 debug1: identity file /home/tomcat/.ssh/identity-cert type -1 debug3: Not a RSA1 key file /home/tomcat/.ssh/id_rsa. debug2: key_type_from_name: unknown key type '-----BEGIN' debug3: key_read: missing keytype debug3: key_read: missing whitespace debug3: key_read: missing whitespace debug3: key_read: missing whitespace debug3: key_read: missing whitespace debug3: key_read: missing whitespace debug3: key_read: missing whitespace debug3: key_read: missing whitespace debug3: key_read: missing whitespace debug3: key_read: missing whitespace debug3: key_read: missing whitespace debug3: key_read: missing whitespace debug3: key_read: missing whitespace debug3: key_read: missing whitespace debug3: key_read: missing whitespace debug3: key_read: missing whitespace debug3: key_read: missing whitespace debug3: key_read: missing whitespace debug3: key_read: missing whitespace debug3: key_read: missing whitespace debug3: key_read: missing whitespace debug3: key_read: missing whitespace debug3: key_read: missing whitespace debug3: key_read: missing whitespace debug3: key_read: missing whitespace debug3: key_read: missing whitespace debug2: key_type_from_name: unknown key type '-----END' debug3: key_read: missing keytype debug1: identity file /home/tomcat/.ssh/id_rsa type 1 debug1: identity file /home/tomcat/.ssh/id_rsa-cert type -1 debug1: identity file /home/tomcat/.ssh/id_dsa type -1 debug1: identity file /home/tomcat/.ssh/id_dsa-cert type -1 debug1: identity file /home/tomcat/.ssh/id_ecdsa type -1 debug1: identity file /home/tomcat/.ssh/id_ecdsa-cert type -1 ssh_exchange_identification: Connection closed by remote host lost connection 

что не так ? Может ли кто-нибудь помочь?

вы используете альтернативный порт с ssh -p 2122 но не с scp .

пытаться

 sshpass -p 'myPass' scp -P 2122 ~/myDir/testPB.txt tomcat@xxx.xxx.xx.xxx:/chroot/tomcat/testPB 

обратите внимание на верхний регистр P

по man scp

-P порт Указывает порт для подключения к удаленному хосту. Обратите внимание, что этот параметр написан с капиталом «P», потому что -p уже зарезервирован для сохранения времени и режимов файла в rcp (1).