Linux -nak nincsenek parancsikonjai, de vannak szimbolikus hivatkozásai – vagy szimbolikus hivatkozásai, ahogy általában nevezik. De mik is pontosan a szimbolikus linkek? És hogyan lehet létrehozni egyet? Nézzük meg.
Kipróbáljuk a parancsokat az egy Ubuntu telepítés -en, bár a szintaxis ugyanaz a minden Linux disztribúció -n. Érdekes módon, szimbolikus hivatkozások Mac PC-n is létrehozhatók.
Mik azok a szimbolikus linkek?
Ha több helyről szeretne hozzáférni egy fájlhoz, nem jó megoldás az egyszerű átmásolás. Pazarol lemezterületet, nem beszélve arról, hogy megnehezíti a változások nyomon követését a több fájl miatt.
GUI-alapú operációs rendszerben ezt a parancsikonok létrehozásával lehet túllépni. CUI-alapú operációs rendszer esetén (például bármely Linux disztribúció ) a válasz egy szimbolikus hivatkozás. Még a Microsoft Windows is képes kihasználni a szimbolikus linkeket néhány helyzet -ben.
A szimbolikus hivatkozás vagy a szimbolikus hivatkozás csak egy fájl, amely egy másik fájlra vagy könyvtárra mutat – még egy teljesen más fájlrendszerben vagy partícióban is. A szimbolikus hivatkozás megnyitásával ugyanahhoz az eredeti fájlhoz férhet hozzá, a változtatások a fő fájlban is megjelennek.
Ez vonatkozik az engedélyekre is – a chmod használatával egy symlink fájl engedélyeinek módosítására ténylegesen a célfájl engedélyei is módosulnak.
A szimbolikus hivatkozások típusai
A szimbolikus hivatkozásokat lágy linkeknek is nevezik. Ahogy a név is sugallja, nem ez az egyetlen fájllinkelő rendszer típusa Linuxon. A merev hivatkozások a szimbolikus hivatkozások alternatívájaként használhatók bizonyos forgatókönyvekben, bár számos korlátozással jár.
Először is akemény hivatkozásokegyszerűen fájlnevek, amelyek ugyanarra a inode -re mutatnak. Ez ugyan nagyon hatékonysá teszi őket a tárolás és a hozzáférési sebesség tekintetében, ugyanakkor az azonos fájlrendszerben vagy partícióban lévő fájlokra korlátozza őket. És a hogyan működik a mappák elérése Linux alatt furcsasága miatt nem használhat kemény hivatkozásokat sem a könyvtárakhoz.
Aa lágy hivatkozások vagy a szimbolikus hivatkozásokviszont inkább az asztali parancsikonokhoz hasonlítanak. Minden lágy hivatkozás lényegében egy kis fájl, amely az eredeti adatokra mutat, anélkül, hogy közvetlenül hozzá lenne kapcsolva. Ez azt jelenti, hogy a lágy hivatkozások könnyedén mutathatnak más partíciókon és fájlrendszereken lévő fájlokra és könyvtárakra, korlátozások nélkül.
Kemény linkek VS lágy hivatkozások – melyik típust használja?.
A lágy hivatkozások a hivatkozások legsokoldalúbb formája, mivel korlátozás nélkül használhatók több fájlrendszer fájljaiban és könyvtáraiban is. De akkor miért vannak még kemény linkjeink? Biztosítanak-e bármilyen előnyt a szimbolikus hivatkozásokkal szemben?
Nos, papíron a kemény hivatkozások hatékonyabbak. Mivel ugyanazokat az inode-okat használják, nem foglalnak további lemezterületet, és sokkal gyorsabban érhetők el, mint a lágy hivatkozások. Ez az oka annak, hogy sok rendszergazda javasolja a merev hivatkozások használatát, amikor csak teheti.
Egyébként azonban a szimbolikus hivatkozások használatának hátrányai minimálisak. A modern számítógépek különösen nem törődnek a néhány kilobájt extra tárhellyel, és hacsak nem tölti meg a rendszert milliónyi soft linkkel, a további fájlméret ritkán számít.
Szimbolikus hivatkozások létrehozása
A szimbolikus hivatkozások – vagy inkább a fájlhivatkozások általában – az ln paranccsal jönnek létre. Alapértelmezés szerint a parancs kemény hivatkozásokat hoz létre. Szimbolikus hivatkozás létrehozásához hozzá kell fűzni az -s jelzőt az ln parancshoz.
A szintaxis elég egyszerű. Az ln parancsnak két paraméterre van szüksége – a csatolandó fájl (vagy mappa) elérési útjára és a létrehozandó hivatkozásfájl elérési útjára.
Így:
ln -s user_names.txt nevek
Ez létrehoz egy szimbolikus hivatkozást nevek néven, amely a user_names szövegfájlhoz kapcsolódik. Annak ellenőrzéséhez, hogy a szimbolikus hivatkozás valóban létrejött-e, csak használja az ls parancsot.
Amint láthatja, az Ubuntu különböző színeket jelenít meg a különböző fájlkategóriákhoz, a könyvtárakat sötétkék jelöli, a szimbolikus hivatkozásokat pedig világosabb kék színnel (valójában ciánnal).
Ugyanezt a szintaxist használhatjuk szimbolikus hivatkozás létrehozásához is a mappához:
ln -s examples example_folder
Ha más könyvtárakban lévő fájlokra és mappákra mutató hivatkozásokat szeretne létrehozni, egyszerűen használja a teljes elérési utat. Például:
ln -s examples/example3.txt distant_example
A Symlinks korlátozásai
A szimbolikus hivatkozások nagyszerű módja a fájlok összekapcsolásának a rendszerben anélkül, hogy másolatokat kellene készítenie, de megvannak a maguk korlátai. Igen, bár a lágy hivatkozások kevésbé korlátozóak, mint a kemény hivatkozások, néhány dolgot még mindig szem előtt kell tartani..
Először is, az ln parancs valójában nem ellenőrzi a létrehozott hivatkozásokat. Ez azt jelenti, hogy megadhat olyan fájlnevet, amely valójában nem létezik, és nem fog hibaüzenetet kapni. A hivatkozás megerősítésének egyetlen módja, ha megpróbálja használni, és megnézi, hogy a megfelelő fájlhoz vezet-e.
Másodszor, miközben a szimbolikus hivatkozás hozzáférése vagy módosítása megváltoztatja az eredeti fájl tulajdonságait, ez nem vonatkozik a fájl törlésére. Biztonságosan távolítsa el a szimbolikus linket teheti meg anélkül, hogy ez befolyásolná a hivatkozott fájlt vagy könyvtárat.
Symlinkek létrehozása Linuxban
A terminál szimbolikus hivatkozások létrehozására való használata során a legnagyobb fájdalom a különböző könyvtárakban elhelyezett fontos fájlok elérésének nehézsége. Az intelligens megoldás, ha magából a kezdőkönyvtárból hoz létre szimbolikus hivatkozásokat az ilyen fájlokhoz, például asztali parancsikonokat.
A merev hivatkozásokkal ellentétben a szimbolikus hivatkozások könnyen, korlátozások nélkül létrehozhatók, még a különböző partíciókban és fájlrendszerekben lévő könyvtárakhoz vagy fájlokhoz való csatlakozáshoz is. Ne feledje, hogy ez azt is jelenti, hogy egy szimbolikus hivatkozás egy nem létező fájlra mutathat – meg kell próbálnia elérni a hivatkozást, hogy ellenőrizze, létezik-e a fájl.
.