====== Links simbólicos e físicos ======
No sistema UNIX há um tipo de arquivo que é o //link// que faz ligações de um arquivo para outro e o qual pode ser chamado de link físico (//hard link//) ou link simbólico (//soft link//).
==== Link simbólico (soft link) ====
Usaremos o soft link quando quisermos fazer uma referência simples um caminho muito longo, poupando assim a digitação. Por padrão, a permissão de qualquer link sempre será 0777, mesmo que o arquivo para qual ele aponte seja diferente.
Para criar um link simbólico para um arquivo no mesmo local (diretório):
# ls /etc/ > lista
# ln -svf lista simbolico
“simbolico” -> “lista”
# ls -l simbolico
lrwxrwxrwx 1 root root 5 Mai 28 19:00 simbolico -> lista
Agora em outro diretório:
# ls /etc/ > /tmp/origem
# ln -sfv /tmp/origem destino
“destino” -> “/tmp/origem”
# ls -la destino
lrwxrwxrwx 1 root root 11 Mai 28 19:04 destino -> /tmp/origem
==== Link físico ====
A diferença entre o //hard link// e um //soft link// é que o //soft link// precisa do parâmetro "//-s//", e o link simbólico serve para arquivos e diretórios e o link físico serve apenas para arquivos, mas a filosofia é a mesma. Vamos supor supor que o arquivo //teste.txt// tenha 20 MB e ele seja importante. Mas ficar duplicando um arquivo somente para ter uma cópia de segurança e ficar gastando 40 MB do disco rígido não é muito interessante. Então, nesse caso, você cria um //hard link//.
O que acontece aqui é que temos um //link físico// que aponta para o arquivo //teste.txt// e os dois possuem o mesmo conteúdo. Se um dos arquivos for alterado, será afetado o outro também. Não é possível ter dois arquivos com o mesmo //inode//, mas com o //link físico// ocorre essa situação, que é uma exceção à regra. Para esse caso é como se um arquivo tivesse dois nomes, já que o //inode// dele é o mesmo.
# ln -fv lista hardlink
“hardlink” => “lista”
Usando a flag "//-i//" do comando //ls// podemos visualizar os //inodes//:
# ls -li hardlink lista
652 -rw-r--r-- 2 root root 1243 Mai 28 19:00 hardlink
652 -rw-r--r-- 2 root root 1243 Mai 28 19:00 lista