Hogyan találjuk meg és törlése Törött szimbolikus linkekhez Linux

Nov 12, 2024
Linux
Fatmawati Achmad Zaenuri / Shutterstock

A Linux szimbolikus linkjei fantasztikus jellegűek, de megszakadhatnak és semmit sem mutatnak. Itt van, hogy lokalizálják a törött szimbolikus linkeket, azok áttekintése, és távolítsa el őket a rendszer, ha kell.

Szimbolikus hivatkozások 101

Szimbolikus linkek , Más néven „soft linkek” és a „szimbolikus linkeket” egy formája hivatkozásokat, amelyek mutathat fájlokat és könyvtárakat. A szimklink úgy néz ki, mint egy rendszeres fájl vagy könyvtár egy fájlkezelő ablakban. Ezenkívül bemutatta a terminál ablakban lévő fájllistában. A fájl vagy könyvtár, amelyhez a szimklinkpontok bárhol lehetnek a fájlrendszerben.

Például tegyük fel, hogy van egy szimbolikus a saját könyvtárban az úgynevezett „Dave-link”, amely rámutat arra, hogy egy fájlt a „text-fájl.txt” máshol található a fájlrendszerben fa. Parancsok használata a symlink automatikusan alkalmazza a fájl, amelybe mutat. Ha megpróbálja használni macska vagy Kevésbé A szimulációban ténylegesen meglátja a "TEXT-FILE.TXT" fájl tartalmát.

A szabványos Linux telepítés sok szimbólumot tartalmaz. Még ha nem hoz létre magát, az operációs rendszer használja őket. Alkalmazás telepítési rutinjai gyakran használják a szimklinkeket, amelyek a futtatható fájlokra mutatnak. Ha a szoftver frissített bináris fájl helyett az új verzió, és minden symlinks folytatni a munkát, mint korábban, amíg az új fájl neve ugyanaz, mint a régi.

Könnyedén láthatunk néhány szimbólumot ls A gyökérkönyvtárban. Néhány bejegyzés más színnel jelenik meg Ubuntu 20.10 Teszt gép, világoskéken jelennek meg.

A következőket írjuk be:

  LS /  

Egy mélyebb megjelenést tudunk venni a -l (hosszú lista) opció. Írjuk be a következő parancsot, hogy megnézzük az összes "lib" bejegyzést és az egyetlen "bin" bejegyzést:

 LS -L / LIB * / bin 

Az egyes sorok kezdetén egy "L", amely jelzi, hogy az elem egy szimlink. A szöveg után "- & gt;" azt mutatja, hogy mi a symlink mutat. Példánkban a célok minden könyvtárak.

A jogosultságokat olvasni, írni és végrehajtani a tulajdonos, a csoport és mások számára. Ezek az alapértelmezett hamis bejegyzések. Nem tükrözik azokat a tényleges engedélyeket, amelyeken a szimklinkok pontot mutatnak. Ez a célfájl vagy könyvtár engedélyei, amelyek elsőbbséget élveznek, és a fájlrendszer tiszteletben tartják.

Törött szimuláció

A szimklás törött (vagy balra lógó), amikor a fájl, amelyen az informatikai pontok törlődnek, vagy egy másik helyre költöznek. Ha az alkalmazás eltávolítási rutinja nem működik megfelelően, vagy megszakad, mielőtt befejeződik, akkor lehet, hogy megtört szimulációval rendelkezik.

Ha valaki manuálisan törli a fájlt anélkül, hogy tudná a szimbólumokat, akkor ezek a szimklinkok már nem működnek. Olyan leszek, mint a közúti jelek, amelyek egy olyan városra mutatnak, amelyet bulldozed.

Könnyen láthatjuk ezt a viselkedést egy "Hello" nevű symlink használatával az aktuális könyvtárban. A következőket írjuk be, használva ls látni ezt:

 LS -L 

Azt mutatja, hogy egy "HTG" nevű program egy "bin" címtárban. Ha "futtatjuk" a szimklinkot, végrehajtja a programot számunkra:

 ./ Hello 

