But I could only create a hard link in the /dev directory and it was not possible in other directories.
Como mostrado pela mensagem de erro, não é possível criar um link físico em diferentes sistemas de arquivos; você pode criar apenas links suaves (simbólicos).
Por exemplo, se o seu /home
estiver em uma partição diferente da partição raiz, você não poderá vincular de forma rígida o /tmp/foo
a /home/user/
.
Agora, como apontado @RichardNeumann, /dev
é geralmente montado como um sistema de arquivos devtmpfs. Veja este exemplo:
[dr01@centos7 ~]$ df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/centos_centos7-root 46110724 3792836 42317888 9% /
devtmpfs 4063180 0 4063180 0% /dev
tmpfs 4078924 0 4078924 0% /dev/shm
tmpfs 4078924 9148 4069776 1% /run
tmpfs 4078924 0 4078924 0% /sys/fs/cgroup
/dev/sda1 1038336 202684 835652 20% /boot
tmpfs 815788 28 815760 1% /run/user/1000
Portanto, você só pode criar links físicos para arquivos em /dev
em /dev
.