|
|
|
|
移动端

如何在Linux和Windows之间共享文件?

现代很多人都在混合网络上工作,Linux 和 Windows 系统都扮演着重要的结束。在两者之间共享文件有时是非常关键的,并且使用正确的工具非常容易。只需很少的功夫,你就可以将文件从 Windows 复制到 Linux 或从 Linux 到 Windows。在这篇文章中,我们将讨论配置 Linux 和 Windows 系统所需的东西,以允许你轻松地将文件从一个操作系统转移到另一个。

作者:Sandra Henry-stocker来源:Linux中国|2018-06-26 08:55

开发者盛宴来袭!7月28日51CTO首届开发者大赛决赛带来技术创新分享

http://s3.51cto.com/oss/201806/26/4300f3f77803015a1a48979df51e8c57.jpeg-wh_651x-s_4255842426.jpeg

用一些来自 Linux 社区的工具,在 Linux 和 Windows 之间共享文件是超容易的。让我们看看可以做这件事的两种不同方法。

现代很多人都在混合网络上工作,Linux 和 Windows 系统都扮演着重要的结束。在两者之间共享文件有时是非常关键的,并且使用正确的工具非常容易。只需很少的功夫,你就可以将文件从 Windows 复制到 Linux 或从 Linux 到 Windows。在这篇文章中,我们将讨论配置 Linux 和 Windows 系统所需的东西,以允许你轻松地将文件从一个操作系统转移到另一个。

在 Linux 和 Windows 之间复制文件

在 Windows 和 Linux 之间移动文件的第一步是下载并安装诸如 PuTTY 的 pscp 之类的工具。你可以从 putty.org 获得它(LCTT 译注:切记从官方网站下载,并最好对比其 md5/sha1 指纹),并轻松将其设置在 Windows 系统上。PuTTY 带有一个终端仿真器(putty)以及像 pscp 这样的工具,用于在 Linux 和 Windows 系统之间安全地复制文件。当你进入 PuTTY 站点时,你可以选择安装所有工具,或选择安装你想要的工具,也可以选择单个 .exe 文件。

你还需要在你的 Linux 系统上设置并运行 ssh 服务器。这允许它支持客户端(Windows 端)连接请求。如果你还没有安装 ssh 服务器,那么以下步骤可以在 Debian 系统上运行(包括 Ubuntu 等):

  1. sudo apt update
  2. sudo apt install ssh-server
  3. sudo service ssh start

对于 Red Hat 及其相关的 Linux 系统,使用类似的命令:

  1. sudo yum install openssh-server
  2. sudo systemctl start sshd

注意,如果你正在运行防火墙(例如 ufw),则可能需要打开 22 端口以允许连接。

使用 pscp 命令,你可以将文件从 Windows 移到 Linux,反之亦然。它的 “copy from to” 命令的语法非常简单。

从 Windows 到 Linux

在下面显示的命令中,我们将 Windows 系统上用户账户中的文件复制到 Linux 系统下的 /tmp 目录。

  1. C:\Program Files\PuTTY>pscp \Users\shs\copy_me.txt shs@192.168.0.18:/tmp
  2. shs@192.168.0.18's password:
  3. copy_me.txt | 0 kB | 0.1 kB/s | ETA: 00:00:00 | 100%

从 Linux 到 Windows

将文件从 Linux 转移到 Windows 也同样简单。只要颠倒参数即可。

  1. C:\Program Files\PuTTY>pscp shs@192.168.0.18:/tmp/copy_me.txt \Users\shs
  2. shs@192.168.0.18's password:
  3. copy_me.txt | 0 kB | 0.1 kB/s | ETA: 00:00:00 | 100%

如果 1) pscp 位于 Windows 搜索路径中,并且 2) 你的 Linux 系统在 Windows 的 hosts 文件中,则该过程可以变得更加顺畅和轻松。

Windows 搜索路径

如果你使用 PuTTY 安装程序安装 PuTTY 工具,你可能会发现 C:\Program files\PuTTY 位于 Windows 搜索路径中。你可以通过在 Windows 命令提示符下键入 echo %path% 来检查是否属于这种情况(在搜索栏中键入 cmd 来打开命令提示符)。如果是这样,你不需要关心文件系统中相对于 pscp 可执行文件的位置。进入到包含你想要移动文件的文件夹可能会更容易。

  1. C:\Users\shs>pscp copy_me.txt shs@192.168.0.18:/tmp
  2. shs@192.168.0.18's password:
  3. copy_me.txt | 0 kB | 0.1 kB/s | ETA: 00:00:00 | 100%

更新你的 Windows 的 hosts 文件

这是另一个小修补。使用管理员权限,你可以将 Linux 系统添加到 Windows 的 hosts 文件中(C:\Windows\System32\drivers\etc\hosts),然后使用其主机名代替其 IP 地址。请记住,如果你的 Linux 系统的 IP 地址是动态分配的,那么它不会一直发挥作用。

  1. C:\Users\shs>pscp copy_me.txt shs@stinkbug:/tmp
  2. shs@192.168.0.18's password:
  3. hosts | 0 kB | 0.8 kB/s | ETA: 00:00:00 | 100%

请注意,Windows 的 hosts 文件与 Linux 系统上的 /etc/hosts 文件格式相同 -- IP 地址、空格、主机名。注释以 # 符号来表示的。

  1. # Linux systems
  2. 192.168.0.18 stinkbug

讨厌的行结尾符

请记住,Windows 上文本文件中的行以回车符和换行符结束。pscp 工具不会删除回车符,以使文件看起来像 Linux 文本文件。相反,它只是完整地复制文件。你可以考虑安装 tofrodos 包,这使你能够在 Linux 系统上使用 fromdostodos 命令来调整在平台之间移动的文件。

在 Windows 和 Linux 之间共享文件夹

共享文件夹是完全不同的操作。你最终将 Windows 文件夹挂载到你的 Linux 系统或将 Linux 文件夹挂载到 Windows 文件夹中,以便两个系统可以使用同一组文件,而不是将文件从一个系统复制到另一个系统。最好的工具之一就是 Samba,它模拟 Windows 协议并在 Linux 系统上运行。

一旦安装了 Samba,你将能够将 Linux 文件夹挂载到 Windows 上或将 Windows 文件夹挂载到 Linux 上。当然,这与本文前面描述的复制文件有很大的不同。相反,这两个系统中的每一个都可以同时访问相同的文件。

关于选择在 Linux 和 Windows 系统之间共享文件的正确工具的更多提示可以在这里找到。

【编辑推荐】

  1. 如何在Linux中使用parted对磁盘分区
  2. 在Linux上复制和重命名文件
  3. 修复:Windows 10光标选择全部
  4. 如何重置Windows 10上的Windows Update以解决下载问题
  5. 【全网最新】Linux自动化运维之CentOS7入门到精通
【责任编辑:庞桂玉 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

PHP程序开发范例宝典

本书全面介绍了应用PHP进行网站开发的各种技术和技巧。全书分为20章,内容包括PHP的运行环境配置、表单及表单元素的应用、CSS与JavaScript...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