有时您需要通过网络传输文件。市面上有许多文件共享服务,但大多数要求您将文件发送到互联网。当两台计算机彼此相邻,或至少在同一栋建筑物中时,这似乎走了很长的路(更不用说隐私问题了)。开源 WinSCP 实用程序可以快速轻松地通过网络将文件或文件夹从 Windows 计算机传输到 Linux 计算机。
IP 地址
在进行传输之前,您必须知道目标计算机的 IP 地址或完全限定域名。假设它是您同一网络上的计算机,并且您没有运行 DNS 服务器来解析计算机名称,您可以使用 Linux 机器上的 ip
命令找到目标 IP 地址
[linux]$ ip addr show | grep 'inet '
inet 127.0.0.1/8 scope host lo
inet 192.168.1.23/24 brd 10.0.1.255 scope global noprefixroute eth0
在所有情况下,127.0.0.1 都是环回地址,计算机仅使用该地址与自身通信,因此在本示例中,正确的地址是 192.168.1.23。在您的系统上,IP 地址可能有所不同。如果您不确定哪个是哪个,您可以依次尝试每个地址,直到获得正确的地址(然后将其写在某个地方!)
或者,您可以查看路由器的设置,其中列出了通过 DHCP 分配的所有地址。
防火墙和服务器
WinSCP
命令使用 OpenSSH 协议,因此您的 Linux 计算机必须运行 OpenSSH 服务器软件,并且其防火墙必须允许 SSH 流量。
如果您不确定您的 Linux 机器是否正在运行 SSH,请在 Linux 机器上运行此命令
[linux]$ sudo systemctl enable --now sshd
要确保您的防火墙允许 SSH 流量,请运行此命令
[linux]$ sudo firewall-cmd --add-service ssh --permanent
有关 Linux 防火墙的更多信息,请阅读 使用防火墙增强 Linux 的安全性。
使用 WinSCP
WinSCP 是适用于 Microsoft Windows 的开源 SSH 文件传输应用程序。要使用它,您首先必须下载并 安装它。
安装完成后,打开 WinSCP 并在 文件协议 字段中选择 SCP 选项。
在 主机名 字段中添加您的 Linux 计算机的 IP 地址或 DNS 名称,并在 端口号 字段中输入 22。输入您 Linux 计算机的用户名和密码,然后单击 WinSCP 窗口底部的 登录 按钮。

(Paul Laubscher,CC BY-SA 4.0)
验证您是否已通过 Linux 计算机的身份验证。成功后,您的 Linux 计算机的 IP 地址或 DNS 名称将显示在窗口顶部。

(Paul Laubscher,CC BY-SA 4.0)
现在您可以将文件(我使用了 winscp-test.txt
作为示例)从左侧的 Windows 窗格拖放到右侧的目标 Linux 计算机窗格中,文件就会传输。

(Paul Laubscher,CC BY-SA 4.0)
或者,您可以右键单击左侧窗格中的文件,然后将其上传到右侧窗格中的远程目标。

(Paul Laubscher,CC BY-SA 4.0)
验证副本
打开 Linux 终端并使用 ls
命令查看传输的 winscp-test.txt
文件。在我的示例中,它出现在我的主目录 /_home_/sysadmin
中。
$ ls
Desktop
Documents
Downloads
Music
Pictures
pscp-test.txt
[...]
您已成功通过网络将文件从 Windows 计算机传输到 Linux 计算机!
当然,您可以使用与上述相同的技术将文件和文件夹从 Linux 计算机传输到 Windows 计算机。
远程复制
借助强大的开源 WinSCP 应用程序,您可以访问您家或工作场所的任何计算机、您拥有帐户的服务器,甚至移动设备、边缘 和物联网设备。使用这个出色的工具传输文件,就像从一个本地目录复制文件到另一个本地目录一样容易!
评论已关闭。