使用rcp命令实现从远程机器拷贝文件
Posted Feng_Forest
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用rcp命令实现从远程机器拷贝文件相关的知识,希望对你有一定的参考价值。
rcp:远程文件复制
使用rcp命令可以在远程主机之间复制文件,如果同时指定2个以上的文件或目录,且最后的目的地是一个已经存在的目录,则他会把前面指定的所有文件或目录复制到该目录中。
rcp命令语法:
rcp 【选项】【文件1】【文件2】
rcp 【选项】 【文件】 【目录】
rcp 【选项】
rcp命令选项含义
选项
|
含义
|
-p
|
尝试保留副本的修改时间和原文件的模式
|
-x
|
在主机之间传输加密所有信息
|
-r
|
如果原文件是目录,,复制该目录中每个字树
|
-D<端口>
|
指定连接到远程主机上的端口
|
-N
|
使用网络连接在本地主机上复制文件
|
-c<缓存文件>
|
更改默认凭据缓存文件
|
需要说明的是,rcp不提示输入口令,它通过rsh命令来执行拷贝。
CentOS6安装配置rsh如下
基本信息:
节点一:
ip:192.168.8.166
主机名:hadrtest01
节点二:
ip:192.168.8.250
主机名:hadrtest02
1、两节点分别安装rsh,rsh-server包是否已经安装
yum -y install rsh rsh-server
2、修改/etc/xinetd.d/rlogin确保disable = no这一行
# default: on
# description: rlogind is the server for the rlogin(1) program. The server \\
# provides a remote login facility with authentication based on \\
# privileged port numbers from trusted hosts.
service login
{
socket_type = stream
wait = no
user = root
log_on_success += USERID
log_on_failure += USERID
server = /usr/sbin/in.rlogind
disable = no
}
节点二同样修改
3、修改/etc/xinetd.d/rsh确保disable = no这一行
[root@hadrtest01 ~]# cat /etc/xinetd.d/rsh
# default: on
# description: The rshd server is the server for the rcmd(3) routine and, \\
# consequently, for the rsh(1) program. The server provides \\
# remote execution facilities with authentication based on \\
# privileged port numbers from trusted hosts.
service shell
{
socket_type = stream
wait = no
user = root
log_on_success += USERID
log_on_failure += USERID
server = /usr/sbin/in.rshd
disable = no
}
节点二同样修改
4、编辑/etc/securetty,添加rexec、rsh、rlogin三行
echo "
rexec
rsh
rlogin
" >> /etc/securetty
5、编辑/etc/hosts,添加两节点的ip,主机名
[root@hadrtest01 ~]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.8.166 hadrtest01
192.168.8.250 hadrtest02
节点二同样修改
6、修改~/.rhosts ,添加节点一,节点二主机名,ip
[root@hadrtest01 ~]# cat ~/.rhosts
hadrtest01 root
hadrtest02 root
[root@hadrtest02 ~]# cat ~/.rhosts
hadrtest01 root
hadrtest02 root
7、两节点分别启动服务
重启:
service xinetd restart
开机启动:
chkconfig xinetd on
8、测试
节点一:
[root@hadrtest01 ~]# rsh hadrtest02
Last login: Tue Feb 16 17:44:56 from hadrtest01
[root@hadrtest02 ~]#
不输入密码登录节点二表示安装成功
节点二:
[root@hadrtest02 ~]# rsh hadrtest01
Last login: Tue Feb 16 17:39:35 from hadrtest02
[root@hadrtest01 ~]#
不输入密码登录节点一表示安装成功
注意:按照上述操作完在之后,如果测试时提示要输入密码 或者测试时提示connection refush可以使用如下方法解决
1、在linux的命令提示符中输入#ntsysv rsh,然后按enter键
2、在打开的服务中找到rlogin,如果前面没有*,则按空格键,在前面加上*号之后,点击OK,退出
3、重启服务service xinetd restart
rcp命令解析:
1、以用户root将远程主机192.168.92.130上的/home/1111.sh文件复制到本地的当前目录
2、将远程主机192.168.92.130上的/home/test目录复制到本地的当前目录
以上是关于使用rcp命令实现从远程机器拷贝文件的主要内容,如果未能解决你的问题,请参考以下文章