在我的特定用例中,我希望我的 PC 能够向 Linux 机器发送命令,在其上执行脚本。有没有办法做到这一点(通过网络或其他方法)我在 PC 上使用 Windows 7,在 Linux 机器上使用 Ubuntu。
答案1
这几乎总是通过 SSH 完成。
您需要进行以下设置:
- Windows 是一个 SSH 客户端。
- Linux 是一个 SSH 服务器。
一旦您将 Windows(作为客户端)连接到 Linux 服务器并登录,您将拥有一个终端(shell/bash 取决于您的配置),并且您可以执行任何命令,就像在 Linux 机器上一样。
Windows SSH 客户端:
使用 Putty: http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
您所需要的只是获取 Linux SSH 服务器的 IP 地址。
Linux SSH 服务器:
Ubuntu 通常预装了 openssh-server。
为确保安全,请运行
sudo apt-get install openssh-server
安装后,服务器的配置(如何登录、端口等)可以在这里找到:
/etc/ssh/sshd_config
同样,对于 Ubuntu,默认配置应该没问题,并且允许在端口 22 上使用用户名和密码登录。因此,您不需要更改任何内容。
最后,您需要确保此 Linux 服务器连接到 Windows 客户端可访问的网络上,并且 SSH 端口(默认为 22)未被阻止。
例如,该机器可以位于同一家庭/工作网络上(连接到同一路由器/交换机,位于同一网络基础架构中),也可以以某种方式在公共互联网上访问。
一旦您获得此服务器的 IP 地址,您就可以从任何(Windows 或其他)SSH 客户端连接到它,并远程执行任何命令……甚至可以上传/下载文件(使用“scp”,putty 版本称为“pscp”)。
答案2
使用油灰通过 SSH 连接到 Linux 计算机。
命令行使用文档:http://the.earth.li/~sgtatham/putty/0.67/htmldoc/Chapter3.html#using-cmdline
您一定特别想寻找这个-m
选项。
答案3
感谢您的所有建议,我找到了解决方法,并希望与其他人分享
步骤1:在我的 Windows 系统上安装 Putty 后,我使用此命令在 ubuntu 上安装 ssh 服务器
sudo apt-get install openssh-server
第2步:安装后,我在电脑的命令行窗口中使用此命令来控制 Ubuntu 机器
plink.exe -ssh user@host -pw password -m c:\path\command.txt
其中 command.txt 包含我想要在 Ubuntu 上执行的任务列表。
笔记 :对于使用虚拟盒通过 putty 连接到 Ubuntu 的用户,您必须将虚拟机的网络设置从 NAT 设置为桥接网络,否则无法通过 ssh 连接。