Linux下文件共享的几种方式

这篇具有很好参考价值的文章主要介绍了Linux下文件共享的几种方式。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

hello,小伙伴们,大家好!我是木荣。今天给大家分享一下Linux下不同主机之间如何通过网络进行文件共享,达到文件在不同主机之间进行拷贝的目的。在平时的工作中,我们需要经常在主机与开发板、同一网络下的不同主机、主机与公网中的主机、主机与云服务器等等之间拷贝文件。那么在这样的环境下如何实现文件拷贝呢,我们来说说下面的几种方式,看看你是否常用

1. 文件共享概述

平常工作中你的电脑通常不是网络上唯一的计算机,如果你在工作环境中,情况尤其如此。当我们想要将数据从一台机器传输到另一台机器时,有时连接一个U盘并手动复制它们可能更容易。但在大多数情况下,如果您使用同一网络上的机器,则传输数据的方式是通过网络文件共享来的更方便些或更显示些。

下面,我们将介绍几种不同的方法来在网络上的不同机器之间复制数据。我们将讨论一些简单的文件副本,然后我们将讨论如何将整个目录挂载到你的机器上,作为一个单独的驱动器。

一个简单的文件共享工具是scp命令。scp命令代表安全复制,它的工作方式与cp命令完全相同,但是允许你从一台主机复制到同一网络上的另一台主机。它通过ssh工作,因此你的所有操作都使用与ssh相同的身份验证和安全性。

1.将文件从本地主机复制到远程主机

$scp myfile.txt username@remotehost.com:/remote/directory

2.将文件从远程主机复制到本地主机

$scp username@remotehost.com:/remote/directory/myfile.txt /local/directory

3.将目录从本地主机复制到远程主机

$scp -r mydir username@remotehost.com:/remote/directory

2. rsync

另一个用于从不同主机复制数据的工具是rsync(远程同步的缩写)。rsync非常类似于scp,但它确实有一个主要的区别。rsync使用一种特殊的算法,它可以提前检查是否已经有数据要复制,并且只复制差异。例如,假设您正在复制一个文件,而你的网络中断了,因此你的复制中途停止。rsync将只复制未复制的部分,而不是从头重新复制所有内容。

它还验证使用校验和复制的文件的完整性。这些小优化允许更大的文件传输灵活性,使rsync成为远程和本地目录同步、数据备份、大型数据传输等的理想选择。

一些常用的rsync选项:

  • V -详细输出
  • r -递归到目录
  • h -人性化的可读输出
  • z -压缩更容易传输,非常适合慢速连接

1.在同一主机上复制/同步文件

$rsync -zvr /my/local/directory/one /my/local/directory/two

2.从远程主机拷贝/同步文件到本地主机

$rsync /local/directory username@remotehost.com:/remote/directory

3.从本地主机复制/同步文件到远程主机

$rsync username@remotehost.com:/remote/directory /local/directory

3. 简易HTTP服务器

Python有一个超级有用的工具,通过HTTP服务。如果你只是想创建一个快速的网络共享,以便网络上的其他机器可以访问,那么这个功能非常棒。要做到这一点,只需进入你想要共享的目录并运行:

$python -m SimpleHTTPServer

这将设置一个基本的web服务器,您可以通过localhost地址访问它。因此,获取运行此程序的机器的IP地址,然后在另一台机器上使用http://IP_ADDRESS:8000在浏览器中访问它。在你自己的机器上,你可以通过在web浏览器中键入:http://localhost:8000来查看可用共享的文件。

4. NFS

Linux最标准的网络文件共享是NFS(网络文件系统),NFS允许服务器通过网络与一个或多个客户端共享目录和文件。NFS也是木荣平常工作中最常用的一种文件共享的方式。

1.设置NFS客户端

$sudo service nfsclient start
$sudo mount server:/directory /mount_directory

2.自动挂载

假设你经常使用NFS服务器,并且希望永久挂载它,通常你会编辑/etc/fstab文件,但是你可能并不总是获得到服务器的连接,这可能会导致启动时出现问题。相反,你要做的是设置自动挂载,以便在需要时可以连接到NFS服务器。这是通过自动挂载工具或最新版本的Linux完成的。当在指定目录中访问文件时自动挂载将查找远程服务器并自动挂载它。

5. samba服务器

在计算机的早期,Windows计算机必须与Linux计算机共享文件,因此服务器消息块(SMB)协议诞生了。SMB被用于Windows操作系统之间的文件共享(Mac也有与SMB的文件共享),后来被清理和优化为通用互联网文件系统协议(CIFS)。

Samba是我们在Linux上使用CIFS的Linux实用程序。除了文件共享,还可以共享打印机等资源。

使用Samba创建网络共享

让我们通过基本步骤来创建一个Windows机器可以访问的网络共享:

安装Samba服务器
$sudo apt install samba
配置smb.conf

samba的配置文件位于/etc/samba/smb.conf,这个文件应该告诉系统应该共享哪些目录、它们的访问权限和更多选项。默认的smb.conf已经带有大量注释代码,您可以使用这些代码作为示例来编写自己的配置。

$sudo vi /etc/samba/smb.conf
为samba设置密码
$sudo smbpasswd -a [username]
创建共享目录
$mkdir /my/directory/to/share
重新启动samba服务
$sudo service smbd restart

通过Windows访问samba共享

在Windows中,只需在运行提示符中输入网络连接:\HOST\sharename。

通过Linux访问Samba/Windows共享

$smbclient //HOST/directory -U user

