Tutorial de link simbólico no Linux - Como criar e remover um link simbólico
Um link simbólico (também chamado de link simbólico) é um tipo de arquivo no Linux que aponta para outro arquivo ou pasta em seu computador. Os links simbólicos são semelhantes aos atalhos do Windows.
Algumas pessoas chamam os links simbólicos de "links simbólicos" - um tipo de link em sistemas Linux / UNIX - em oposição a "links físicos".
Diferença entre um Soft Link e um Hard Link
Os links simbólicos são semelhantes aos atalhos e podem apontar para outro arquivo ou diretório em qualquer sistema de arquivos.
Links físicos também são atalhos para arquivos e pastas, mas um link físico não pode ser criado para uma pasta ou arquivo em um sistema de arquivos diferente.
Vejamos as etapas envolvidas na criação e remoção de um link simbólico. Também veremos o que são links quebrados e como excluí-los.
Como Criar um Symlink
A sintaxe para criar um link simbólico é:
ln -s
ln
é o comando link. O -s
sinalizador especifica que o link deve ser flexível. -s
também pode ser inserido como -symbolic
.
Por padrão, o ln
comando cria links físicos. O próximo argumento é path to the file (or folder)
que você deseja vincular. (Ou seja, o arquivo ou pasta para o qual deseja criar um atalho.)
E o último argumento é o path to link
próprio (o atalho).
Como criar um link simbólico para um arquivo - Exemplo de comando
ln -s /home/james/transactions.txt trans.txt
Após executar este comando, você poderá acessar o /home/james/transactions.txt
com trans.txt
. Qualquer modificação em trans.txt
também será refletida no arquivo original.
Observe que este comando acima criaria o arquivo de link trans.txt
em seu diretório atual. Você também pode criar um arquivo vinculado em um link de pasta:
ln -s /home/james/transactions.txt my-stuffs/trans.txt
Deve haver um diretório já denominado "my-stuffs" no diretório atual - caso contrário, o comando gerará um erro.
Como criar um link simbólico para uma pasta - comando de exemplo
Semelhante ao anterior, usaríamos:
ln -s /home/james james
Isso criaria uma pasta com link simbólico chamada 'james', que conteria o conteúdo de /home/james
. Quaisquer alterações nesta pasta vinculada também afetarão a pasta original.
Como remover um link simbólico
Antes de remover um link simbólico, você pode querer confirmar se um arquivo ou pasta é um link simbólico, para que você não adultere seus arquivos.
Uma maneira de fazer isso é:
ls -l
Executar este comando em seu terminal exibirá as propriedades do arquivo. No resultado, se o primeiro caractere for uma letra minúscula L ('l'), significa que o arquivo / pasta é um link simbólico.
Você também verá uma seta (->) no final indicando o arquivo / pasta para o qual o simlink está apontando.
Existem dois métodos para remover um link simbólico:
Como usar o Desvincular para remover um link simbólico
A sintaxe é:
unlink
Isso exclui o link simbólico se o processo for bem-sucedido.
Mesmo se o link simbólico estiver na forma de uma pasta, não acrescente '/', porque o Linux assumirá que é um diretório e unlink
não pode excluir diretórios.
Como usar rm para remover um link simbólico
Como vimos, um link simbólico é apenas outro arquivo ou pasta apontando para um arquivo ou pasta original. Para remover esse relacionamento, você pode remover o arquivo vinculado.
Portanto, a sintaxe é:
rm
Por exemplo:
rm trans.txt rm james
Observe que tentar fazer rm james/
isso resultaria em erro, porque o Linux assumirá que 'james /' é um diretório, o que requer outras opções como r
e f
. Mas não é isso que queremos. Um link simbólico pode ser uma pasta, mas estamos apenas preocupados com o nome.
O principal benefício do rm
over unlink
é que você pode remover vários links simbólicos de uma vez, como faz com os arquivos.
Como Encontrar e Excluir Links Quebrados
Links quebrados ocorrem quando o arquivo ou pasta para o qual um link simbólico aponta muda de caminho ou é excluído.
Por exemplo, se 'transactions.txt' mudar de /home/james
para /home/james/personal
, o link 'trans.txt' será quebrado. Cada tentativa de acessar o arquivo resultará em um erro de 'Arquivo ou diretório inexistente'. Isso ocorre porque o link não tem conteúdo próprio.
Ao descobrir links quebrados, você pode excluir o arquivo facilmente. Uma maneira fácil de encontrar links simbólicos corrompidos é:
find /home/james -xtype l
Isso listará todos os links simbólicos quebrados no james
diretório - de arquivos a diretórios e subdiretórios.
Passar a -delete
opção irá excluí-los assim:
find /home/james -xtype l -delete
Empacotando
O link simbólico é um recurso interessante dos sistemas Linux e UNIX.
Você pode criar links simbólicos facilmente acessíveis para se referir a um arquivo ou pasta que, de outra forma, não seria conveniente de acessar. Com alguma prática, você entenderá como eles funcionam em um nível intuitivo e o tornarão muito mais eficiente no gerenciamento de sistemas de arquivos.