hardlink无效参数错误

时间:2011-11-02 23:33:27

标签: linux

我正在使用linux ln命令创建硬链接。

但是,对于某些文件,我会收到错误消息“Invalid Argument”

我的猜测是源文件有一个我不知道的前提条件。

我阅读了手册页,没有阅读任何有帮助的内容。

有没有人经历过这个?

2 个答案:

答案 0 :(得分:1)

我无法让我的ln版本说只是“无效的参数”;当我尝试做错事时,它总是给我有用的错误消息。你应该alias ln看看它是否有别名,which ln看你是否使用/bin/ln以外的其他内容。如果您使用的是/bin/ln,由于您的版本对其错误消息没有帮助,您可以尝试在ln上执行strace以查看正在发生的情况:

strace -f -F -e trace=file -o ln.log ln FOO BAR
egrep 'FOO|BAR' ln.log

例如,如果我尝试对/dev/zero进行跨文件系统的硬链接,我会得到:

30835 linkat(AT_FDCWD, "/dev/zero", AT_FDCWD, "./zero", 0) = -1 EXDEV (Invalid cross-device link)

答案 1 :(得分:0)

尝试在只读文件系统上创建链接时,我收到了同样的错误。

ln: failed to create symbolic link ‘name’: Invalid argument

尝试touch文件以查看文件系统是否可写。