码迷,mamicode.com
首页 > 其他好文 > 详细

SSH无密码登录及SCP

时间:2019-10-09 15:39:06      阅读:107      评论:0      收藏:0      [点我收藏+]

标签:rgs   获取文件   解决   调用脚本   hadoop2   sof   用户名   rsa   退出   

1 scp命令
1)scp可以实现服务器与服务器之间的数据拷贝。
2)案例实操

(1)将hadoop101中/opt/module和/opt/software文件拷贝到hadoop102、hadoop103和hadoop104上。
  [root@hadoop101 /]# scp -r /opt/module/ root@hadoop102:/opt
(2)将hadoop102服务器上的文件拷贝到当前用户下。
  [root@hadoop101 opt]# scp root@hadoop102:/etc/profile /opt/tmp/
(3)实现两台远程机器之间的文件传输(hadoop103主机文件拷贝到hadoop104主机上)
  [root@hadoop102 test]$ scp root@hadoop103:/opt/test/haha root@hadoop104:/opt/test/
(4)将文件从192.168.1.103上拉取到本系统中
  [root@hadoop102 test]$ scp root@hadoop103:/opt/test/haha ./

2 SSH无密码登录
1)配置ssh
(1)基本语法
ssh 另一台电脑的ip地址
(2)ssh连接时出现Host key verification failed的解决方法
[root@hadoop2 opt]# ssh 192.168.1.103
:yes
2)无密钥配置
(1)进入到我的home目录
cd ~/.ssh
(2)生成公钥和私钥:
ssh-keygen -t rsa
(3)将公钥拷贝到要免密登录的目标机器上(包括本身机器都是需要配置的)
ssh-copy-id 192.168.1.102

3).ssh文件夹下的文件功能解释
(1)~/.ssh/known_hosts :记录ssh访问过计算机的公钥(public key)
(2)id_rsa :生成的私钥
(3)id_rsa.pub :生成的公钥
(4)authorized_keys :存放授权过得无秘登录服务器公钥

3 rsync
rsync远程同步工具,主要用于备份和镜像。(对原以有不同名文件不动,只增不减;对原有同名文件会进行修改)。

4 编写集群分发脚本xsync
案例实操:
(1)在/usr/local/bin目录下创建xsync文件,文件内容如下:
#!/bin/bash
#1 获取输入参数个数,如果没有参数,直接退出
pcount=$#
if((pcount==0)); then
echo no args;
exit;
fi

#2 获取文件名称
p1=$1
fname=`basename $p1`
echo fname=$fname

#3 获取上级目录到绝对路径
pdir=`cd -P $(dirname $p1); pwd`
echo pdir=$pdir

#4 获取当前用户名称
user=`whoami`

#5 循环
for((host=103; host<105; host++)); do
#echo $pdir/$fname $user@hadoop$host:$pdir
echo --------------- hadoop$host ----------------
rsync -rvl $pdir/$fname $user@hadoop$host:$pdir
done
(2)修改脚本 xsync 具有执行权限
[root@hadoop102 bin]# chmod a+x xsync = [root@hadoop102 bin]# chmod 777 xsync
(3)调用脚本形式:xsync 文件名称

5 编写分发脚本xcall

具体实现:
(1)在/usr/local/bin目录下创建xcall文件,文件内容如下:
#!/bin/bash
pcount=$#
if((pcount==0));then
echo no args;
exit;
fi

echo -------------localhost----------
$@
for((host=101; host<=108; host++)); do
echo ----------hadoop$host---------
ssh hadoop$host $@
done
(2)修改脚本 xcall 具有执行权限
[root@hadoop102 bin]# chmod a+x xcall
(3)调用脚本形式: xcall 操作命令
[root@hadoop102 ~]# xcall rm -rf /opt/tmp/profile

SSH无密码登录及SCP

标签:rgs   获取文件   解决   调用脚本   hadoop2   sof   用户名   rsa   退出   

原文地址:https://www.cnblogs.com/zyanrong/p/11641788.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!