Junior — Middle
Qual é a diferença entre um link duro e um link simbólico no Linux e quais são as suas características de uso?
sobes.tech IA
Resposta da IA
Um link físico (hard link) e um link simbólico (symlink) são duas formas de criar ligações a ficheiros no Linux, mas diferem no seu princípio de funcionamento e aplicação:
-
Link físico:
- É um nome adicional para um ficheiro existente.
- Aponta diretamente para o inode do ficheiro.
- Vários links físicos a um mesmo ficheiro são iguais: o ficheiro existe enquanto houver pelo menos um link.
- Não é possível criar um link físico para um diretório (para evitar ciclos).
- Não é possível criar um link físico para um ficheiro noutra partição ou dispositivo.
-
Link simbólico:
- É um ficheiro separado que contém o caminho para outro ficheiro ou diretório.
- Pode apontar para diretórios e ficheiros noutras partições.
- Se o ficheiro de destino for eliminado, o link simbólico torna-se "quebrado" (não funciona mais).
Exemplo de uso:
# Criar um link físico
ln original.txt hardlink.txt
# Criar um link simbólico
ln -s /caminho/para/original.txt symlink.txt
Os links físicos são úteis quando se precisa de ter vários nomes para um mesmo ficheiro dentro da mesma partição, e os links simbólicos quando se deseja fazer referência a ficheiros ou diretórios em diferentes locais ou partições.