„Symlink“ pamoka „Linux“ sistemoje - kaip sukurti ir pašalinti simbolinę nuorodą
„Symlink“ (dar vadinamas simboline nuoroda) yra „Linux“ tipo failas, nurodantis kitą failą ar aplanką jūsų kompiuteryje. „Symlinks“ yra panašūs į „Windows“ sparčiuosius klavišus.
Kai kurie žmonės simbolines nuorodas vadina „minkštaisiais saitais“ - nuorodų tipu „Linux / UNIX“ sistemose, o ne „kietosiomis nuorodomis“.
Skirtumas tarp „Soft Link“ ir „Hard Link“
Programinės nuorodos yra panašios į sparčiuosius klavišus ir gali nukreipti į kitą failą ar katalogą bet kurioje failų sistemoje.
Tvirtosios nuorodos taip pat yra failų ir aplankų nuorodos, tačiau negalima sukurti standžiosios nuorodos aplankui ar failui, esančiam kitoje failų sistemoje.
Pažvelkime į „Symlink“ sukūrimo ir pašalinimo veiksmus. Taip pat pamatysime, kas yra neveikiančios nuorodos ir kaip jas ištrinti.
Kaip sukurti „Symlink“
„Symlink“ sukūrimo sintaksė yra tokia:
ln -s
ln
yra nuoroda komanda. Į -s
vėliava Nurodo, kad nuoroda turi būti minkštas. -s
taip pat galima įvesti kaip -symbolic
.
Pagal numatytuosius nustatymus ln
komanda sukuria sudėtines nuorodas. Kitas argumentas yra path to the file (or folder)
tas, kad norite susieti. (Tai yra failas ar aplankas, kuriam norite sukurti nuorodą.)
Paskutinis argumentas yra path to link
pats (spartusis klavišas).
Kaip sukurti failo „Symlink“ nuorodą - komandos pavyzdys
ln -s /home/james/transactions.txt trans.txt
Vykdę šią komandą, galėsite pasiekti /home/james/transactions.txt
su trans.txt
. Visi pakeitimai trans.txt
taip pat atsispindės originaliame faile.
Atminkite, kad ši komanda aukščiau sukurs nuorodos failą trans.txt
dabartiniame kataloge. Susietą failą taip pat galite sukurti aplanko nuorodoje:
ln -s /home/james/transactions.txt my-stuffs/trans.txt
Dabartiniame kataloge turi būti katalogas, jau vadinamas „my-stuffs“ - jei ne, komanda sukels klaidą.
Kaip sukurti aplanko „Symlink“ - komandos pavyzdys
Panašiai kaip aukščiau, naudosime:
ln -s /home/james james
Tai sukurtų susietą aplanką, vadinamą „james“, kuriame būtų /home/james
. Bet kokie šio susieto aplanko pakeitimai taip pat paveiks originalų aplanką.
Kaip pašalinti simbolinę nuorodą
Prieš norėdami pašalinti „Symlink“ nuorodą, galbūt norėsite patvirtinti, kad failas ar aplankas yra „Symlink“ nuoroda, kad nepakenktumėte savo failams.
Vienas iš būdų tai padaryti:
ls -l
Vykdydami šią komandą savo terminale bus rodomos failo ypatybės. Rezultate, jei pirmasis simbolis yra maža raidė L ('l'), tai reiškia, kad failas / aplankas yra simbolinė nuoroda.
Pabaigoje taip pat matysite rodyklę (->), nurodančią failą / aplanką, į kurį nukreipia tiesioginė nuoroda.
Yra du būdai pašalinti nuorodą:
Kaip naudoti atsiejimą norint pašalinti „Symlink“
Sintaksė yra:
unlink
Tai pašalins simbolį, jei procesas bus sėkmingas.
Net jei „Symlink“ yra aplanko forma, nepridėkite „/“, nes „Linux“ manys, kad tai yra katalogas, ir unlink
negali ištrinti katalogų.
Kaip naudoti rm pašalinti „Symlink“
Kaip matėme, „Symlink“ yra tik dar vienas failas ar aplankas, nukreipiantis į originalų failą ar aplanką. Norėdami pašalinti šį ryšį, galite pašalinti susietą failą.
Taigi, sintaksė yra:
rm
Pavyzdžiui:
rm trans.txt rm james
Atminkite, kad bandant tai padaryti rm james/
bus klaida, nes „Linux“ manys, kad „james /“ yra katalogas, kuriam reikalingos kitos parinktys, pvz., r
Ir f
. Bet mes to nenorime. „Symlink“ gali būti aplankas, tačiau mums rūpi tik pavadinimas.
Pagrindinis „ rm
over“ privalumas unlink
yra tai, kad galite vienu metu pašalinti kelias nuorodas, kaip ir su failais.
Kaip rasti ir ištrinti sugadintas nuorodas
Nutrūkusios nuorodos atsiranda, kai failas ar aplankas, į kurį nukreipia simbolio nuoroda, pakeičia kelią arba yra ištrinamas.
Pvz., Jei „transakcijos.txt“ pereina iš /home/james
į /home/james/personal
, „trans.txt“ nuoroda nutrūksta. Kiekvienas bandymas pasiekti failą sukels klaidą „Nėra tokio failo ar katalogo“. Taip yra todėl, kad nuoroda neturi savo turinio.
Atradę neveikiančias nuorodas, galite lengvai ištrinti failą. Lengvas būdas rasti neveikiančias nuorodas yra:
find /home/james -xtype l
Kataloge bus išvardytos visos neveikiančios nuorodos james
- nuo failų iki katalogų iki pakatalogių.
Perdavus -delete
parinktį jie bus ištrinti taip:
find /home/james -xtype l -delete
Apvyniojimas
Simbolinė nuoroda yra įdomi „Linux“ ir UNIX sistemų savybė.
Galite sukurti lengvai pasiekiamas simbolines nuorodas į failą ar aplanką, kurį kitu atveju nebūtų patogu pasiekti. Taikydami tam tikrą praktiką suprasite, kaip tai veikia intuityviu lygiu, ir tai leis jums daug efektyviau valdyti failų sistemas.