Como crear ligazóns simbólicas usando o comando ln

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:

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.