/Home/John/Dir1/Dir2/Dir3/Dir4
O primeiro slash para a frente é o diretório raiz; Home é o diretório doméstico, que é um subdiretório do diretório raiz; John é o diretório do usuário, John, que é um subdiretório do diretório doméstico. O restante dos diretórios é subdiretorias para um diretório anterior criado por John.
É possível ter um nome chamado quarto residente no diretório dir2 e representando DIR4, para o caminho absoluto,
/Home/John/Dir1/Dir2/Dir3/Dir4
ou o caminho relativo,
DIR3/DIR4
Agora, o quarto residente em Dir2 é um symblink para dir4. Considere o mesmo link absoluto, mas com um arquivo chamado, Effile; aquilo é:
/Home/John/Dir1/Dir2/Dir3/Dir4/Effile
É possível ter um nome chamado FourthFile residindo no diretório DIR2 e representando effile, para o caminho absoluto,
/Home/John/Dir1/Dir2/Dir3/Dir4/Effile
ou o caminho relativo,
dir3/dir4/effile
Agora, o quarto arquivo residente em Dir2 é um symblink para efilar.
Um link simbólico pode representar um diretório ou um arquivo. O leitor agora sabe o que é chamado de link simbólico em sistemas operacionais Linux/Unix. No entanto, é que todo o programador deve saber? - Não. O programador precisa saber como criar um link simbólico, usar um link simbólico, excluir um link simbólico, significando links pendentes, comparação com links rígidos e as vantagens e desvantagens de qualquer tipo de link. Tudo o que é discutido neste artigo.
O shell bash é usado para este artigo.
Conteúdo do artigo
Criando um symblink
Antes de criar um symblink, um caminho de diretório e/ou arquivo já deveriam existir. Se o caminho ainda não existir, poderá ser criado da seguinte maneira, a partir de qualquer diretório:
mkdir -p/home/john/dir1/dir2/dir3/dir4
Se o interruptor -p estiver ausente, os diretórios não serão criados. Um symlink pode representar um caminho de diretório sozinho ou um caminho de diretório com um arquivo. Se o arquivo ainda não existir, poderá ser criado a partir de qualquer diretório ou diretório inicial, como segue:
Touch/Home/John/Dir1/Dir2/Dir3/Dir4/Effile
O arquivo (arquivo de texto) é efilo e o arquivo atualmente não tem conteúdo.
Criando um symblink
A sintaxe para criar um symblink para um diretório é:
ln -s [caminho original] [novo nome do link]
A sintaxe para criar um symblink para um arquivo é semelhante, ou seja:
LN -S [Path/FileName Original] [NOVO LINK FILENAME]
O comando link é ln. Se o interruptor -s estiver ausente, um link rígido será criado (veja abaixo).
Criando um symblink de diretório
Um symlink tem que residir em um diretório. Para criar um link simbólico para outro diretório, o programador precisa usar o comando CD para ir para onde o symlink residirá e, ali, criar o symlink com um caminho absoluto ou um caminho relativo. O symlink, quarto a residir em dir2, para o diretório, dir4 do caminho
/Home/John/Dir1/Dir2/Dir3/Dir4
pode ser criado no DIR2 da seguinte maneira:
ln -s/home/john/dir1/dir2/dir3/dir4 quarto
O uso do link relativo será o seguinte, ainda no diretório DIR2:
LN -S DIR3/DIR4 Quarto
Criando um arquivo simplório
Um symlink tem que residir em um diretório. Para criar um link simbólico para um arquivo em outro diretório, o programador precisa usar o comando CD para ir para onde o symlink residirá e, ali, criar o símbolo com um caminho absoluto ou com um caminho relativo. O symlink, quarto arquivo para residir em dir2, para o arquivo effile em dir4, do caminho,
/Home/John/Dir1/Dir2/Dir3/Dir4
pode ser criado no DIR2 da seguinte maneira:
ln -s/home/john/dir1/dir2/dir3/dir4/effile FourthFile
O uso do link relativo será o seguinte, ainda no diretório DIR2:
Ln -s Dir3/Dir4/Effile FourthFile
É possível criar um link de arquivo a partir de um diretório Symlink? - Sim. Eu deixo isso como um exercício para o leitor.
Usando o symlink
Para acessar o diretório, Dir4, usando o symlink, quarto, de qualquer diretório, tipo:
CD ~/DIR1/DIR2/Quarto
e pressione Enter. Observe que o quarto substituiu o DIR3/DIR4. O prompt se tornará algo como:
John@Computername: ~/dir1/dir2/quarto $
No entanto, este não é o caminho para dir4. O caminho é realmente:
/home/John/dir1/dir2/dir3/dir4/
Para acessar o arquivo, effile no diretório, dir4, usando o symlink, quarto arquivo, de qualquer diretório, tipo:
Cat ~/Dir1/Dir2/Quartofile
e pressione Enter. Observe que o FourthFile substituiu o DIR3/DIR4/EFFILE. O conteúdo do arquivo (effile) deve ser exibido no terminal. Observe o uso do comando, gato.
Removendo o Symlink
Mais de um symblink
Pode haver mais de um symblink para um diretório ou um arquivo. Quando um diretório ou arquivo é criado, há um link natural para ele. Um link simbólico é apenas um código alternativo e mais curto para acessar o diretório ou arquivo. Pode haver mais de um symblink para acessar um diretório ou um arquivo. Se algum link simbólico for excluído, os outros symblinks ou o link natural permanecem em operação.
Para saber o número de links e o caminho original (caminho usado na criação do symlink), vá para o diretório que possui o symlink com o comando do CD e digite:
LS -LA
Ele exibirá algumas linhas. Haverá uma linha para cada um dos links. Depois que o texto como LRWXR-XRWX será o número de symblinks. No final da linha, será o caminho original. Um exemplo da tela é o seguinte:
Total 12
drwxr-xr-x 3 John John 4096 30 de maio 19:42 .
DRWXR-XR-X 3 John John 4096 30 de maio 07: 59…
drwxr-xr-x 3 John John 4096 30 de maio 07:59 DIR3
lrwxrwxrwx 1 John John 32 30 de maio 19:42 Quarto ->/home/forcha/dir1/dir2/dir3/dir4
lrwxrwxrwx 1 John John 39 30 de maio 19:38 Quarto e
O comando rm
Lembre -se, o symlink reside em um diretório. Um diretório ou arquivo simplista é removido da mesma maneira que um arquivo é removido; Afinal, um symblink é um arquivo. Os dois comandos a seguir ilustram isso:
rm ~/dir1/dir2/quarto
rm ~/Dir1/Dir2/Quartofile
Observe o caminho anterior para o arquivo simplista. Além disso, observe o uso de ~ que se refere ao diretório do usuário.
Link pendurado
Pode haver mais de um symblink para um diretório ou um arquivo. Se o diretório ou arquivo real for movido ou removido usando o link natural, os symblinks se tornam links pendentes, pois não têm mais uso. Um link pendurado também é chamado de link quebrado, link órfão, ou link morto.
Hard Link Basics
O nome natural de um diretório ou arquivo é um link difícil. Outros links rígidos podem ser criados para apontar para o mesmo diretório ou arquivo. Se o diretório ou arquivo original for excluído (removido) usando o link natural, os dados ainda existem através dos outros links rígidos. Os dados são removidos completamente apenas quando todos os links rígidos foram removidos.
Nota: Links rígidos são recomendados apenas para arquivos e não para diretórios.
Algumas vantagens e desvantagens de ambos os links
Vantagens
Desvantagens
Conclusão
Um symlink é um atalho para um diretório ou um arquivo. O atalho é um arquivo de pequeno conteúdo e precisa residir em um diretório. Um novo link rígido é um nome alternativo para o nome original e aponta para o mesmo arquivo. Links suaves e links rígidos têm suas vantagens e desvantagens. Para criar um symblink, vá para o diretório onde o symlink tem que ser. Use o comando ln com o interruptor -s. Para acessar um link simbólico, encaixe o symlink no final do caminho do diretório e possivelmente precede o caminho com ~. Outro nome para Symlink é um link simbólico ou link suave. Para saber o número de symlinks para um diretório ou arquivo, vá para o diretório onde o symlink reside e use o comando, “ls -la.”Isso também dá o caminho original.
Um link simulado é removido da maneira como um arquivo é removido. Existem diferentes maneiras de remover um symblink. No entanto, o comando para lembrar facilmente de remover um symblink é rm. Ajuste o symlink no final do caminho do diretório, se necessário. E possivelmente preceder o caminho com ~. Um link vencedor é um link simbólico de um arquivo ou um diretório, que foi movido ou excluído (removido). Esse link não é mais de uso. Outro nome para Links Dangling é o link quebrado, ou link órfão, ou link morto.