现在,我感觉有些人会认为没有硬链接的原始文件,但我强烈反对,因为我做了下面的实验。
让我们使用content pwd创建一个文件,并建立到子文件夹的硬链接:
echo "pwd" > original
mkdir subfolder
cp -l original subfolder/hardlink
现在,让我们看看如果我用shell运行它,文件会输出什么:
sh original
sh subfolder/hardlink
输出是相同的,即使文件hardlink在一个子文件夹中!
很抱歉,对于冗长的介绍,我想确保没有人会说我下面的问题无关紧要。
所以我现在的问题是:如果
我有一个由其他人编写的Ruby脚本,它为主文件夹中的文件创建硬链接,并使用以下命令将它们放入子文件夹:
File.link('/mnt/server10/file1.lzo', '/mnt/server10/subfolder10/file2.lzo')
我在Linux服务器上挂载了10个相同的Windows服务器共享,10个挂载点中有9个使用上面的命令没有问题。但是,一个装载点在执行上述命令时出现问题,并生成以下错误:
Hardlink failed: No such file or directory - /mnt/server10/file1.lzo or
当我想以根模式在我的/home目录中创建一个硬链接时,Linux显示了以下错误消息:
ln: failed to create hard link ‘my_sdb’ => ‘/dev/sda1’: Invalid cross-device link
上述错误消息如下所示:
# cd /home/user/
# ln /dev/sda1 my_sdb
但是我只能在/dev目录中创建一个硬链接,在其他目录中是不可能的。
现在,我想知道如何从/home目录(或其他目录)中的现有设备文件(如D5)创建硬链接?