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
ln
on linkkikomento. -s
Lippu täsmennetään, että linkin pitäisi olla pehmeä. -s
voidaan syöttää myös nimellä -symbolic
.
Oletuksena ln
komento 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 link
itse (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.txt
kanssa trans.txt
. Mahdolliset muutokset trans.txt
näkyvät myös alkuperäisessä tiedostossa.
Huomaa, että tämä yllä oleva komento luo linkkitiedoston trans.txt
nykyiseen 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ä unlink
voi 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 r
ja f
. Mutta sitä emme halua. Symlink voi olla kansio, mutta meitä kiinnostaa vain nimi.
Tärkein etu rm
yli unlink
on, 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/james
kohteeseen /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 james
hakemiston rikkinäiset symlinkit - tiedostoista hakemistoihin alihakemistoihin.
Syöttäminen -delete
vaihtoehto 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.