|
|
|
|
移动端

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

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

作者:布加迪编译来源:51CTO|2018-05-04 08:57

【新品产上线啦】51CTO播客,随时随地,碎片化学习

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

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

如今许多人在混合网络上办公,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】

【编辑推荐】

  1. Linux入侵常用命令防黑客
  2. 能让程序员假装很忙的三个Linux命令行工具
  3. 在Linux下9个有用的touch命令示例
  4. Windows 10 4月更新取消功能一览:家庭组消失
  5. 每个Linux新手都应该知道的10个命令
【责任编辑:庞桂玉 TEL:(010)68476606】

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

读 书 +更多

Web服务安全

Web服务技术是最近几年迅速兴起的一种应用集成技术,而安全问题是影响该技术广泛应用的一个关键因素。这个问题已成为最近几年来国内外研究...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