<Anterior | Conteúdo | Próxima>
Criação de links simbólicos
Os links simbólicos foram criados para superar as duas desvantagens dos links físicos: links físicos não podem abranger dispositivos físicos e links físicos não podem fazer referência a diretórios, apenas arquivos. Links simbólicos são um tipo especial de arquivo que contém um ponteiro de texto para o arquivo ou diretório de destino.
A criação de links simbólicos é semelhante à criação de links físicos:
[me @ linuxbox playground] $ ln-s fun fun-sym [me @ linuxbox playground] $ ln -s ../fun dir1 / fun-sym [me @ linuxbox playground] $ ln -s ../fun dir2 / fun-sym
[me @ linuxbox playground] $ ln-s fun fun-sym [me @ linuxbox playground] $ ln -s ../fun dir1 / fun-sym [me @ linuxbox playground] $ ln -s ../fun dir2 / fun-sym
O primeiro exemplo é bastante direto, simplesmente adicionamos a opção “-s” para criar um link simbólico em vez de um link físico. Mas e os próximos dois? Lembre-se, quando criamos um link simbólico, estamos criando uma descrição de texto de onde o arquivo de destino é relativo ao link simbólico. É mais fácil ver se olharmos para o ls saída:
[me @ linuxbox playground] $ ls -l dir1
[me @ linuxbox playground] $ ls -l dir1
4 total | ||
-rw-r - r-- 4 me | me | 1650 2016-01-10 16:33 diversão difícil |
lrwxrwxrwx 1 eu | me | 6 2016-01-15 15:17 fun-sym -> ../fun |
A lista de divertido-sim in dir1 mostra que é um link simbólico pelo “l” à esquerda no primeiro campo e que aponta para “../fun”, o que é correto. Relativo à localização de divertido-sim, Diversão está no diretório acima dele. Observe também que o comprimento do arquivo de link simbólico é 6, o número de caracteres na string “../fun” ao invés do comprimento do arquivo para o qual ele está apontando.
Ao criar links simbólicos, você pode usar nomes de caminho absolutos:
[me @ linuxbox playground] $ ln -s / home / me / playground / fun dir1 / fun-sym
[me @ linuxbox playground] $ ln -s / home / me / playground / fun dir1 / fun-sym
ou nomes de caminhos relativos, como fizemos em nosso exemplo anterior. Na maioria dos casos, usar nomes de caminhos relativos é mais desejável porque permite que uma árvore de diretórios contendo links simbólicos e seus arquivos referenciados sejam renomeados e / ou movidos sem quebrar os links.
Além de arquivos regulares, os links simbólicos também podem fazer referência a diretórios:
[me @ linuxbox playground] $ ln -s dir1 dir1-sim
[me @ linuxbox playground] $ ls -l
16 total
drwxrwxr-x | 2 | me | me | 4096 | 2016-01-15 | 15:17 | dir1 |
lrwxrwxrwx | 1 | me | me | 4 | 2016-01-16 | 14:45 | dir1-sym -> dir1 |
drwxrwxr-x | 2 | me | me | 4096 | 2016-01-15 | 15:17 | dir2 |
-rw-r - r-- | 4 | me | me | 1650 | 2016-01-10 | 16:33 | Diversão |
-rw-r - r-- | 4 | me | me | 1650 | 2016-01-10 | 16:33 | divertido |
lrwxrwxrwx | 1 | me | me | 3 | 2016-01-15 | 15:15 | fun-sym -> diversão |