![O que é um erro “falha ao criar um link simbólico: o arquivo existe”?](https://rvso.com/image/1048323/O%20que%20%C3%A9%20um%20erro%20%E2%80%9Cfalha%20ao%20criar%20um%20link%20simb%C3%B3lico%3A%20o%20arquivo%20existe%E2%80%9D%3F.png)
Estou tentando criar um link simbólico em meu diretório inicial para diretórios e arquivos em minha partição de dados. Eu tentei:
~/Documents$ ln -sv ~/Documents/saga /media/mariajulia/485f3e29-355c-4be3-b80a-1f5abd5604b6/mariajulia/Downloads/saga..doc
para criar um link simbólico nomeado saga
no meu Documents
diretório na minha home
pasta. A saída do terminal é:
ln: failed to create symbolic link ‘/media/mariajulia/485f3e29-355c-4be3-b80a-1f5abd5604b6/mariajulia/Downloads/saga..doc’: File exists
Eu estava verificando o conteúdo de ~/Documents
com ls -a , não há nada além de .
and ..
. Em geral, minha home
pasta está vazia, é apenas uma nova instalação do sistema.
Responder1
Este é um erro clássico... é o contrário:
ln -s Existing-file New-name
então no seu caso
ln -sv /media/mariajulia/485f3e29-355c-4be3-b80a-1f5abd5604b6/mariajulia/Downloads/saga..doc ~/Documents/saga
Deveria trabalhar. Observe, porém:
se
~/Documents/saga
existir e não for um diretório, você também terá o erro;se
~/Documents/saga
existir e for um diretório, o link simbólico será~/Documents/saga/saga..doc
(tem certeza do ponto duplo?)se
~/Documents/saga
não existir, seu link simbólico será~/Documents/saga
(como está, sem extensão).
Responder2
Tenho a mesma mensagem de erro
ao redirecionar
ln -s /usr/bin/nodejs /usr/bin/node
de node.js v0.10.25
para node.js v4.2.3,
então eu olho man ln
e uso
[OPTION]
-f, --force
remove existing destination files
Este é um trabalho como eu esperava.
Responder3
Como @Rmano respondeu em seuresponderos argumentos estavam na ordem errada. Também cometi o mesmo erro com bastante frequência. Assim encontrei um
Maneira infalível de criar links simbólicos
Primeiro vá para o diretório onde deseja criar o link
cd ~/Documents/saga
Em seguida, crie o link com umargumento único.
ln -s /very/long/path/to/target/Downloads/saga..doc
Isso criará um link para o diretório atual com o mesmo nome do destino.
Responder4
Pode não estar relacionado.
Para mim o link estava morto. Apontando para uma pasta inexistente. Ao tentar substituí-lo, ele falharia com esta mensagem. ^ Então, um simples rm linkName
foi o suficiente.