Linux两台服务器之间复制文件及免密码登录的方法

有时候搭建集群机器是,需要在多台机器中间相互拷贝文件,一种方式是同事sftp拷贝到本机,再分别拷贝到其他服务器上。这里介绍一种直接在两台服务器之间拷贝文件且去掉繁琐的登陆操作的方法。

两台服务器之间拷贝文件

采用linux命令scp可以在两台电脑之间复制文件,如有两台服务器192.168.129.100/101,现在需要拷贝100 /etc/passwd文件到101服务器的/etc目录下,登陆100服务器,知道101的用户root的密码为123456

scp /etc/passwd root@192.168.129.101:/etc/

第一次会提示授权操作,输入yes后再输入root用户的密码,拷贝完成。

服务器之间免密码登陆

现在每次拷贝文件的时候都需要输入密码非常麻烦,现在介绍一种采用公钥/私钥认证的方式去掉密码登陆

在100服务器上进入.ssh目录,

cd ~/.ssh
ssh-keygen -t rsa
scp id_rsa.pub root@192.168.129.101:~/.ssh

进入101服务器,将公钥导入到~/.ssh/authorized_keys,

cd ~/.ssh
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
~/.ssh权限设置为700
~/.ssh/authorized_keys的权限设置为600 

这是Linux的安全要求,如果权限不对,自动登录将不会生效

完毕之后,退出服务器的登录,再使用ssh登录,你就会发现服务器不会再向你询问密码了.

以上所述是小编给大家介绍的Linux两台服务器之间复制文件及免密码登录的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

(0)

