http://selina.ry.blog.163.com/blog/static/268676062007102852419505/
1使用条件
要使用
rcp
,需要具备以下条件:
(
1
)如果系统中有
/etc/hosts
文件,系统管理员应确保该文件包含要与之进行通信的远程主机的项。
/etc/hosts
文件中有一行文字,其中包含每个远程系统的以下信息:
internet_address official_name alias
例如:
9
.
186
.
10.*** blade1.ibm.com.cnblade1
(
2
)
.rhosts
文件
.rhosts
文件位于远程系统的主目录下,其中包含本地系统的名称和本地登录名。
例如,远程系统的
.rhosts
文件中的项可能是:
blade1 root
其中,
blade1
是本地系统的名称,
root
是本地登录名。这样,
blade1
上的
root
即可在包含
.rhosts
文件的远程系统中来回复制文件。
2 rsh配置过程
直接
rsh
作为
root.
a.
在服务器上运行
/urs/bin/ntsysv
选中
rexec,rlogin,rsh
三项服务。
b.
运行
#/sbin/service xinetd restart
启动该三项服务。
c.
运行
#echo"rexec">>/etc/securetty;echo"rlogin">>/etc/securetty;echo"rsh">>/etc/securetty
d.
在服务器上运行
#echo"
你的
ip
地址
root">>/root/.rhosts
或者
#echo"
你的主机名
root">>/root/.rhosts
且确保在服务器上的
/etc/hosts
中有
主机名和
ip
地址的映射关系
e
到
/etc/pam.d/
目录下
,
把
rexec,rlongin,rsh
文件中的
auth required /lib/security/pam_securetty.so
一行用“
#
”注释掉即可。(只有注释掉这一行,才能用
root
用户登录)
3 rsh命令用法
rsh(remote shell)
功能说明:远端登入的Shell。
语 法:rsh [-dn][-l <用户名称>][主机名称或IP地址][执行指令]
补充说明:rsh提供用户环境,也就是Shell,以便指令能够在指定的远端主机上执行。
参 数:
-K 关闭所有的Kerbero确认。该选项只在与使用Kerbero确认的主机连接时才使用。
-d 打开与远程主机进行通信的TCP sockets的socket调试。要了解更多的信息,请查阅setsockopt的联机帮助。
-k 请求rsh获得在指定区域内的远程主机的Kerberos许可,而不是获得由krb_relmofhost(3)确定的远程主机区域内的远程主机的Kerberos许可。
-l 缺省情况下,远程用户名与本地用户名相同。本选项允许指定远程用户名,如果指定了远程用户名,则使用Kerberos 确认,与在rlogin命令中一样。
-n 重定向来自特殊设备/dev/null的输入。
-x 为传送的所有数据打开DES加密。这会影响响应时间和CPU利用率,但是可以提高安全性。 Linux把标准输入放入rsh命令中,并把它拷贝到要远程执行的命令的标准输入中。它把远程命令的标准输出拷贝到rsh的标准输出中。它还把远程标准错误拷贝到本地标准错误文件中。任何退出、中止和中断信号都被送到远程命令中。当远程命令终止了,rsh也就终止了。
注释
标准操作 rsh 命令将标准输入复制到远程Command,将远程 Command 的标准输出复制到其标准输出,将远程 Command 的标准错误复制到其标准错误。Rsh 通常在远程命令终止时终止。 |
使用重定向符号 为了使重定向在远程计算机上发生,要以引号括住重定向符号(例如,">>")。如果不使用引号,重定向在本地计算机进行。例如,以下命令将远程文件RemoteFile 附加到本地文件 LocalFile 中: rsh othercomputer cat remotefile >> localfile 以下命令将远程文件 RemoteFile 附加到远程文件OtherRemoteFile 中: rsh othercomputer cat remotefile ">>" otherremotefile |
在下面的例子中,
rsh
命令将在远程系统
blade1
中执行一个
ls
命令以列出在
blade1
中目录
/home/root
中的文件。
$rsh blade1 ls /home/root
除非是引用特定字符,否则它将被本系统解释转换,对于控制标准输出的特殊字符更是如此,象重定向或管道字符。下面的例了中列出远程系统上的文件,并把它们送到本系统中的标准输出。重定向操作由本地系统解释,并把输出改向到本地系统中的文件
myfiles
中。
$rsh blade1 ls /home/root>myfiles
如您引用一个特定字符,它将成为
Linux
命令的一部分被远程系统解释。引用重定向操作符将允许您在远程系统中执行重定向操作。下面的例子中,引用一个重定向操作符。它变成
Linux
命令的一部分,包括命令的参数,文件名
myfile
。命令
ls
产生一列文件名并把它们重定向到远程系统中的一个文件
myfile
中。
$rsh blade1 ls /home/root '>' myfiles
对于管道操作也是如此。下面例子中第一个命令输出一列文件到本地的打印机中。标准的输出能过管道输出到您的在线打印机中。第二个命令中,一列文件将输出远程系统的打印机上。管道线被远程系统解释。输送标准输出到远程系统的打印机上。
$rsh blade1 ls /home/root | lpr
$rsh blade1 ls /home/root '|' lpt