U sljedećem ćemo članku pogledati kako pronaći i ukloniti neispravne simboličke veze u Ubuntuu. Simboličke poveznice način su za pojednostavljenje upravljanja Gnu / Linux sustavom. Koriste se na poslužiteljima i na radnim stanicama, gdje se povezivanje iz jednog direktorija u drugi koristi za slanje informacija negdje drugdje u stablu direktorija.
Un simbolična veza na Unixu ili Gnu / Linux sustavima, to ukazuje pristup postojećem direktoriju ili datoteci koji se nalazi na drugom mjestu u strukturi direktorija. Izmjena izvršena pomoću ove veze odrazit će se na izvorniku, ali naprotiv, ako se veza ukloni, datoteka ili direktorij na koji se odnosi neće se ukloniti. Druga rjeđa opcija je korištenje tvrde veze (tvrda veza). U ovom slučaju, brisanje veze uzrokuje brisanje datoteke ili direktorija, ako je to bila zadnja tvrda veza do datoteke.
Prednost simboličke veze u odnosu na tvrde veze je ta što je moguće napraviti simboličke veze koje upućuju na objekte u datotečnim sustavima koji se nalaze na drugim uređajima ili na particije unutar istog uređaja. Naredba koja se obično koristi za upravljanje vezama (i grub i simboličan) Je ln.
Simboličke veze, alat za upravljanje simboličkim vezama
Postoji aplikacija koja se zove simboličke veze u većini Gnu / Linux spremišta. Ovo je jednostavan uslužni program naredbenog retka, koji pružit će korisne rezultate i opcije za upravljanje simboličkim vezama. Do instalirajte ovaj alat na Ubuntu, morat ćemo samo otvoriti terminal (Ctrl + Alt + T) i izvršiti naredbu:
sudo apt install symlinks
Simboličkim vezama možemo koristiti različite opcije za rad sa simboličkim vezama. Među njima možemo istaknuti opciju -d, koji će ukloniti veze koje su ostale visjeti. Još je zanimljivo znati opciju -r, koji će rekurzivno prolaziti kroz poddirektorijume bilo koju opciju koju odredimo za ovaj alat.
Osnovni primjer
Za početak s ovim primjerom, napravimo prvo simboličku poveznicu. To možemo učiniti uzimanjem postojeću datoteku i pomoću naredbe ln za povezivanje s datotekom koja još ne postoji. Naredbe za stvaranje ovog primjera bile bi sljedeće:
touch archivo-ejemplo.txt ln -s archivo-ejemplo.txt link-archivo-ejemplo.txt
Tada ćemo upotrijebiti naredbu ls kako bismo provjerili postoji li veza koju smo upravo stvorili u našem sustavu.
Sljedeće što ćemo učiniti je prekinuti simboličku vezu koju smo upravo stvorili.
rm archivo-ejemplo.txt
Iako smo upravo izbrisali izvornu datoteku, kao što vidite na prethodnom snimku zaslona, naredba ls -l još uvijek izvještava da je veza još uvijek tamo. Tu je problem, jer bi ovaj link zapeo u datoteci koja više ne postoji. Datoteke u ovom primjeru također se mogu nalaziti u različitim direktorijima, što može otežati provjeru je li izvorna datoteka još uvijek tamo.
Pronađite i popravite neispravne simboličke poveznice
Način popravljanja slomljenih simboličnih veza jest jednostavno uklanjanje. Nemoguće ih je oporaviti, pa ćemo samo trebati izbrišite ih iz stabla direktorija.
u provjerite ima li slomljenih veza, upotrijebimo alat za poveznice. Morat ćemo upotrijebiti samo sljedeću naredbu:
symlinks .
Važno je obratiti pažnju na točku (.) na kraju naredbe, jer označava trenutni radni direktorij. To se može promijeniti pomoću bilo koji put koji označava direktorij u kojem pokušavamo pretraživati. Prethodna naredba prikazat će nam izlaz poput sljedećeg:
Označava da 'link-datoteka-primjer.txt'visi i da je simbolična veza prekinuta. Da bismo je eliminirali, morat ćemo upotrijebiti istu naredbu kao i prije, dodajući opciju -d:
symlinks -d .
Izlaz koji će terminal vratiti prikazat će nešto slično prošlom vremenu, ali ovaj put će uključivati i crtu 'izbrisana'.
Nastavljajući s prethodnim primjerom, da nismo upotrijebili posljednju naredbu, za traženje prekinutih simboličkih poveznica mogli bismo koristiti i find kako slijedi:
find . -xtype l
Kao i kod alata za simbolične veze, točka (.) predstavlja trenutni radni direktorij. Za uklonite neispravne simboličke veze, morat ćemo dodati samo opciju -izbrisati kao što je prikazano u nastavku:
find . -xtype l -delete
Ova naredba neće prikazati nikakve rezultate, ali ako je ponovno izvedemo bez mogućnosti -izbrisati, nećemo vidjeti ništa na ekranu. To će biti znak da su prekinute simboličke veze uklonjene.
deinstalirati
Deinstalirajte simboličke veze jednostavno je poput instaliranja. Trebat ćemo samo otvoriti terminal (Ctrl + Alt + T) i izvršiti naredbu:
sudo apt remove symlinks
Ovim jednostavnim koracima svi korisnici mogu lako pronaći pokvarene simboličke veze i ukloniti ih prije nego što mogu stvoriti probleme.