sshfs 使用 -o nonempty 清空源路径

sshfs 使用 -o nonempty 清空源路径

machine1我遇到了一个奇怪的错误,我有一些数据

/temp/user1/data/ 

我想与他人分享machine2,所以我创建了相同的目录

mkdir /temp/user1/data/

然后在 machine1 上我执行

sshfs /temp/user1/data user1@machine2:/temp/user1/data

它提示

fuse: mountpoint is not empty
fuse: if you are sure this is safe, use the 'nonempty' mount option

然后我

sshfs -o nonempty /temp/user1/data user1@machine2:/temp/user1/data

突然,我的数据全部消失了,只剩machine1/temp/user1/data一个空文件夹!所有数据都丢失了!怎么回事?我能找回我的数据吗?

答案1

您已将远程计算机(空)挂载/temp/user1/data到本地计算机的 上。如果您只是卸载 SSHFS 挂载(使用,因为在后台使用) /temp/user1/data,那么一切都应该很好。fusermountsshfsfuse

例如,我们有一个非空的本地目录

$ ls vm
somefile

然后我们错误地在其上挂载了一个远程目录:

$ sshfs vm vm:/home/steeldriver/dir
fuse: mountpoint is not empty
fuse: if you are sure this is safe, use the 'nonempty' mount option
$ sshfs -ononempty vm vm:/home/steeldriver/dir

现在,当我们列出时vm,我们会看到遥控器的内容dir

$ ls vm
$ 

但如果我们卸载 SSHFS 文件系统,本地目录内容将再次变得可见:

$ fusermount -u vm
$ ls vm
somefile

相关内容