【发布时间】:2016-03-07 13:40:21
【问题描述】:
我想使用 ssh 在远程服务器上创建一个文件,但我不能这样做。我有 3 个远程服务器,我正在编写一个 bash 脚本来在每个服务器上创建文件。
我使用的命令是:
`ssh $1@$2 > /etc/kafka/kafka_2.11-0.9.0.0/config/test.sh <<EOL
broker.id=$3
listeners=$4
num.network.threads=3
num.io.threads=8
socket.send.buffer.bytes=102400
socket.receive.buffer.bytes=102400
socket.request.max.bytes=104857600
log.dirs=/tmp/kafka-logs
num.partitions=1
num.recovery.threads.per.data.dir=1
log.retention.hours=168
log.segment.bytes=1073741824
log.retention.check.interval.ms=300000
log.cleaner.enable=false
zookeeper.connection.timeout.ms=6000
delete.topic.enable=true
ssl.client.auth=required
security.inter.broker.protocol=SSL
EOL`
但它似乎不起作用。
【问题讨论】:
-
作为替代方案,请考虑在您的机器上创建一个文件并使用
scp myfile username@remotehost:/the/place/to/copy将其复制到远程主机 -
是的,我想到了那个选项,但想知道为什么这不起作用。实际上它是一个用于启动程序的属性文件,所以不想一直更改它然后 scp 它
-
回显“东西” | ssh user@host "cat - >> 文件"
-
您是否在脚本中的某处使用了您的 sn-p?您是否可以免密码访问您的远程主机(即
id_rsa.pub复制到远程服务器)。否则你可能需要在远程主机上授权,这可能就是你的原因 -
selyunin ,是的,我有 id_rsa.pub。实际上所有虚拟机都在云空间中,因此配置已完成
标签: ssh ubuntu-14.04