基本上,我在网络上有两台 ubuntu 机器。一台在 ip 10.0.0.6
,另一台在10.0.0.1
我必须使用两个文件副本scp source/file/path user@destination-ip
,并且使用 scp 的另一个问题是我必须将 ssh 密钥添加到目标授权密钥中。
这似乎太复杂了,我想要一个更简单的方法,我可以这样做
cp file/path some/other/path
据我所知,为实现这一点,some/other/path 应该是一个符号链接。
如果目标 IP 可以安装在路径上,我也不会有任何问题,这样我就可以简单地做
cp file/path 10.0.0.6/some/path
基本上,我希望使用常规 cp 或任何可以在本地目录上使用的常规命令(如 ls 等)正常访问共享目录。我想要这样做是因为我在一台 ubuntu 机器上运行了一个创建日志的应用程序,在另一台服务器上还有另一个创建日志的应用程序,但我希望只在一台服务器上创建日志。在该应用程序中,我必须提供日志路径,因此我只能提供常规文件路径。
就像 Windows 一样,您可以通过 LAN 共享文件夹。
另外,我想要一个严格使用命令行的解决方案,因为我已经在 askubuntu.com 上看到了带有 UI 的解决方案,但我的机器在网络上,我只能使用命令行 ssh 到它们。
我找到了我所寻找的 NFS 挂载系统。
当我安装 NFS 时出现错误:
Unable to locate package nfs-utils
答案1
正如评论中所述;您有多个不互相排斥的选择。
SaMBa - 小型|服务器消息块;一种旧的 IBM 协议,规定用于由微软编码的 IBM PC Lan Manager(因此,它至今仍被 Windows 使用,但有一个新名称 CIFS(通用互联网文件系统))。
NFS - 网络文件系统。它是一种 unix/*nix 文件系统,速度更快,并且比 SaMBa 有许多优势,但默认情况下,如果没有附加软件,Windoze 工作站将无法使用 NFS。
您不必将自己限制在一个(或者实际上只有这两个!);即我使用 NFS 进行所有实际工作(读/写),但也允许通过 SAMBA 对某些文件夹进行只读访问,以便简单的媒体播放器可以访问 mp3 等。
对于客户端(使用数据的机器),该包nfs-common
是必需的;对于服务器,您需要该包nfs-kernel-server
;或者,如果机器想要以服务和客户端模式运行,则需要两者。
答案2
这似乎是同一个问题。也许可以尝试这里列出的解决方案。为了方便起见,我在下面进行了总结。
设置:
sudo apt-get install sshfs
sudo modprobe fuse
sudo adduser $USER fuse
sudo chown root:fuse /dev/fuse
sudo chmod +x /dev/fusermount
mkdir /desired/local/directory/path
使用:
sshfs dest-user@dest-ip:/desired/destination/directory/path /desired/local/directory/path