标题：rsh
rsh简介
rsh 的介绍rsh是“remote shell”（远程 shell）的缩写，该命令在指定的远程主机上启动一个shell并执行用户在rsh命令行中指定的命令；如果用户没有给出要执行的命令，rsh就用rlogin命令使用户登录到远程机上。rsh 的格式rsh命令的一般格式是：
rsh [-Kdnx] [-k realm] [-l username] host [command]一般常用的格式rsh host [command ]
command可以是从shell提示符下键人的任何Linux命令。rsh命令中各选项的含义如下-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配置过程
安装前准备主机ahost ip 192.168.200.123
配置其/etc/hosts 文件
127.0.0.1 ahost localhost192.168.200.200 bhost配置其/etc/sysconfig/network
NETWORKING=yesHOSTNAME=ahost主机bhost ip 192.168.200.200
127.0.0.1 bhost localhost192.168.200.123 ahost配置其/etc/hosts文件
配置其/etc/sysconfig/network
NETWORKING=yesHOSTNAME=bhost确认机器ahost是否安装rsh包:[root@ahost]# rpm -aq |grep rsh
rsh-0.17-14
rsh-server-0.17-14
如果没有安装以上两个包，请找到相关软件安装(如果是LINUX，可以从安装碟中找到)
安装包:
rpm -ivh rsh-0.17-5 (linux操作系统)
rpm -ivh rsh-server-0.17-5 (linux 操作系统)确认是否启动rsh 服务:方法一:
使用命令setup，查看service是否将[*] rsh 加上*，如果加上*表示可以启动。
/etc/rc.d/init.d/xinetd restart 或者service xinetd restart
方法二:
rsh 属于xinetd服务,可以直接修改/etc/xinetd.d/rsh脚本文件。
service shell
{
disable = no
socket_type = stream
wait = no
user = root
log_on_success += USERID
log_on_failure += USERID
server = /usr/sbin/in.rshd
}
当然方法很多，目的就是使用rsh服务能启动。
/etc/rc.d/init.d/xinetd restart
检查是否启动: rsh server 监听和TCP 是514。
[root@mg04 root]# netstat -an |grep 514
tcp 0 0 0.0.0.0:514 0.0.0.0:* LISTEN
如果能看到514在监听说明服务器已经启动。配置rsh server:修改/etc/securetty文件: echo rsh >>/etc/securetty
或者 echo “rsh”>>/etc/securetty都可以
如果打算用root作为rsh用户的话:
先用root登录到机器ahost中进行以下操作:
cd ~/ 
echo "192.168.200.200 root" >>.rhosts 允许192.168.200.200 以root访问
主要作用是使得bhost来的主机可以不用输入用户名和密码就可以登录
重启rsh server.测试和注意的问题:登录到bhost机器进行测试: rsh -l root ahost ps -ef
看是否能看到结果。如果看到
[root@mg04 etc]# rsh -l root ahost ps -ef
Permission denied.
这是由于权权限问题，一般是由于.rhosts没有配置正确。.rhosts一般位于
rsh server服务器相对应账号目录下比如root(与.bash_profile在同一目录)
rsh在执行命令有时会找不到。rsh 在调用命令是最好使用绝对路径。默认搜索路径为:
[root@mg04 etc]# rsh -l root 192.168.200.123 env |grep PATH
PATH=/usr/bin:/bin
rh8.0下rcp的用法设置
只对root用户生效
1、在双方root用户根目录下建立.rhosts文件,并将双方的hostname加进去.在此之前应在双方的/etc/hosts文件中加入对方的IP和hostname
2、把rsh服务启动起来，redhat默认是不启动的。方法：用执行ntsysv命令，在rsh选项前用空格键选中，确定退出。然后执行：service xinetd restart即可。
3、到/etc/pam.d/目录下，把rsh文件中的auth required /lib/security/pam_securetty .so一行用“#”封掉即可
rsh 命令行参数
rsh 的命令在运行 RSH 服务的远程计算机上运行命令。Windows XP 和 Windows 2000 不提供 RSH 服务。Windows 2000 Server Resource Kit 提供名为 Rshsvc.exe 的 RSH 服务。使用不带参数的 rsh 显示帮助。 
语法 
rsh [Host] [-l UserName] [-n] [Command] 
参数 
Host 
指定运行 command 的远程计算机。 
-l UserName 
指定远程计算机上使用的用户名。在省略情况下，使用当前登录用户的名称。 
-n 
将 rsh 的输入重定向到 NULL 设备。这防止本地计算机命令结果的显示。 
Command 
指定要运行的命令。 
/? 
在命令提示符显示帮助。rsh 的注释注释 
标准操作 
rsh 命令将标准输入复制到远程 command，将远程 command 的标准输出复制到其标准输出，将远程 command 的标准错误复制到其标准错误。Rsh 通常在远程命令终止时终止。 
使用重定向符号 
为了使重定向在远程计算机上发生，要以引号引住重定向符号（例如 ">>"）。如果不使用引号，重定向会在本地计算机发生。例如，以下命令将远程文件“RemoteFile”附加到本地文件“LocalFile”中： 
rsh othercomputer cat remotefile >> localfile 
以下命令将远程文件 Remotefile 附加到远程文件 otherremotefile 中： 
rsh othercomputer cat remotefile ">>" otherremotefile 
使用 rsh 
在使用已登录到某个域并且运行 Windows XP Professional 的计算机时，该域的主域控制器必须可用于确认用户名或 rsh 命令失败。 
.rhosts 文件 
.rhosts 文件通常许可 UNIX 系统的网络访问权限。.rhosts 文件列出可以访问远程计算机的计算机名及关联的登录名。在正确配置了 .rhosts 文件的远程计算机上运行 rcp、rexec 或 rsh 命令时，您不必提供远程计算机的登录和密码信息。 
.rhosts 文件是一个文本文件，该文件中每一行为一个条目，条目由本地计算机名、本地用户名和有关该条目的所有注释组成。每个条目均由制表符或空格分开，注释用符号 (#) 打头。例如： 
host7 #This computer is in room 31A 
.rhosts 文件必须在远程计算机的用户主目录中。有关远程计算机 .rhosts 文件特定执行的详细信息，请参阅远程系统的文档。 
只有当网际协议 (TCP/IP) 协议在 网络连接中安装为网络适配器属性的组件时，该命令才可用。 
范例 
要以名称 admin1 在远程计算机 vax1 上执行 telcon 命令，请键入： 
rsh vax1 -l admin1 telcon 
Tftp 
向运行平凡文件传输协议 (TFTP) 服务或 daemon 的远程计算机（尤其是运行 UNIX 的计算机）传输文件或从运行平凡文件传输协议 (TFTP) 服务或 daemon 的远程计算机（尤其是运行 UNIX 的计算机）传输文件。 
语法 
tftp [-i] [Host] [{get | put}] [Source] [Destination] 
参数 
-i 
指定二进制图像传送模式（也称为八进制模式）。在二进制图像模式下，文件以一个字节为单位进行传输。在传送二进制文件时使用该模式。如果省略了 -i，文件将以 ASCII 模式传送。这是默认的传送模式。该模式将行尾 (EOL) 字符转换为指定计算机的适当格式。传送文本文件时使用该模式。如果文件传送成功，将显示数据传输率。 
Host 
指定本地或远程计算机。 
put 
将本地计算机上的 Destination 文件传送到远程计算机上的 Source 文件。因为 TFTP 协议不支持用户身份验证，所以用户必须登录到远程计算机，同时文件在远程计算机上必须可写。 
get 
将远程计算机上的 Destination 文件传送到本地计算机上的 Source 文件。 
Source 
指定要传送的文件。 
Destination 
指定将文件传送到的位置。如果省略了 Destination，将假定它与 Source 同名。 
/? 
在命令提示符显示帮助。 
注释 
使用 get 参数 
如果将本地计算机上的文件 FileTwo 传送到远程计算机上的文件 FileOne，则指定 put。如果将远程计算机上的文件 FileTwo 传送到远程计算机上的文件 FileOne，则指定 get。 
Windows XP 或 Windows 2000 不提供一般用途的 TFTP 服务器。Windows 2000 提供的 TFTP 服务器服务只为 Windows XP 和 Windows 2000 客户端计算机提供远程引导功能。 
只有当网际协议 (TCP/IP) 协议在 网络连接中安装为网络适配器属性的组件时，该命令才可用。 
范例 
要从本地计算机将文件 Users.txt 传送到远程计算机 vax1 上的 Users19.txt，请键入： 
tftp vax1 put users.txt users19.txt