Unix: softlinks, hardlinks

4

Estou um pouco confuso com as diferenças entre um softlink e um hardlink (no unix).

Parece que um softlink é o mesmo que um atalho no Windows ou um alias no Mac OS X. (Alguém pode confirmar isso?) Softlinks podem vincular a diretórios e arquivos.

Não tenho certeza do que um link físico faz ou se é útil.

É melhor usar um em vez do outro?

Obrigado.

    
por sixtyfootersdude 08.03.2010 / 18:37

1 resposta

4

Links físicos podem funcionar apenas no mesmo sistema de arquivos. Eles são basicamente nomes diferentes para um e o mesmo grupo de dados (arquivo). Ou seja Se você criar um link físico para um arquivo e excluir o arquivo original, o link continuará existindo e os dados estarão acessíveis através do link físico. O espaço em disco é liberado quando o último link físico é excluído. Na verdade, não há diferença entre o arquivo original e o hardlink criado posteriormente. Eles são intercambiáveis. Depois de criar um link físico, não há mais "original" e "link".

Softlinks podem ser usados entre diferentes sistemas de arquivos, ou seja, um link pode ser criado no sistema de arquivos2 para vincular a um arquivo / dir no sistema de arquivos1. Além disso, se você remover o original, o link será quebrado, pois aponta para um local indefinido.

Sim, você pode pensar em softlinks como "contornos" no Windows, mas eles não são exatamente os mesmos. Atalho no Windows é um arquivo por si só , e se um programa não pode interpretá-los, não pode usá-los.

Aqui está um artigo bem retratado sobre o tópico:)

    
por 08.03.2010 / 18:45