1 | rexec
|
2 | ===
|
3 |
|
4 | 远程执行Linux系统下命令
|
5 |
|
6 | ## 补充说明
|
7 |
|
8 | **rexec命令** 用于在指定的远程Linux系统主机上执行命令,向远程rexec服务器发出执行命令的请求。
|
9 |
|
10 | rexec命令通过检查`$HOME/.netrc`文件(包含远程主机上使用的用户名和密码)来提供自动登录的功能。如果没有发现此类项或系统在安全方式下操作(参阅 securetcpip 命令),rexec命令提示输入一个远程主机的有效用户名和密码。这两种情况下,rexec均导致远程系统上的rexecd使用缺省的compat用户登录认证方法。rexecd不会为了备用的认证方法去查找`/etc/security/user`文件。也可以指定`-n`标志到rexec命令行上来重设自动登录功能。
|
11 |
|
12 | ### 语法
|
13 |
|
14 | ```shell
|
15 | rexec(选项)(参数)
|
16 | ```
|
17 |
|
18 | ### 选项
|
19 |
|
20 | ```shell
|
21 | -a:表示远程命令的标准错误与标准输出相同,不支持发送任意信号到远程进程;
|
22 | -l<用户名>:指定连接远程rexec服务器的用户名;
|
23 | -p<密码>:指定连接远程rexec服务器的密码;
|
24 | -n:明确地提示输入用户名和密码。
|
25 | ```
|
26 |
|
27 | ### 参数
|
28 |
|
29 | * 远程主机:指定远程主机(ip地址或主机名);
|
30 | * 命令:指定需要在远程主机上执行的命令。
|
31 |
|
32 | ### 实例
|
33 |
|
34 | 要在一个远程主机上执行date命令,输入:
|
35 |
|
36 | ```shell
|
37 | rexec host1 date
|
38 | ```
|
39 |
|
40 | date命令的输出现在显示在本地系统上。本示例中,在本地主机上的`$HOME/.netrc`文件包含远程主机上有效的用户名和密码。如果没有远程主机的`$HOME/.netrc`文件中的有效项,将提示输入登录标识和密码。输入所要求的登录信息后,date命令的输出显示在本地系统上。
|
41 |
|
42 | 要重设自动登录功能并执行远程主机上的date命令,输入:
|
43 |
|
44 | ```shell
|
45 | rexec -nhost1 date
|
46 | ```
|
47 |
|
48 | 出现提示时输入用户名和密码,date命令的输出现在显示在本地系统上。
|
49 |
|
50 | 列出远程主机上另一个用户的目录,输入:
|
51 |
|
52 | ```shell
|
53 | rexec host1 ls -l /home/karen
|
54 | ```
|
55 |
|
56 | 在远程主机host1上的karen 用户的目录列表显示在本地系统上。
|
57 |
|
58 | 如果没有远程主机的`$HOME/.netrc`文件中的有效项,将提示您输入登录标识和密码。输入要求的登录信息后,在远程主机host1上的karen用户的目录列表显示在本地系统上。
|
59 |
|
60 |
|
61 |
|