Most ellenőrizhetjük, hogy ez az, ami közvetlenül a program futtatásával történik:

 ../ bin / htg 

A várt módon ugyanazt a választ kapjuk. Töröljünk a programfájlt:

 RM ../bin/htg

Most, amikor megnézzük a szimklinkot, látjuk, hogy piros színű, mert Linux tudja, hogy törött. Azt is elmondja nekünk, hogy mit jelentettek, így cserélhetjük a fájlt, újrafordíthatjuk a programot, vagy mindent megteszünk a szimuláció javításához.

Megjegyzendő, hogy ha megpróbáljuk futtatni a symlink, a hiba megkapjuk hivatkozásokat a symlink nevét, hanem a program nevét, amelyhez a symlink pontokat.

A következőket írjuk be:

 ./ Hello 

Törött szimuláció megtalálása

A legtöbb modern változat megtalálja megvan a Xtype (kiterjesztett típus) opció, amely egyszerűsíti találni törött symlinkek . Mi most az b zászló Xtype , Hogy mondja el, hogy keresni linkeket. használata megtalálja és Xtype az alábbiak szerint, anélkül, hogy bármely más típus zászlók, erők Xtype hogy visszatérjen törött linkek:

 találni. -xtype l 

Futtatva a tesztünkben home könyvtár megállapítja jó néhány törött symlinkek. Figyeljük meg, hogy a keresés rekurzív alapértelmezésben, ezért megkeresi az összes alkönyvtárat automatikusan.

A „hello” szimlinkelt szakítottunk szándékosan szerepel, mint vártuk. Egy másik symlinks kapcsolódik a Firefox böngésző, a többi társított pattan.

Ha a kimenetet át WC a ... val -l (Vonalak) opciót, akkor számíthatunk a vonalak, ami ugyanaz, mint számítva a törött symlinks.

A következőket írjuk be:

 találni. -xtype l | wc -l 

Mi tájékoztatták, hogy a 24 tört rá mutató szimbolikus linkeket semmit.

Keressen, felülvizsgálata, majd távolítsa

Mielőtt belevágok, és törölje az összes törött symlinks, nézd át az eredmények a megtalálja parancs. Hátha van érvényes indok minden a törött symlinks.

Néha a symlink lehet a probléma, hanem a cél fájlt. Ha a symlink hozták létre tévesen azt utalhat semmi, de az igazi cél van jelen. Újra létre a linkről lenne a fix ebben az esetben.

Az is lehetséges, hogy a látszólag tört symlink van használatban, mint valami mást, mint a mutató egy file lock vagy más / nem felel meg mutató. Firefox teszi ezt; ez az, amit az első symlink listánkon van. Firefox nem használt teszt gépen, szóval ez biztos számunkra, hogy törölje azt.

Az is lehetséges, a cél csak akkor van jelen időnként, és ez a várt (és kívánatos) viselkedését, hogy az adott szoftver. Lehet, hogy a cél fájl átmásolja egy másik gépre, vagy a felhő, az ellátja funkcióját, és ezt követően törli újra, csak ki kell cserélni egy másik programot, a következő ciklusban.

A törött symlink is lehet tünete a szoftver telepítése nem sikerült. Ebben az esetben a törlés helyett a szimbolikus hivatkozás, akkor akár kézzel kijavítani vagy ismételje meg a telepítést.

Miután kijavította a hibás linkeket meg kell tartani, ismételje meg a parancsot, hogy hajtsa végre a keresést. A fix symlinks akkor az lenne jelen a keresési eredményeket.

A biztonság kedvéért, akkor a legjobb, hogy korlátozza a symlink költöztetés saját könyvtárakat. Legyen nagyon óvatos a futó ezeket a parancsokat root, vagy a rendszer könyvtárakat.

Eltávolítása Broken szimbolikus linkekhez

Az -exec (Végre) opció futtatja a parancsokat a megtalálja Keresési eredmények. Megyünk használat rm törölni minden törött link alatt található. Az {} lecserélődik a nevét, minden törött symlink, mint mindegyik felfedezik megtalálja .

