Kuinka luoda kovia ja symbolisia linkkejä Linuxissa


Unix-tyyppisissä käyttöjärjestelmissä, kuten Linuxissa, "kaikki on tiedostoa" ja tiedosto on pohjimmiltaan linkki inodeihin (tietorakenne, joka tallentaa kaiken tiedostosta sen nimeä ja sisältöä lukuun ottamatta).

Kova linkki on tiedosto, joka osoittaa samaan taustalla olevaan inodiin kuin toiseen tiedostoon. Jos poistat yhden tiedoston, se poistaa yhden linkin taustalla olevaan inodiin. Symbolinen linkki (tunnetaan myös nimellä pehmeä linkki) on linkki toiseen tiedostonimeen tiedostojärjestelmässä.

Lue myös: Tiedostojen ja hakemistojen hallinnan suorittaminen

Toinen tärkeä ero näiden kahden linkkityypin välillä on se, että kovat linkit voivat toimia vain samassa tiedostojärjestelmässä, kun taas symboliset linkit voivat kulkea eri tiedostojärjestelmien välillä.

Kuinka luoda kovia linkkejä Linuxissa

Kiinteiden linkkien luomiseen Linuxissa käytämme ln-apuohjelmaa. Esimerkiksi seuraava komento luo kiinteän linkin nimeltä tp tiedostoon topprocs.sh.

ls -l
ln topprocs.sh tp
ls -l

Yllä olevaa tulostetta tarkasteltaessa ls-komennolla uutta tiedostoa ei ilmoiteta linkkinä, vaan se näytetään tavallisena tiedostona. Tämä tarkoittaa, että tp on vain toinen tavallinen suoritettava tiedosto, joka osoittaa samaan taustalla olevaan inodeen kuin topprocs.sh.

Jos haluat tehdä kiinteän linkin suoraan pehmeäksi linkiksi, käytä -P-lippua näin.

ln -P topprocs.sh tp

Kuinka luoda symbolisia linkkejä Linuxissa

Symbolisten linkkien luomiseen Linuxissa käytämme samaa ln-apuohjelmaa -s-kytkimen kanssa. Esimerkiksi seuraava komento luo symbolisen linkin nimeltä topps.sh tiedostoon topprocs.sh.

ln -s ~/bin/topprocs.sh topps.sh
ls -l topps.sh

Yllä olevasta lähdöstä näet tiedostojen käyttöoikeusosiosta, että topps.sh on linkki, jota ilmaisee l:, mikä tarkoittaa, että se on linkki toiseen tiedostonimeen.

Jos symbolinen linkki on jo olemassa, saatat saada virheilmoituksen, pakottaaksesi toiminnon (poista poistuva symbolinen linkki), käytä vaihtoehtoa -f.

ln -s ~/bin/topprocs.sh topps.sh
ln -sf ~/bin/topprocs.sh topps.sh

Ota monisanainen tila käyttöön lisäämällä lippu -v, joka tulostaa tulosteen jokaisen linkitetyn tiedoston nimen.

ln -sfv ~/bin/topprocs.sh topps.sh
$ls -l topps.sh

Se siitä! Tarkista nämä seuraavat aiheeseen liittyvät artikkelit.

  1. fdupes – komentorivityökalu, jolla voit etsiä ja poistaa päällekkäisiä tiedostoja Linuxissa
  2. 5 hyödyllistä komentoa tiedostotyyppien ja järjestelmäajan hallintaan Linuxissa

Tässä artikkelissa olemme oppineet luomaan kovia ja symbolisia linkkejä Linuxissa. Voit esittää kysymyksiä tai kertoa mielipiteesi tästä oppaasta alla olevan palautelomakkeen kautta.