相关推荐

  • linux下wc统计文件的个数、行数、字数、字节数等信息方法

    Linux系统中的wc(Word Count)命令的功能为统计指定文件中的字节数.字数.行数,并将统计结果显示输出. 1.命令格式: wc [选项]文件- 2.命令功能: 统计指定文件中的字节数.字数.行数,并将统计结果显示输出.该命令统计指定文件中的字节数.字数.行数.如果没有给出文件名,则从标准输入读取.wc同时也给出所指定文件的总统计数. 3.命令参数: -c 统计字节数. -l 统计行数. -m 统计字符数.这个标志不能与 -c 标志一起使用. -w 统计字数.一个字被定义为由空白.跳格

  • Linux使用logrotate来切割日志文件

    程序在运行的时候为了了解运行状态,会输出日志文件,时间久了日志文件会变得非常大,甚至达到GB级别.我在golang应用里使用logrus包来打日志,配置和使用都很方便,就是没有日志分割的功能,应用在线上运行一个月后日志文件都已经达到上百兆.后来发现了logrotate,这是centos自带的日志分割工具,都不用安装额外组件就能实现定时分割日志. 1.运行原理 logrotate由系统的cron运行,位置在/etc/cron.daily/logrotate #!/bin/sh /usr/sbin/

  • 使用Linux shell脚本实现FTP定时执行批量下载指定文件

    使用FTP定时批量下载指定文件的shell脚本,具体实例介绍如下所示: 1.目标FTP服务器地址 #FTP服务器地址 ip=10.19.15.23 2.FTP账号和密码 u=账号 p=密码 3.使用mget结合正则表达式下载文件 #获取昨天日期,为后面下载使用 T=`date -d yesterday +%Y%m%d` 4.连接FTP服务器,到指定路径下下载文件 ftp -n <<EOF open $ip user $u $p binary cd /hour #远程服务器文件目录 lcd /h

  • linux下挂载VHD等虚拟磁盘文件的方法

    1.RAW格式虚拟磁盘 linux下可以直接挂载raw格式的虚拟磁盘镜像文件. 例如,这里先用dd命令创建一个文件,然后将其格式化为ext4格式(只有一个分区),然后挂载到/mnt目录. 下面的raw.img磁盘镜像文件就一个分区,所以没有使用offset=来指定偏移.如果有多个分区,则可以通过指定偏移来挂载.具体的可以查阅mount命令的相关参数信息. > dd if=/dev/zero of=raw.img bs=1M count=512 记录了512+0 的读入 记录了512+0 的写出

  • Linux makefile 和shell文件相互调用实例详解

    shell 文件内调用makefile文件: #!/bin/bash cd ctemplate-2.1 ./configure sudo make -f install cd ../ cd TemplateProcesser make 说明:./configure文件是shell脚本文件,即shell内调用shell文件是很容易的:TemplateProcesser目录内有Makefile文件,调用方式,直接:make makefile文件内调用shell脚本文件: SHELL := /bin/

  • Linux 判断文件修改时间和系统时间差

     Linux 判断文件修改时间和系统时间差 #!/bin/bash timestamp=`date +%s` filepath=/root/yuhui/ta-2016030307.log if [ -f $filepath ]; then echo "文件存在!路径为:$filepath" filetimestamp=`stat -c %Y $filepath` echo "文件最后修改时间戳:$filetimestamp" timecha=$[$timestamp

  • linux 查找大目录和大文件的方法(推荐)

    今天,在机器上执行命令的时候,发现tab键无法补全了,原因竟然是磁盘空间满了,使用df命令看了一下,确实如此,每个分区的使用率都得到100%了,因此想找到系统中的大目录和大文件,删除一部分. 主要涉及到两个命令 du和find du命令(查找系统中的大目录): -h已易读的格式显示指定目录或文件的大小 -s选项指定对于目录不详细显示每个子目录或文件的大小 -m或–megabytes 以1MB为单位 –max-depth=1:其中,数字"1"是指查询结果中最多显示的目录层数,这里指最多显

  • Linux两台服务器之间复制文件及免密码登录的方法

    有时候搭建集群机器是,需要在多台机器中间相互拷贝文件,一种方式是同事sftp拷贝到本机,再分别拷贝到其他服务器上.这里介绍一种直接在两台服务器之间拷贝文件且去掉繁琐的登陆操作的方法. 两台服务器之间拷贝文件 采用linux命令scp可以在两台电脑之间复制文件,如有两台服务器192.168.129.100/101,现在需要拷贝100 /etc/passwd文件到101服务器的/etc目录下,登陆100服务器,知道101的用户root的密码为123456 scp /etc/passwd root@1

  • Linux两台服务器之间传输文件和文件夹操作步骤

    今天处理一个项目要迁移的问题,突然发现这么多图片怎么移过去,可能第一时间想到的是先从这台服务器下载下来,然后再上传到另外一台服务器上面去,这个方法确实是可行,但是实在是太费时间了,今天我就教大家怎么快速的在两台服务器之间传输文件和文件夹. 第一步:打开我们的远程连接工具,输入账号密码登录到服务器,如图: 点击文件打开或者新建一个会话,新建会话输入主机的ip和账号密码即可,如果已经登录过,直接点击文件下面那个带+号的图标就可以了. 第二步:找到你要传输的文件或者文件夹: 这里有这么多图片,我随便传

  • Linux中不同用户之间复制文件的两个方法

    前言 考虑如下情景:foo用户home目录下有一文件file.txt,要将其copy至bar用户的home目录.Linux对用户home目录有严格的权限限制,非owner用户或者同group用户无权限读写,除非是root(至高无上的root).如果没有root权限,有什么办法把file.txt 复制到bar用户的home目录下呢? 想到两个办法. 第一个办法,先用foo用户登录,把文件copy到系统临时目录/tmp,然后切换到bar用户,再从系统临时目录/tmp把文件copy到自己的home目录

  • 两台服务器之间无密码传输数据和操作的方法

    我们知道如果要向远程服务器传输数据和操作必须输入用户名和密码远程登录服务器 ,或用FTP等协议,都需要权限控制. 然而如果是两台服务器间的软件需要通讯和数据传输,如hadoop集群中机器互访,是不是每次也要输入用户名和密码?那是不是很麻烦?下面介绍SSH来解决这个问题(不是JAVA中的SSH概念) SSH是一种网络协议,用于计算机之间的加密登录. 如果一个用户从本地计算机,使用SSH协议登录另一台远程计算机,我们就可以认为,这种登录是安全的,即使被中途截获,密码也不会泄露. 最早的时候,互联网通

  • Linux修改hostname与免密码登录的方法

    修改hostname [root@centos7 ~]$ hostnamectl set-hostname hadoop001 # 使用这个命令会立即生效且重启也生效 [root@centos7 ~]$ hostname # 查看下 hadoop001 [root@centos7 ~]$ vim /etc/hosts # 编辑下hosts文件, 给127.0.0.1添加hostname [root@centos7 ~]$ cat /etc/hosts # 检查 127.0.0.1 localho

  • linux两台服务器实现自动同步文件

    服务器B(172.17.166.11)上开机或者重启会自动拉取服务器A(172.17.166.10)上指定目录下所有文件 1.创建服务器B到服务器A的互信 (1)服务器B上执行 ssh-keygen -t rsa 一路回车 (2)服务器B上执行 ssh-copy-id -i 172.17.166.10 回车输入服务器A的密码 (3)在服务器B上 执行 ssh 172.17.166.10 验证是否可以免密登录到服务器A 2.服务器B上 创建目录结构如下 [root@w-11 home]# tree

  • Linux下SSH免密码登录配置详解

    假设有 A. B 两台 Linux 服务器,我们希望能够从其中一台服务器通过 SSH 免密码登录到另一台服务器. 两台服务器的信息如下: 主机名 IP地址 免密码登录用户名 server1 192.168.12.11 guest1 server2 192.168.12.12 guest2 环境设置(root权限) 1.关闭防火墙和SELinux Redhat使用了SELinux来增强安全,关闭的办法为: a. 永久有效 修改 /etc/selinux/config 文件中的 SELINUX=en

  • java实现两台服务器间文件复制的方法

    本文实例讲述了java实现两台服务器间文件复制的方法.分享给大家供大家参考.具体分析如下: 通常我们使用最多的文件复制功能就是同服务器之间的文件复制功能,这里介绍的是在普通文件复制上功能升级,可以实现两台服务器实现文件的复制,下面一起来看看代码. 1.服务器端 复制代码 代码如下: package sterning; import java.io.BufferedInputStream; import java.io.DataInputStream; import java.io.DataOut

  • Linux在两个服务器直接传文件的操作方法

    目录 1.当从一个远程服务器传输文件到另一个服务器上(你想传给别人文件) 2.在本地服务器,从另一个服务器中获取文件(你想从别人获取文件) scp是secure copy的简写, 是 linux 系统下基于 ssh 登陆进行安全的远程文件拷贝命令.scp 是加密的,rcp 是不加密的,scp 是 rcp 的加强版. 因为scp传输是加密的,可能会稍微影响一下速度.另外,scp还非常不占资源,不会提高多少系统负荷,在这一点上,rsync就远远不及它了.虽然 rsync比scp会快一点,但当小文件众

  • linux服务器之间传输文件的四种方式

    本文为大家分享了linux服务器之间传输文件的四种方式,供大家参考,具体内容如下 1. scp [优点]简单方便,安全可靠:支持限速参数  [缺点]不支持排除目录 [用法] scp就是secure copy,是用来进行远程文件拷贝的.数据传输使用 ssh,并且和ssh 使用相同的认证方式,提供相同的安全保证 . 命令格式: scp [参数] <源地址(用户名@IP地址或主机名)>:<文件路径> <目的地址(用户名 @IP 地址或主机名)>:<文件路径> 举例

随机推荐