小编SO_*_*bug的帖子

为什么我不能从同一文件系统上的“mount --bind”目录创建到文件的“硬链接”?

原问题

我在一个文件系统上有一个文件: /data/src/file

我想将它硬链接到: /home/user/proj/src/file

但是/home在一个磁盘上,/data在另一个磁盘上,所以我收到一个错误:

$ cd /home/user/proj/src
$ ln /data/src/file .
ln: failed to create hard link './file' => '/data/src/file': Invalid cross-device link
Run Code Online (Sandbox Code Playgroud)

好的,所以我了解到我不能跨设备进行硬链接。说得通。

手头的问题

所以我想我会喜欢并绑定挂载一个src位于/data文件系统上的文件夹:

$ mkdir -p /data/other/src
$ cd /home/user/proj
$ sudo mount --bind /data/other/src src/
$ cd src
$ # (now we're technically on `/data`'s file system, right?)
$ ln /data/src/file .
ln: failed to create hard link './file' => '/data/src/file': Invalid cross-device link
Run Code Online (Sandbox Code Playgroud)

为什么这仍然不起作用?

解决方法 …

mount ln bind-mount

10
推荐指数
1
解决办法
3499
查看次数

标签 统计

bind-mount ×1

ln ×1

mount ×1