Nesta guía, mostrarémosche como crear e usar ligazóns simbólicas usando o comando ln.
Hai dous tipos de ligazóns dispoñibles:
- Ligazóns duras
- Ligazóns suaves
Previamente escribín unha guía que xa mostra as ligazóns duras e por que usalo, polo que esta guía centrarase fundamentalmente en enlaces simples ou ligazóns simbólicas como son máis comúnmente coñecidas.
¿Que é unha conexión dura?
Cada ficheiro do sistema de ficheiros identifícase cun número chamado inode. Na maioría das veces non terás que preocuparse disto, pero a importancia de isto sae á luz cando queres crear unha ligazón dura.
Unha ligazón dura permítelle asignar un nome diferente a un ficheiro nunha localización diferente pero esencialmente é exactamente o mesmo. A clave que une os ficheiros en conxunto é o número de inodoro.
O gran aspecto das ligazóns duras é que non ocupan ningún espazo físico no disco duro.
Unha ligazón dura facilita a categorización de ficheiros. Por exemplo, imaxine que ten un cartafol cheo de fotos. Podería crear un cartafol chamado fotos de vacacións, outro cartafol chamado fotos de nenos e un terceiro fotos de animais chamadas.
É posible que teñas algunhas fotos que se axustan ás tres categorías porque foron tomadas de vacacións cos teus fillos e cans presentes.
Pode poñer o ficheiro principal nas fotos de fotos de vacacións e despois crear unha ligazón difícil para esa foto na categoría de fotos do neno e outra ligazón dura na categoría de fotos de mascotas. Non se toma espazo extra.
Todo o que tes que facer é introducir o seguinte comando para crear unha ligazón dura:
ln / path / to / file / path / to / hardlink
Imaxina que tiña unha foto chamada BrightonBeach no cartafol de fotos de vacacións e quería crear unha ligazón na carpeta de fotos do neno que usaría o seguinte comando
ln /holidayphotos/BrightonBeach.jpg /kidsphotos/BrightonBeach.jpg
Podes indicar cantos arquivos conectan ao mesmo inodo empregando o comando ls como segue:
ls -lt
A saída será algo así como -rw-r - r-- 1 nome de usuario groupname nome de ficheiro de data.
A primeira parte mostra os permisos do usuario. O bit importante é o número despois dos permisos e antes do nome de usuario.
Se o número é 1, é o único ficheiro que indica un inodo particular (é dicir, non está ligado). Se o número é maior que un, entón é difícil ligado por 2 ou máis ficheiros.
¿Que é unha ligazón simbólica?
Unha ligazón simbólica é como un atallo dun ficheiro a outro. Os contidos dunha ligazón simbólica son a dirección do ficheiro ou cartafol actual aos que está ligado.
O beneficio de utilizar ligazóns simbólicas é que pode vincular a ficheiros e cartafoles noutras particións e noutros dispositivos.
Outra diferenza entre unha ligazón dura e unha ligazón simbólica é que se debe crear unha ligazón dura contra un ficheiro que xa existe mentres que unha ligazón suave pode ser creada con antelación ao ficheiro que está apuntando a existente.
Para crear unha ligazón simbólica use a seguinte sintaxe:
ln -s / path / to / file / path / to / link
Se estás preocupado por sobrescribir unha ligazón que xa existe, podes usar o botón -b como segue:
ln -s -b / path / to / file / path / to / link
Isto creará unha copia de seguridade da ligazón se xa existe, creando o mesmo nome de ficheiro pero cunha tonalidade ao final (~).
Se xa existe un ficheiro co mesmo nome que o enlace simbólico, recibirá un erro.
Pode forzar a ligazón para sobrescribir o ficheiro empregando o seguinte comando:
ln -s -f / path / to / file / path / to / link
Probablemente non queiras usar o interruptor -f sen o interruptor -b xa que perderás o ficheiro orixinal.
Outra alternativa é recibir unha mensaxe preguntando se quere sobrescribir un ficheiro se xa existe. Podes facelo co seguinte comando:
ln -s -i / path / to / file / path / to / link
Como se di si un ficheiro é unha ligazón simbólica?
Executa o seguinte comando ls:
ls -lt
Se un ficheiro é unha ligazón simbólica verá algo como isto:
myshortcut -> myfile
Podes usar unha ligazón simbólica para navegar a outro cartafol.
Por exemplo, imaxine que tes unha ligazón a / home / music / rock / alicecooper / heystoopid chamado heystoopid
Pode executar o seguinte comando cd para navegar a esa carpeta empregando o seguinte comando:
cd heystoopid
Resumo
Entón é iso. Utiliza ligazóns simbólicas como atallos. Pódense empregar para facer camiños realmente longos máis curtos e unha forma de obter un fácil acceso aos ficheiros noutras particións e unidades.
Esta guía amosa todo o que precisa saber sobre ligazóns simbólicas, pero podes consultar a páxina de manual para o comando ln para os outros interruptores.