Recomendado, 2024

Escolha Do Editor

Diferença entre Hard link e Soft link

Os links no Unix são essencialmente os ponteiros que se associam aos arquivos e diretórios. A principal diferença entre um hard link e um soft link é que hard link é a referência direta ao arquivo, enquanto soft link é a referência pelo nome, o que significa que ele aponta para um arquivo pelo nome do arquivo.

O link físico vincula os arquivos e diretórios no mesmo sistema de arquivos, mas o link Soft pode atravessar os limites do sistema de arquivos.

Antes de entender os links, devemos primeiro entender o inode, um inode é uma estrutura de dados composta de metadados sobre o arquivo, como data de criação do arquivo, autorizações de arquivo, proprietário do arquivo e muito mais.

Gráfico de comparação

Base para comparaçãoLink duro
Link suave
BasicUm arquivo pode ser acessado através de muitos nomes diferentes, conhecidos como hard links.Um arquivo pode ser acessado através de diferentes referências apontando para esse arquivo é conhecido como um link flexível.
Validação de link, quando o arquivo original é excluídoAinda válido e arquivo pode ser acessado.
Inválido
Comando usado para criaçãoln
ln -s
número inodeMesmo
Diferente
Pode ser ligadoPara sua própria partição.Para qualquer outro sistema de arquivos, mesmo em rede.
Consumo de memóriaMenosMais
Caminho relativoNão aplicávelPermitido

Definição de link físico

Links físicos ligam diretamente dois arquivos no mesmo sistema de arquivos e, para identificação, ele usa o número de inode do arquivo. Links rígidos não podem ser implementados em diretórios (já que eles apontam para inode). Quando o comando “ ln ” é utilizado para gerar um link físico, ele cria outro arquivo na linha de comando que pode ser usado para referenciar o arquivo original. Tanto o arquivo original quanto o gerado possuem o mesmo inode e conteúdo; portanto, eles terão as mesmas permissões e o mesmo proprietário.

A remoção do arquivo original não influencia o arquivo vinculado, e um arquivo vinculado permanecerá. O inode contém um contador, para calcular o número de links físicos para si mesmo. Quando o contador indica o valor 0, o inode é esvaziado. Sempre que você fizer alterações no link físico, ele será imitado no arquivo original.

Definição de link Soft

Links suaves geralmente são um caminho alternativo (ou um alias) para o arquivo original; estes também são referidos como links simbólicos . Inclui o nome do “arquivo de destino” do link, que especifica que é um link flexível. Quando um arquivo é acessado, o link temporário o redireciona para o arquivo de destino através do caminho gravado no assunto do link flexível.

Estes são muito úteis no caso do sistema operacional Windows, onde o link macio se comporta como atalhos. A criação e a exclusão dos links não afetam o arquivo original. Se o arquivo de destino for excluído, o link flexível ficará suspenso, o que significa que ele não aponta para lugar nenhum e gera uma mensagem de erro quando o arquivo de destino é acessado. Links suaves não usam o número do inode, ao contrário do link físico. Um caminho absoluto ou relativo pode fazer parte dos links simbólicos.

Principais diferenças entre link físico e link físico

  1. Um link físico é um nome adicional do arquivo original que refere inode para acessar o arquivo de destino. Em contraste, o link simples é distinto do arquivo original e é um alias para o arquivo original, mas não usa o inode.
  2. Quando um arquivo original é excluído, o link flexível se torna inválido, enquanto um link físico é válido mesmo se o arquivo de destino for excluído.
  3. No Linux, o comando usado para a criação do hard link é “ ln “. Contra, o comando usado para um link temporário é " ln -s ".
  4. O hard link tem o mesmo número de inode diferente do soft link, onde o arquivo de destino e seu link soft possuem um número de inode distinto.
  5. Links rígidos são restritos a suas próprias partições, mas links suaves podem abranger diferentes sistemas de arquivos.
  6. O desempenho do hard link é melhor que o soft link em alguns casos.
  7. Caminho relativo e caminho absoluto ambos são permitidos em links suaves. Pelo contrário, o caminho relativo não é permitido em um link físico.

Conclusão

Um link físico não requer espaço extra e resolução mais rápida, mas as alterações aplicadas a um link físico refletem no arquivo original. Por outro lado, o Softlink precisa de espaço extra, mas qualquer alteração no link não afeta o arquivo original. Soft links são permitidos para diretórios ao contrário do link Hard.

Top