O problema está em como o tar armazena arquivos. Então, por exemplo
$ echo hello > a
$ ln a b
$ tar cf foo.tar a b
$ tar tf foo.tar
a
b
O problema acontece quando você tenta extrair apenas um arquivo
$ mkdir Y
$ cd Y
$ tar xvf ../foo.tar b
b
tar: b: Cannot hard link to 'a': No such file or directory
tar: Exiting with failure status due to previous errors
O que você precisa fazer é olhar para a lista de conteúdo detalhada mostra
$ tar tvf foo.tar
-rw-r--r-- sweh/sweh 6 2016-06-13 10:43 a
hrw-r--r-- sweh/sweh 0 2016-06-13 10:43 b link to a
Agora você pode ver que "b" tem comprimento zero, tem o tipo "h" (primeiro caractere) e é sinalizado como "link para". Isso informa o arquivo real que você precisa extrair.
Neste caso, você pode querer usar a opção "O" (enviar para stdout), então você acabaria fazendo tar Oxvf ../foo.tar a > b
para criar um arquivo com o nome certo.