ディレクトリへのハードリンク

詳解UNIXプログラミング4.15には

スーパーユーザ特権のプロセスのみが、ディレクトリへの新たなリンクを作成できる。

とあるけど FreeBSDLinux ではスーパーユーザでもできないようだ。
FreeBSD /usr/src/sys/kern/vfs_syscall.c:kern_link

if (vp->v_type == VDIR) {
    vrele(vp);
    return (EPERM);    /* POSIX */
}

UnixMagazine 1987年12月号「プログラムを書こう!!」にも同じことが書いてあるので昔はできたらしい。
砂原秀樹氏によるこの連載はUnixシステムプログラミング入門としてかなりいい。