首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

通过ssh运行多个rsync命令,并且只输入一次ssh密码

,可以使用ssh密钥对来实现。下面是具体步骤:

  1. 生成ssh密钥对:使用ssh-keygen命令生成公钥和私钥。在终端中执行以下命令:
  2. 生成ssh密钥对:使用ssh-keygen命令生成公钥和私钥。在终端中执行以下命令:
  3. 这将生成一个RSA密钥对,其中包括一个公钥(id_rsa.pub)和一个私钥(id_rsa)。
  4. 将公钥添加到目标服务器:将生成的公钥(id_rsa.pub)复制到目标服务器的~/.ssh/authorized_keys文件中。可以使用以下命令将公钥复制到目标服务器:
  5. 将公钥添加到目标服务器:将生成的公钥(id_rsa.pub)复制到目标服务器的~/.ssh/authorized_keys文件中。可以使用以下命令将公钥复制到目标服务器:
  6. 其中,user是目标服务器的用户名,server_ip是目标服务器的IP地址。
  7. 配置ssh配置文件:在本地机器上编辑ssh配置文件(~/.ssh/config),添加以下内容:
  8. 配置ssh配置文件:在本地机器上编辑ssh配置文件(~/.ssh/config),添加以下内容:
  9. server替换为目标服务器的别名,server_ip替换为目标服务器的IP地址,user替换为目标服务器的用户名。
  10. 运行多个rsync命令:现在可以通过ssh连接到目标服务器并运行多个rsync命令,而无需每次输入密码。在终端中执行以下命令:
  11. 运行多个rsync命令:现在可以通过ssh连接到目标服务器并运行多个rsync命令,而无需每次输入密码。在终端中执行以下命令:
  12. 其中,server是在ssh配置文件中定义的目标服务器别名,/path/to/source1/path/to/source2是本地机器上的源文件路径,user是目标服务器的用户名,destination是目标服务器的IP地址或域名,/path/to/destination1/path/to/destination2是目标服务器上的目标路径。