Van, hogy egy pontosvesszőt ( ; ), Hogy megszünteti a parancsok listáját akarjuk -exec futni. Fogjuk használni egy rep ( \ ) „Menekülési” a pontosvessző, így ez részeként kell kezelni a megtalálja parancs, hanem valami Bash kell eljárni.

A következőket írjuk be:

 találni. -xtype l -exec rm {} \; 

Mi vissza a parancssorba nem utal arra, hogy bármi is történt. Hogy ellenőrizze a hibás linkeket eltávolították, akkor ismételjük meg a parancsot kell keresni őket, a következők szerint:

 találni. -xtype l 

Nincsenek megfelelő eredményeket, amelyek segítségével a törött symlinks eltávolították.

Ne feledje, hogy véleményét First

Ismét mindig időt arra, hogy vizsgálja felül a listát symlinks futtatása előtt a parancsot, hogy törölje őket. Elkerülheti megsemmisítését Ön nem biztos abban futtatásával a parancsot, hogy törölje őket a megfelelő könyvtárakat.

Például, a fenti, mi lehetett volna futtatni a parancsot a „.snap” könyvtárba, majd kézzel eltávolítjuk a magányos „hello” link alatt található. Ez hagyta volna a Firefox zár szimlinkelt érintetlenül.


Linux - Most Popular Articles

Újdonságok a Linux Kernel 5.14

Linux Sep 9, 2025

Sean Locke Photography / Shutterstock Mivel a Linux fordul 30 éves, kernel 5,14 feloldották. Ez tartalmazza a szokásos széles kínálatával belső below-t..


Ez a New Linux Gaming laptop a specifikáció futtatni semmit

Linux Oct 20, 2025

Juno számítógépek A Linux és a Gaming mostanában sokkal jobban találkoznak. Az Gőzfürdő az úton van a Linux telepítésével, és Juno csak bejele..


Az Ubuntu 21,10 egy testreszabott GNOME 40 asztalhoz érkezik

Linux Oct 14, 2025

Ubuntu Ha Ubuntu felhasználó vagy valaki, aki arra gondol, hogy megpróbálja, akkor ma jó nap. A Canonical hivatalosan felszabadította az Ubuntu 21.10-et egy testres..


Mi a Unix Epoch, és hogyan Unix Time Work?

Linux Nov 10, 2024

Mikhail Leonov / Shutterstock Unix tárolja, amikor a másodpercek számát, mivel január 1, 1970 és ez azt jelenti a Linux is túl. Mi magyarázza ezt a lá..


Hogyan lehet hozzáadni egy felhasználót a Sudoers fájlhoz a Linuxban

Linux Oct 30, 2025

Ha egy sudo A Linux parancsának parancsát olyan üzenethez kapja, hogy a felhasználó „nincs a Sudoers fájlban”, és be kell lépnie a „Sudoers” listán. Átmentünk egy ..


Hogyan lehet megtalálni a Linux folyamat PID -jét a PIDOF vagy a PGREP segítségével

Linux Nov 15, 2024

A Linux folyamattal való munka gyakran azt jelenti, hogy megismeri a folyamat azonosítóját vagy a PID -t. Ez egy egyedi szám, amelyet minden futó szoftvernek adnak. Kétféle módon lehet..


10 hasznos példa a Linux Rsync parancsra

Linux Oct 24, 2025

A Linux rsync A parancs egy hatékony fájl másolási és mappa szinkronizáló eszköz. Íme tíz általános felhasználási eset, amelyeket képes felhasználni a saját rendszer..


Hogyan szerezheti be a nyilvános IP -t egy Linux bash szkriptben

Linux Nov 9, 2024

Szüksége lesz a külső IP -címre, ha távolról csatlakozik a számítógépéhez. Könnyű megtalálni a manuálisan, de itt lehet, hogyan lehet megtalálni egy Linux szkriptben. Bel..


Kategóriák