Linux não possui atalhos, mas possui Links Simbólicos – ou Symlinks, como normalmente são chamados. Mas o que exatamente são links simbólicos? E como você cria um? Vamos descobrir.
Testaremos os comandos em uma instalação do Ubuntu, embora a sintaxe funcione da mesma forma em todas as distribuições Linux. Curiosamente, links simbólicos também podem ser criados em um Mac PC.
O que são links simbólicos?
Se você quiser acessar um arquivo de vários locais, simplesmente copiá-lo não é uma boa solução. Você está desperdiçando espaço em disco, sem mencionar que dificulta o rastreamento de alterações devido à existência de vários arquivos.
Em um sistema operacional baseado em GUI, você superaria isso criando atalhos. Para um sistema operacional baseado em CUI (como qualquer distribuição Linux ), a resposta é um link simbólico. Até o Microsoft Windows pode aproveitar links simbólicos em algumas situações.
Um link simbólico ou link simbólico é apenas um arquivo apontando para outro arquivo ou diretório – mesmo em um sistema de arquivos ou partição completamente diferente. Abrir o link simbólico dá acesso ao mesmo arquivo original, com quaisquer alterações refletidas também no arquivo principal.
Isso também vale para permissões – usar chmod para alterar as permissões de um arquivo de link simbólico modificará, na verdade, as permissões do arquivo de destino.
Tipos de links simbólicos
Links simbólicos também são conhecidos como soft links. Como o nome pode sugerir, não é o único tipo de sistema de vinculação de arquivos no Linux. Links físicos podem ser usados como uma alternativa aos links simbólicos em determinados cenários, embora apresentem uma série de restrições.
Para começar,hard linkssão simplesmente nomes de arquivos que apontam para o mesmo inode. Embora isso os torne muito eficientes em termos de armazenamento e velocidade de acesso, também os limita a arquivos no mesmo sistema de arquivos ou partição. E devido a uma peculiaridade do como funciona o acesso a pastas no Linux, você também não pode usar links físicos para diretórios.
Links virtuais ou links simbólicos, por outro lado, são mais parecidos com atalhos na área de trabalho. Cada soft link é essencialmente um pequeno arquivo que aponta para os dados originais, sem estar diretamente vinculado a eles. Isso significa que os links virtuais podem apontar facilmente para arquivos e diretórios em outras partições e sistemas de arquivos, sem quaisquer restrições.
Hard Links VS Soft Links – Qual tipo usar?.
Links virtuais são a forma mais versátil de links, pois podem ser usados em arquivos e diretórios em vários sistemas de arquivos sem quaisquer restrições. Mas por que então temos links físicos? Eles oferecem alguma vantagem sobre os links simbólicos?
Bem, no papel, os links físicos são mais eficientes. Como usam os mesmos inodes, eles não ocupam espaço adicional em disco e podem ser acessados muito mais rapidamente do que links virtuais. É por isso que muitos administradores de sistema recomendarão o uso de links físicos sempre que possível.
Dito isto, porém, os contras do uso de links simbólicos são mínimos. Especialmente os computadores modernos não se importam com alguns kilobytes de armazenamento extra e, a menos que você preencha o sistema com milhões de links virtuais, o tamanho adicional do arquivo raramente importa.
Criando Links Simbólicos
Links simbólicos – ou melhor, links de arquivos em geral – são criados usando o comando ln. Por padrão, o comando cria links físicos. Para criar um link simbólico, você precisa anexar o sinalizador -s ao comando ln.
A sintaxe é bastante simples. O comando ln usa dois parâmetros – o caminho do arquivo (ou pasta) ao qual será vinculado e o caminho do arquivo de link a ser criado.
Assim:
ln -s nomes de usuário_names.txt
Isso criará um link simbólico chamado nomes conectado ao arquivo de texto user_names. Para ver se o link simbólico foi realmente criado, basta usar o comando ls.
Como você pode ver, o Ubuntu mostra cores diferentes para diferentes categorias de arquivos, com diretórios indicados em azul escuro e links simbólicos com uma cor azul mais clara (ciano, na verdade).
Também podemos usar a mesma sintaxe para criar um link simbólico para a pasta:
ln -s exemplos pasta_de_exemplo
Para criar links simbólicos para arquivos e pastas em outros diretórios, basta usar o caminho completo. Por exemplo:
ln -s exemplos/exemplo3.txt exemplo_distante
Limitações de links simbólicos
Links simbólicos são uma ótima maneira de conectar arquivos em seu sistema sem precisar fazer cópias, mas eles têm suas próprias limitações. Sim, embora os links virtuais sejam menos restritivos do que os links físicos, ainda há algumas coisas a serem lembradas..
Primeiro, o comando ln não verifica realmente os links criados. Isso significa que é possível inserir um nome de arquivo que realmente não existe e você não receberá nenhum erro. A única maneira de confirmar o link é tentar usá-lo e ver se ele leva ao arquivo correto.
Em segundo lugar, embora acessar ou alterar as permissões do link simbólico altere as propriedades do arquivo original, o mesmo não vale para a exclusão do arquivo. Você pode remova o link simbólico com segurança sem afetar o arquivo ou diretório vinculado.
Criando links simbólicos no Linux
A maior dificuldade em usar o terminal para criar links simbólicos é a dificuldade de acessar arquivos importantes espalhados por vários diretórios. A solução inteligente é criar links simbólicos para esses arquivos no próprio diretório inicial, como atalhos na área de trabalho.
E, diferentemente dos links físicos, os links simbólicos podem ser criados facilmente, sem quaisquer restrições, até mesmo para conexão a diretórios ou arquivos em diferentes partições e sistemas de arquivos. Tenha em mente que isso também significa que um link simbólico pode apontar para um arquivo inexistente – você terá que tentar acessar o link para verificar se o arquivo existe.
.