samba安装包包含一个名为smbclient的命令行工具,你可以使用它访问任何Windows或Samba服务器。一旦你连接到共享,你就可以传输文件了。

将samba共享附加到你的系统

你可以在系统上挂载网络共享,而不是逐个传输文件。

$sudo mount -t cifs servername:directory mountpount -o user=username,pass=password

小结

网络中文件共享是我们工作中经常使用的,选择合适的一种方式很大程度上会提高我们的工作效率,达到事半功倍的效果。我是木荣,关注(公)-(众)-(号):Linux兵工厂,会长期分享Linux技术干货知识。文章来源地址https://www.toymoban.com/news/detail-767059.html

         👇👇👇👇点击最下方名片,领取Linux硬核学习资料👇👇👇👇

到了这里,关于Linux下文件共享的几种方式的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Linux入学—共享文件夹(保姆教程)

    设置完成后,在Vmware的工具栏点开虚拟机选择 “重新安装Vmware Tools” 有些人第一次使用的话可能显示的是 “安装Vmware Tools” 两个没有影响,点击后,将虚拟机开机。 安装完成之后,打开左侧的DVD,中会有一个VMware Tools的文件夹,将里面的tar.gz压缩文件拖到桌面或其他路径

    2024年02月05日
    浏览(34)
  • linux 访问 windows 共享文件夹

    1、在Windows上设置一个共享目录 示例: 打开 计算机管理-系统工具-共享文件夹-共享-右键新建共享文件夹 选择要创建的共享文件夹,默认点下一步即可; 注意: 共享文件夹名,可以自己定义一下,用于远程默认访问,也可以使用默认 2、在Windows上创建一个用户,可以使用默

    2024年02月07日
    浏览(64)
  • linux如何访问windows共享文件夹

    在 Linux 中访问 Windows 共享文件夹的方法如下: 确保 Windows 电脑开启了共享功能。 在 Linux 电脑上打开终端,输入以下命令: 这样就安装了 smbclient 工具,它可以用来连接 Windows 共享文件夹。 输入以下命令来连接 Windows 共享文件夹: 例如,如果 Windows 电脑的 IP 地址是 192.168

    2024年02月11日
    浏览(59)
  • linux和windows机器下创建共享文件夹

    1、安装samba 2、创建共享文件夹 3、备份配置 4、修改配置 添加以下信息到文件结尾 5、添加用户访问密码 密码是后续访问共享文件夹时需要输入的 6、重启samba 7、访问共享文件夹 在windows下,输入需要访问的共享文件夹及所在IP地址 然后在弹出的认证界面输入用户名和密码(

    2024年01月21日
    浏览(69)
  • Linux - samba实现Linux与windows文件共享——共享文件夹目标文件访问权限被拒绝解决方案(超详细,看不懂你怪我)

            最近做一个项目,需要用到linux上的内容,于是需要将linux与window共享文件,上网查阅了一些资料,做完了之后,总结一下自己遇到的问题,以及自己是咋解决的,供大家参考。 这里其实只需要一步就可以操作出来,现在我们看一下: 一、打开虚拟机,选择设置

    2024年02月04日
    浏览(61)
  • Linux如何挂载创建于Windows中的共享文件夹?

      有时Linux需要访问WIndows中的文件,除了在Liniux中创建共享文件夹,Windows与之链接共享,Linux还可以通过挂载的方式获取Windows的共享文件夹内容。   在Windows中创建的共享文件夹要被Linux访问,需要先启用共享功能,允许本机被另一台计算机连接,同时启用SMB 1.0/CIFS 文件

    2024年02月05日
    浏览(62)
  • Linux/Ubuntu实现文件夹共享的两种方法

    一、创建共享文件夹 1、安装samba sudo apt install samba 2、修改需要共享的文件夹权限 chmod 777 /home/share 3、编辑 /etc/samba/smb.conf ,在末尾增加配置 参数说明: [share]为自定义共享的名称 path为创建共享的文件路径 available用来指定该共享资源是否可用,no则不可用 browseable为设置共享

    2024年02月04日
    浏览(62)
  • linux 学习笔记(一)-在虚拟机中挂载共享文件夹

    当前文档是基于kali系统,其他系统可能会有一点点区别,但步骤是一样的 vmtool是必须的,这个可以在安装完虚拟机后自行进行安装 一,在虚拟机中新建共享文件夹,建完后如图 第二步,启动虚拟机,查询一下能否查到共享文件夹了 使用指令:vmware-hgfsclient 如图中可以看到

    2024年02月07日
    浏览(50)
  • Linux开机自动挂载window密码有转义字符的共享文件夹

    文章阅读+操作时间在5分钟左右,耐心看可以节约你们找废料的时间,看完相信可以解决你们的问题!!!! 项目上遇到需要自动挂载windows共享盘到linux系统中,由于windows密码有英文逗号(,),被linux识别成了参数分隔符,在网上找了很多办法都不行,后来通过这种方式完美解

    2024年01月21日
    浏览(54)
  • Linux环境搭建(Ubuntu22.04)+ 配置共享文件夹(Samba)

    Linux开发环境准备 搭建Linux开发环境所需要的软件如下: VMware虚拟机: 用于运行Linux操作系统的虚拟机软件之一,VMware下载安装在文章中不做说明,可自行百度谢谢 Ubuntu光盘镜像: 用于源代码编译,有闲置计算机或服务器可以下载服务器版(没有图形用户界面),只有一台

    2024年02月04日
    浏览(78)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包