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

译文
系统 Linux Windows
若借助Linux社区的一些出色工具,在Linux和Windows系统之间共享文件异常容易。不妨看看两种全然不同的共享文件的方法。

【51CTO.com快译】若借助Linux社区的一些出色工具,在Linux和Windows系统之间共享文件异常容易。不妨看看两种全然不同的共享文件的方法。 

[[227947]] 

如今许多人在混合网络上办公,Linux系统和Windows系统都在其中扮演重要角色。两者之间共享文件有时很重要,借助合适的工具异常容易。不用吹灰之力,你就可以将文件从Windows拷贝到Linux或从Linux拷贝到Windows。我们在本文中介绍怎样配置Linux和Windows系统,以便将文件从一个操作系统轻松拷贝到另一个。

在Linux和Windows之间拷贝文件

Windows和Linux之间拷贝文件的第一步是,下载并安装像PuTTY的pscp这样的工具。你可以从putty.org下载PuTTY,并轻松安装到Windows系统上。PuTTY随带终端仿真器(putty)以及pscp之类的工具,用于在Linux系统和Windows系统之间安全地拷贝文件。进入到PuTTY网站后,你可以选择安装程序或单个的.exe文件,从而决定安装所有工具还是仅仅安装想要使用的工具。

你还需要在Linux系统上安装并运行ssh-server。这让Linux系统可以支持客户端(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

在下列命令中,我们将文件从Windwos系统上的用户帐户拷贝到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”以打开命令提示符),就可以查看是不是这种情况。如果在Windows搜索路径上,你不需要操心在文件系统中的位置。进入到含有你想拷贝的文件的文件夹,可能来得更容易。 

  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 host文件(C:\Windows\System32\drivers\etc\hosts),然后使用host名称代替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 host文件格式类似Linux系统上的/etc/hosts文件:IP地址、空白处和host名称。注释前面是井字号(#)。 

  1. # Linux systems  
  2. 192.168.0.18        stinkbug  

那些烦人的行尾结束符号

牢记一点:Windows上文本文件的行结尾既有回车符又有换行符。Pscp工具不会删除回车符,好让文件如同Linux文本文件。相反,它只是原封不动地拷贝文件。可以考虑安装tofrodos软件包,以便能够在Linux系统上使用fromdos和todos命令,从而调整两个平台之间拷贝的文件。

Windows和Linux之间共享文件夹

共享文件夹是全然不同的操作。你最后将Windows目录挂载到Linux系统上,或者将Linux目录挂载到Windows系统上,那样两个系统都能使用同一组文件,而不是将文件从一个系统拷贝到另一个系统。Samba是这方面最出色的工具之一,它可仿真Windows协议,在Linux系统上运行。

一旦Samba安装完毕,你就能将Linux文件夹挂载到Windows上或将Windows文件夹挂载到Linux上。当然,这与本文前面描述的拷贝文件大不一样。相反,涉及的两个系统都同时可以访问同样的文件。

想了解如何选择Linux系统和Windows系统之间共享文件的合适工具,请参阅该文:https://www.infoworld.com/article/2617683/linux/linux-moving-files-between-unix-and-windows-systems.html

原文标题:How to share files between Linux and Windows,作者:Sandra Henry-Stocker 

【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】

责任编辑:庞桂玉 来源: 51CTO
相关推荐

2018-06-26 08:55:35

LinuxWindows共享文件

2022-05-03 10:08:53

WindowsLinux文件共享

2022-07-21 11:31:28

UbuntuWindowsLinux

2023-07-23 08:21:16

LinuxKVMWindows

2019-07-08 08:59:41

Docker容器主机

2009-06-10 08:31:23

Windows 7微软操作系统

2023-12-20 22:04:17

Linux二进制文件

2019-07-09 20:00:02

Windows 10Windows网络文件共享

2016-07-18 10:51:19

操作系统LinuxWindows

2011-12-07 14:38:22

打印机常见问题

2017-05-04 14:43:43

恶意文件WinLinux

2017-04-19 22:00:40

UbuntuLinux Mint桌面共享

2022-03-29 09:14:23

LinuxWindows文件

2021-10-19 07:27:08

Unix Dos转换

2021-06-01 08:00:00

Linux操作系统工具

2011-08-17 16:42:12

2011-08-17 16:46:23

windows7共享文件

2017-03-09 19:32:22

LinuxWindowsUSB

2011-08-16 17:32:15

sambalinux

2017-02-10 20:00:17

Linux共享目录命令
点赞
收藏

51CTO技术栈公众号