Symlink-opas Linuxissa - Symbolisen linkin luominen ja poistaminen

Symlink (kutsutaan myös symboliseksi linkiksi) on Linux-tyyppinen tiedosto, joka osoittaa toiseen tiedostoon tai kansioon tietokoneellasi. Symlinkit ovat samanlaisia ​​kuin Windowsin pikanäppäimet.

Jotkut ihmiset kutsuvat symlinkkejä "pehmeiksi linkeiksi" - eräänlainen linkki Linux / UNIX-järjestelmissä - toisin kuin "kovat linkit".

Ero pehmeän linkin ja kovan linkin välillä

Pehmeät linkit ovat samanlaisia ​​kuin pikakuvakkeet, ja ne voivat osoittaa toiseen tiedostoon tai hakemistoon missä tahansa tiedostojärjestelmässä.

Kova linkit ovat myös tiedostojen ja kansioiden pikavalintoja, mutta kovaa linkkiä ei voida luoda kansiolle tai tiedostolle eri tiedostojärjestelmässä.

Katsotaanpa symbolilinkin luomisen ja poistamisen vaiheet. Näemme myös, mitkä rikkinäiset linkit ovat ja miten ne voidaan poistaa.

Symlinkin luominen

Symlinkin luomisen syntaksi on:

ln -s   

lnon linkkikomento. -sLippu täsmennetään, että linkin pitäisi olla pehmeä. -svoidaan syöttää myös nimellä -symbolic.

Oletuksena lnkomento luo kovia linkkejä. Seuraava argumentti on, path to the file (or folder)että haluat linkittää. (Toisin sanoen tiedosto tai kansio, jolle haluat luoda pikakuvakkeen.)

Ja viimeinen argumentti on path to linkitse (pikakuvake).

Symbolilinkin luominen tiedostolle - esimerkkikomento

ln -s /home/james/transactions.txt trans.txt 

Sen jälkeen tämän komennon, voit käyttää /home/james/transactions.txtkanssa trans.txt. Mahdolliset muutokset trans.txtnäkyvät myös alkuperäisessä tiedostossa.

Huomaa, että tämä yllä oleva komento luo linkkitiedoston trans.txtnykyiseen hakemistoon. Voit myös luoda linkitetyn tiedoston kansiolinkkiin seuraavasti:

ln -s /home/james/transactions.txt my-stuffs/trans.txt 

Nykyisessä hakemistossa on oltava hakemisto, jota jo kutsutaan "my-stuffs" - jos ei, komento heittää virheen.

Symbolilinkin luominen kansioon - esimerkkikomento

Samanlainen kuin yllä, käytämme:

ln -s /home/james james 

Tämä luo symlinkillä varustetun kansion nimeltä james, joka sisältäisi /home/james. Tähän linkitettyyn kansioon tehdyt muutokset vaikuttavat myös alkuperäiseen kansioon.

Symbolin poistaminen

Ennen kuin haluat poistaa symlinkin, kannattaa ehkä varmistaa, että tiedosto tai kansio on symlinkki, jotta et vahingoita tiedostojasi.

Yksi tapa tehdä tämä on:

ls -l  

Tämän komennon suorittaminen päätelaitteessa näyttää tiedoston ominaisuudet. Tuloksena, jos ensimmäinen merkki on pieni L-kirjain ('l'), se tarkoittaa, että tiedosto / kansio on symboli.

Näet lopussa myös nuolen (->), joka osoittaa tiedoston / kansion, johon simlink osoittaa.

Symbolilinkin voi poistaa kahdella tavalla:

Symbolin poistamisen poistaminen linkityksen avulla

Syntaksi on:

unlink  

Tämä poistaa symlinkin, jos prosessi onnistuu.

Vaikka symlinkki olisi kansion muodossa, älä liitä '/', koska Linux olettaa sen olevan hakemisto eikä unlinkvoi poistaa hakemistoja.

Symbolin poistaminen rm: n avulla

Kuten olemme nähneet, symlink on vain toinen tiedosto tai kansio, joka osoittaa alkuperäiseen tiedostoon tai kansioon. Voit poistaa tämän suhteen poistamalla linkitetyn tiedoston.

Syntaksi on siis:

rm  

Esimerkiksi:

rm trans.txt rm james 

Huomaa, että yrittäminen rm james/johtaisi virheeseen, koska Linux olettaa, että 'james /' on hakemisto, joka vaatii muita vaihtoehtoja, kuten rja f. Mutta sitä emme halua. Symlink voi olla kansio, mutta meitä kiinnostaa vain nimi.

Tärkein etu rmyli unlinkon, että voit poistaa useita symlinks kerralla, kuten voit tiedostoja.

Kuinka löytää ja poistaa rikki linkkejä

Katkenneita linkkejä esiintyy, kun symbolilinkin osoittama tiedosto tai kansio muuttaa polkua tai poistetaan.

Esimerkiksi, jos 'transactions.txt' siirtyy /home/jameskohteeseen /home/james/personal, The trans.txt "linkki tulee rikki. Jokainen yritys käyttää tiedostoa johtaa virheeseen 'Ei sellaista tiedostoa tai hakemistoa'. Tämä johtuu siitä, että linkillä ei ole omaa sisältöä.

Kun löydät vioittuneita linkkejä, voit poistaa tiedoston helposti. Helppo tapa löytää katkenneita symlinkkejä on:

find /home/james -xtype l 

Tämä luetteloi kaikki jameshakemiston rikkinäiset symlinkit - tiedostoista hakemistoihin alihakemistoihin.

Syöttäminen -deletevaihtoehto poistaa ne näin:

find /home/james -xtype l -delete 

Käärimistä

Symbolinen linkki on mielenkiintoinen piirre Linux- ja UNIX-järjestelmissä.

Voit luoda helposti saatavia symlinkkejä viittaamaan tiedostoon tai kansioon, johon ei muuten olisi kätevää päästä. Joidenkin käytäntöjen avulla ymmärrät, kuinka nämä toimivat intuitiivisella tasolla, ja ne tekevät sinusta paljon tehokkaampaa tiedostojärjestelmien hallinnassa.