如何在两台不同的 Ubuntu 计算机之间共享文件/文件夹并位于不同的网络上?

use*_*934 7 server remote-desktop file-sharing shared-folders

我想在我的笔记本电脑和本地桌面之间共享文件夹。两者都分别连接到 WiFi 和以太网。如何在这两者之间共享文件夹?

谢谢!

Jac*_*ack 7

如果计算机连接到不同的网络,则可以使用Hamachi来实现。它使计算机能够看到彼此,就好像它们在同一个网络中一样。它可以与称为Haguichi 的非常好的前端一起使用。

在此处输入图片说明

如果您的计算机连接到同一个本地网络,请从这里开始。

现在您需要以某种方式共享文件。幸运的是,Ubuntu 让它变得非常简单。只需右键单击任何目录并选择Local Network Share. 应该弹出这样的窗口:

在此处输入图片说明

然后配置您的共享并单击Create Share

在另一台电脑上

打开 Nautilus,单击Connect to Server左侧菜单。应该弹出另一个对话框:

在此处输入图片说明

输入smb://[ip address of the other computer here]并单击Connect

如果您使用 Hamachi,您将需要提供 Hamachi 看到的主机 IP。使用hamachi list命令或右键单击 Haguichi 中的其他计算机并选择Copy IPv4 Address

就是这样!


pa4*_*080 5

如果您能够在这两台计算机之间建立SSH 连接,您可以使用sshfs挂载远程文件夹(甚至整个文件系统,如果您有正确的权限)。

sudo apt update && sudo apt install -y sshfs
Run Code Online (Sandbox Code Playgroud)

例如,如果您使用key authentication,则挂载命令如下所示:

sshfs username@hostname_or_ip:/path/to/remote-folder/ /path/to/local-folder/ -p 2222 -o IdentityFile=/path/to/ssh-key/id_rsa
Run Code Online (Sandbox Code Playgroud)
  • -p 2222如果您使用的是默认 ssh 端口,则可以省略此选项22
  • -o IdentityFile=/path/to/ssh-key/id_rsa如果您的密钥位于默认位置 ( ~/.ssh),或者您使用~/.ssh/config文件,则可以省略此选项;
  • username@hostname_or_ip如果您使用文件,您可以用其等效的短名称替换此条目~/.ssh/config
  • 用于sudo umount /path/to/local-folder/卸载;
  • 有关更多详细信息,请检查:sshfs -h或其手册页

所以,如果~/.ssh/config文件看起来像:

Host rh1
    HostName 79.11.134.121
    IdentityFile ~/.ssh/remote-host-1/id_rsa
    User spas
    Port 22

Host rh2
    HostName 193.164.5.50
    IdentityFile ~/.ssh/remote-host-2/id_rsa
    User spas
    Port 2222
Run Code Online (Sandbox Code Playgroud)

挂载命令看起来更简单:

$ sshfs rh1:/path/to/remote-folder/ /path/to/local-folder/
Run Code Online (Sandbox Code Playgroud)

一旦sshfs安装工程,您可以: