背景

背景

背景

我不希望 Google、Dropbox 等公司保存我的所有数据。理想情况下,我设想一个工作环境,在这个环境中,我可以将我的所有数据保存在本地,并且只需一个开关,就可以使文件夹公开访问。

是的,我可以将此文件夹放入我的 Dropbox 或 Google Drive 文件夹中,并让公众可以访问它。但我不想移动文件夹。我希望它们放在“主页”文件夹中我想要放置的位置。如果我在线并连接,我希望人们直接从我的电脑流式传输文件夹。只有当我不在线时,才应该使用缓存服务器,以便在我离线时让请求文件夹的人可以访问该文件夹(例如通过我共享的链接)。

小样

小样

答案1

我不确定是否有任何现成的东西可以实现这一功能。

我会以典型的烦人的 stackexchange 方式询问您是否确定要立即显示对文件的更改,而不是在您查看任何更改后才显示。如果不是,那么我可能会建议使用像 git 这样的 VCS,也许还有您自己的服务器,或者(付费)github,或者(可能免费)bitbucket。您可能还会对 owncloud 项目感兴趣。

我不知道您想要做什么的任何直接解决方案,因此只能为您提供有关如何使用各种组件自行设置某些内容的建议:

  • 您可以在某处运行 ssh 服务器,将所有文件保存在远程,然后使用 sshfs 之类的工具从您的计算机访问它们(如果您有大文件或未连接到互联网,则会出现问题),但这样做的好处是简单。
  • 如果您没有静态 IP,您应该了解动态 DNS 和一些供应商,您可以使用它来允许人们连接到您的计算机,无论它在哪里。或者,可以通过 ssh 进入静态服务器并使用 -R 选项将连接转发回具有静态 IP 的机器来实现。
  • 回退逻辑使事情变得复杂。如果你想要时髦一点,你可以尝试在 Linux 上使用某种 unionfs(比如 aufs),这样访问就会回退到你的缓存(例如,有一个服务器,让它能够 ssh 到你的机器,使用 sshfs 在服务器上托管你的文件,同时在服务器上保留一个缓存,使用 unionfs 将两者连接在一起,允许第三方 ssh 到这台机器)
  • 执行回退的另一种方法(如果您愿意在关闭计算机时断开连接)是使用回退连接进行某种连接转发。因此,他们首先尝试 ssh 到您的机器,但如果这台机器关闭,则 ssh 到您保留缓存的其他机器。如果您有服务器,那么 HAProxy 可能适合这样做。

  • 也许还值得研究一下 gfs(分布式文件系统),但这可能有点过头了

我还应该补充一个默认警告,即如果您让计算机上的服务可供外界访问,那么您必须确保它们是安全的,而第三方公司会雇用人员为您做这件事。当然,他们雇用的人也可以查看您的数据并为政府提供后门,所以这有点权衡。

相关内容