Está faltando o nome do link, deve ser:
cd ~
ln -s / root
O que criaria um link simbólico chamado raiz no diretório inicial. Portanto, o uso correto é:
ln -s <target> <link-name>
A mensagem de erro que você vê é que ./
sempre existe e um link não pode ser criado com esse nome; o melhor é usar o ln
comando 2 com os dois parâmetros para evitar vinculação incorreta.
De man ln
:
SINOPSE
(1st form) ln [OPTION]... [-T] TARGET LINK_NAME
(2nd form) ln [OPTION]... TARGET
(3rd form) ln [OPTION]... TARGET... DIRECTORY
(4th form) ln [OPTION]... -t DIRECTORY TARGET...
DESCRIÇÃO
No 1º formulário, crie um link para TARGET
com o nome LINK_NAME
. No segundo formulário, crie um link para TARGET
no diretório atual. No 3º e 4º formas, criar links para cada um TARGET
no DIRECTORY
. Crie links físicos por padrão, links simbólicos com --symbolic
. Por padrão, cada destino (nome do novo link) já não deve existir 4 . Ao criar links físicos, cada um TARGET
deve existir. Links simbólicos podem conter texto arbitrário; se posteriormente resolvido, um link relativo será interpretado em relação ao diretório pai.
Argumentos obrigatórios para opções longas também são obrigatórios para opções curtas.
OPÇÕES
O parâmetro final,, <link-name>
assume como padrão a última parte do destino. Portanto, quando o destino for /path/dir
o nome do link, o padrão será dir
se não for especificado. 1 E se você, por exemplo, criar ~/etc
com mkdir ~/etc
e em seguida, executar ln -s /etc
em ~
que não pode criar o link, porque o nome / diretório já existe. 3
E você pode ver o link criado em seu diretório pessoal (aqui, por exemplo, é claro que você pode nomeá-lo como quiser):
$ ls -l ~/root
lrwxrwxrwx 1 videonauth videonauth 1 Dez 14 00:28 root -> /
1 Obrigado a @thomasrutter por apontar isso.
2 Veja também man link
e man symlink
3 Obrigado a @steeldriver por fornecer um exemplo nos comentários.
4 Parte enfatizada para destacar o texto, uma vez que é relevante para a pergunta.
cd /
? Ou você gosta de criar um link que continuaria repetindo um loop repetidamente? exemplo:cd root/home/terrance/root/home/terrance/root/home/terrance/root
. . . etc