这样,通过ssh运行多个rsync命令时,只需要输入一次ssh密码即可完成操作。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • rsync使用详解

    Rsync(remote synchronize)是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件。Rsync使用所谓的“Rsync算法”来使本地和远 程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部分,而不是每次都整份传送,因此速度相当快。 Rsync本来是用于替代rcp的一个工具,目前由rsync.samba.org维护,所以rsync.conf文件的格式类似于samba的 主配置文件。Rsync可以通过rsh或ssh使用,也能以daemon模式去运行,在以daemon方式运行时Rsync server会打开一个873端口,等待客户端去连接。连接时,Rsync server会检查口令是否相符,若通过口令查核,则可以开始进行文件传输。第一次连通完成时,会把整份文件传输一次,以后则就只需进行增量备份。 Rsync支持大多数的类Unix系统,无论是Linux、Solaris还是BSD上都经过了良好的测试。此外,它在windows平台下也有相应的版本,如cwRsync和Sync2NAS等工具。 Rsync的基本特点如下: 1.可以镜像保存整个目录树和文件系统; 2.可以很容易做到保持原来文件的权限、时间、软硬链接等; 3.无须特殊权限即可安装; 4.优化的流程,文件传输效率高; 5.可以使用rsh、ssh等方式来传输文件,当然也可以通过直接的socket连接; 6.支持匿名传输。 2、Rsync同步算法 Rsync只所以同步文件的速度相当快,是因为“Rsync同步算法”能在很短的时间内计算出需要备份的数据,关于Rsync的同步算法描述如下: 假定在1号和2号两台计算机之间同步相似的文件A与B,其中1号对文件A拥有访问权,2号对文件B拥有访问权。并且假定主机1号与2号之间的网络带宽很小。那么rsync算法将通过下面的五个步骤来完成: 1、2号将文件B分割成一组不重叠的固定大小为S字节的数据块,最后一块可能会比S 小。 2、2号对每一个分割好的数据块执行两种校验:一种是32位的滚动弱校验,另一种是128位的MD4强校验 3、2号将这些校验结果发给1号。 4、1号通过搜索文件A的所有大小为S的数据块(偏移量可以任选,不一定非要是S的倍数),来寻找与文件B的某一块有着相同的弱校验码和强校验码的数据块。这项工作可以借助滚动校验的特性很快完成。 5、1号发给2号一串指令来生成文件A在2号上的备份。这里的每一条指令要么是对文件B经拥有某一个数据块而不须重传的证明,要么是一个数据块,这个数据块肯定是没有与文件B的任何一个数据块匹配上的。 3、Rsync参数说明 3.1 rsyncd.conf配置文件 -、全局参数 在文件中[module]之前的所有参数都是全局参数,当然也可以在全局参数部分定义模块参数,这时候该参数的值就是所有模块的默认值。 port 指定后台程序使用的端口号,默认为873。 motd file "motd file"参数用来指定一个消息文件,当客户连接服务器时该文件的内容显示给客户,默认是没有motd文件的。 log file "log file"指定rsync的日志文件,而不将日志发送给syslog。比如可指定为“/var/log/rsyncd.log”。 pid file 指定rsync的pid文件,通常指定为“/var/run/rsyncd.pid”。 syslog facility 指 定rsync发送日志消息给syslog时的消息级别,常见的消息级别是:uth, authpriv, cron, daemon, ftp, kern, lpr, mail, news, security, sys-log, user, uucp, local0, local1, local2, local3,local4, local5, local6和local7。默认值是daemon。 二、模块参数 主要是定义服务器哪个目录要被同步。其格式必须为“[module]”形式,这个名字就是在rsync 客户端看到的名字,其实有点象Samba服务器提供的共享名。而服务器真正同步的数据是通过 path 来指定的。我们可以根据自己的需要,来指定多个模块,模块中可以定义以下参数: comment 给模块指定一个描述,该描述连同模块名在客户连接得到模块列表时显示给客户。默认没有描述定义。 path 指定该模块的供备份的目录树路径,该参数是必须指定的。 use chroot 如 果"use chroot"指定为true,那么rsync在传输文件以前首先chroot到path参数所指定的目录下。这样做的原因是实现额外的安全防护,但是缺 点是需要以roots权限,并且不能备份指

    02

    RSync实现文件备份同步

    rsync是类unix系统下的数据镜像备份工具,从软件的命名上就可以看出来了——remote sync。它的特性如下: 1、可以镜像保存整个目录树和文件系统。 2、可以很容易做到保持原来文件的权限、时间、软硬链接等等。 3、无须特殊权限即可安装。 4、优化的流程,文件传输效率高。 5、可以使用rcp、ssh等方式来传输文件,当然也可以通过直接的socket连接。 6、支持匿名传输。 rsync实现网站的备份,文件的同步,不同系统的文件的同步,如果是windows的话,需要windows版本cwrsync] 一、什么是rsync rsync,remote synchronize顾名思意就知道它是一款实现远程同步功能的软件,它在同步文件的同时,可以保持原来文件的权限、时间、软硬链接等附加信息。 rsync是用 “rsync 算法”提供了一个客户机和远程文件服务器的文件同步的快速方法,而且可以通过ssh方式来传输文件,这样其保密性也非常好,另外它还是免费的软件。 rsync 包括如下的一些特性: 能更新整个目录和树和文件系统; 有选择性的保持符号链链、硬链接、文件属于、权限、设备以及时间等; 对于安装来说,无任何特殊权限要求; 对于多个文件来说,内部流水线减少文件等待的延时; 能用rsh、ssh 或直接端口做为传输入端口; 支持匿名rsync 同步文件,是理想的镜像工具; 二、架设rsync服务器 架设rsync 服务器比较简单,写一个配置文件rsyncd.conf 。文件的书写也是有规则的,我们可以参照rsync.samba.org 上的文档来做。当然我们首先要安装好rsync这个软件才行; A、rsync的安装; 获取rsync rysnc的官方网站:http://rsync.samba.org/可以从上面得到最新的版本。目前最新版是3.05。当然,因为rsync是一款如此有用的软件,所以很多Linux的发行版本都将它收录在内了。 软件包安装

    02

    rsync+inotify实现触发式远程实时同步

    在Linux平台下我们可以利用2.6内核的inotify监控文件系统机制,通过inotify-tools来实现实时同步了。 具体操作如下: 1.安装所需软件 目前各大Linux发行版本都已经具有了rsync与inotify-tools的软件包,推荐通过RPM,yum,apt-get等方式进行安装。 RHEL: [root@server1 ~]# rpm -ivh rsync-* [root@server1 ~]# rpm -ivh inotify-tools-* CentOS: [root@server1 ~]# yum install rsync inotify-tools Ubuntu: [root@server1 ~]# apt-get install rsync inotify-tools 采用源码方式安装的步骤如下: [root@server1 ~]# wget ftp://ftp.samba.org/pub/rsync/rsync-3.0.8.tar.gz [root@server1 ~]# tar xzvf rsync-3.0.8.tar.gz [root@server1 ~]# cd rsync-3.0.8 [root@server1 ~]# ./configure [root@server1 ~]# make [root@server1 ~]# make install [root@server1 ~]# wget http://github.com/downloads/rvoicilas/inotify-tools/inotify-tools-3.14.tar.gz [root@server1 ~]# tar xzvf inotify-tools-3.14.tar.gz [root@server1 ~]# cd inotify-tools-3.14 [root@server1 ~]# ./configure [root@server1 ~]# make [root@server1 ~]# make install 2.配置ssh key信任 建议通过普通用户进行操作,理由是通过root操作本身就危险,免密码登陆的root就更危险了。 在两台服务器上创建rsync用户 [root@server1 ~]# useradd -m rsync [root@server1 ~]# passwd rsync [root@server2 ~]# useradd -m rsync [root@server2 ~]# passwd rsync [root@server1 ~]# su - rsync [rsync@server1 ~]$ ssh-keygen -t rsa 在提示保存私钥(key)和公钥(public key)的位置时,使用默认值; 在提示是否需要私钥密码(passphrase)时,直接敲回车,即不使用私钥密码。 之后,将生成一对密钥,id_rsa(私钥文件)和id_rsa.pub(公钥文件),保存在/home/rsync/.ssh/目录下。 将公钥添加到远程主机的 authorized_keys 文件中 将文件上传到远程主机(假设远程主机IP为192.168.10.4) [rsync@server1 ~]$ scp ~/.ssh/id_rsa.pub rsync@192.168.10.4:/home/rsync/ 使用rsync用户SSH到登陆到远程主机,并将公钥添加到 authorized_keys 文件中 [rsync@server2 ~]$ mkdir .ssh [rsync@server2 ~]$ chmod 700 .ssh [rsync@server2 ~]$ mv ~/id_rsa.pub ~/.ssh/authorized_keys 重启SSH服务 [root@server1 ~]# /etc/init.d/sshd restart [root@server2 ~]# /etc/init.d/sshd restart 3.创建inotify_rsync.sh脚本 [root@server1 ~]# vim inotify_rsync.sh 1    #!/bin/sh 2    SRC=/home/rsync/test 3    DST=rsync@192.168.10.4:/home/rsync/test 4     5    /bin/su - rsync 6    /usr/local/bin/inotifywait -mrq -e modify,delete,create,attrib ${SRC} | while read D E F 7            do 8                    /usr/bin/rsync -ahqzt

    02

    对比cp和scp命令 将数据从一台linux服务器复制到另一台linux服务器

    cp命令用来将一个或多个源文件或者目录复制到指定的目的文件或目录。它可以将单个源文件复制成一个指定文件名的具体的文件或一个已经存在的目录下。cp命令还支持同时复制多个文件,当一次复制多个文件时,目标文件参数必须是一个已经存在的目录,否则将出现错误。 -a:此参数的效果和同时指定"-dpR"参数相同; -d:当复制符号连接时,把目标文件或目录也建立为符号连接,并指向与源文件或目录连接的原始文件或目录; -f:强行复制文件或目录,不论目标文件或目录是否已存在; -i:覆盖既有文件之前先询问用户; -l:对源文件

    05

    运维同步rsync

    Rsync(remote  rynchronization)是一款开源的、快速的、多功能的、可实现全量以及增量的本地或者远程数据同步的备份的优秀工具,可使本地主机不同分区或目录之间及本地和远程两台主机之间的数据快速同步镜像,远程备份等功能同时它在同步文件的同时可以保持原来文件的权限、时间、软硬链接等附加信息。可以再本地不同分区以及目录之间全量以及增量的复制数据,不是加密的,可以实现删除文件和目录的功能。在同步备份数据时,通过其独特的quick check算法,仅同步大小或者最后的修改时间发生变化的文件或者目录,当然也可以根据权限、属主等属性的变化同步,但需指定相应的参数,甚至可以实现只同步一个文件里面变化的部分,实现数据的差异化备份,所以可以实现快速的同步备份数据

    03
    领券