Länkar??

Länkar??

Inläggav Mikael » lör okt 20, 2018 5:05 pm

Hård länk? Mjuk länk? Symbolisk länk?
Vad är vad - egentligen?
Finns en del när man googlar men inte riktigt bra förklarat, ibland faktiskt motstridigt och mest vilka kommandon som används för att skapa dessa länkar.
Ibland jämförelser med genvägar i Windows men samtidigt ska man inte jämföra med Windows osv...

Jag antar att det finns bara två typer och att symbolisk länk antingen är samma som mjuk eller samma som hård.

Jag börjar själv att försöka sammanfatta och förklara, kanske främst för min egen del:

Om man börjar med genvägar i Windows (*.lnk) så kan genvägen användas för att starta ett program eller öppna ett dokument. Genvägen kan ligga på annan partition än originalfilen. Genvägen kan peka på en mapp.
Man kan ha flera sådana genvägar till samma originalfil. Tar man bort originalfilen finns alla genvägar kvar. Tar man bort en eller alla genvägar finns originalfilen kvar.

Wikipedia (en) anger
In computing, a symbolic link (also symlink or soft link)
varför vi då kan hålla oss till mjuk länk som ger en tydligare skillnad mot hård länk.

Efter en liten paus hittade jag denna sida som verkar förklara bra:
https://www.ostechnix.com/explaining-so ... -examples/

Försöker mig på en, egen, översättning:

Även här förklaras att en symbolisk länk och en mjuk länk är samma sak.
En mjuk länk är en länk till originalfilen (som i Windows då)
En hård länk är en avspegling av originalfilen. (kanske man skulle kunna säga att de är synkade då?)

Om man raderar originalfilen är den mjuka länken verkanslös, eftersom den pekar på något som inte finns.
Men för en hård länk är det det motsatta, om man raderar originalfilen kan den hårda länken ändå vara brukbar eftersom den är en direkt kopia av originalfilen.

En mjuk länk i korthet:

Länk och originalfil kan ligga på olika partitioner.
Tillåter länk till en katalog.
Kan ha andra rättigheter än originalfilen.
Ändrade rättigheter hos originalfilen påverkar inte länken.
Har bara sökvägen till originalfilen, inte filens innehåll.

En hård länk i korthet:

Länk och originalfil kan inte ligga på olika partitioner.
Kan inte länka till en katalog.
Har samma rättigheter som originalfilen.
Ändrade rättigheter hos originalfilen ger ändrade rättigheter för länken.
Innehåller det faktiska innehållet hos originalfilen, varför man kan se dess innehåll även om originalfilen har flyttats eller tagits bort.
---
Linux Mint 21 Vanessa Cinnamon @Mintbox Mini 2 Pro      "from freedom came elegance"
Mikael
Finansiär och Beskyddare
 
Inlägg: 2430
Blev medlem: lör jan 07, 2012 3:29 pm
Ort: Söråker

Re: Länkar??

Inläggav Jan-Olof » sön okt 21, 2018 12:06 am

Bra förklaring!
Jan-Olof
Finansiär och Beskyddare
 
Inlägg: 1553
Blev medlem: tis dec 08, 2009 2:07 pm

Re: Länkar??

Inläggav Mikael » sön okt 21, 2018 9:34 am

Vad är då den praktiska nyttan med detta? Alltså med att det finns två typer?

Den mjuka länken är väl enklare att förklara och det är mjuka länkar som skapas när man i filhanteraren högerklickar och väljer "Skapa länk"
En mjuk länk kan man flytta till en "bekvämare" plats som ex. skrivbordet. Länken pekar alltid mot originalfilens plats oavsett var man lägger länken.

En hård länk är alltid "synkroniserad" (kanske lite lättare att använda det ordet än speglad?) till originalfilen varför man kan flytta på originalfilen utan att behöva skapa en ny (mjuk) länk.

Sedan torde detta med rättigheter spela in men vet inte riktigt den praktiska nyttan med just det.
---
Linux Mint 21 Vanessa Cinnamon @Mintbox Mini 2 Pro      "from freedom came elegance"
Mikael
Finansiär och Beskyddare
 
Inlägg: 2430
Blev medlem: lör jan 07, 2012 3:29 pm
Ort: Söråker

Re: Länkar??

Inläggav Mikael » ons sep 14, 2022 9:35 am

Så här långt senare...
(skriver medan jag minns detta)

Jobbade lite Windows. Gjorde en sökning inuti filer där alla filer återfanns i samma katalog. (sökningen var begränsad till den katalogen)
Fick en del träffar på det jag sökte.
I samma katalog (som ovan) finns även en genväg till en fi i en annan katalog.
Den filen innehåller den sökfras jag sökte efter men den kom inte med som träff. Detta är logiskt i Windows.

Hur hade resultatet blivit om det hade varit i Linuxmiljö som jag gjort sökningen, med mjuk respektive hård länk?
Av vad jag snabbläste här i tråden nu innan jag postade borde en hård länk ge en sökträff men inte en mjuk. Kan det stämma?
---
Linux Mint 21 Vanessa Cinnamon @Mintbox Mini 2 Pro      "from freedom came elegance"
Mikael
Finansiär och Beskyddare
 
Inlägg: 2430
Blev medlem: lör jan 07, 2012 3:29 pm
Ort: Söråker

Re: Länkar??

Inläggav Jan-Olof » ons sep 14, 2022 6:09 pm

Ett experiment:

Skapa en tom fil:
Kod: Markera allt
touch "prov 1.txt"

Skapa en symbolisk länk till den:
Kod: Markera allt
ln -s "prov 1.txt" "prov 2.txt"

...och en hård länk:
Kod: Markera allt
ln "prov 1.txt" "prov 3.txt"

Öppna filen "prov 1.txt", skriv någonting och spara. Samma innehåll finns nu också i de två andra filerna.

Söker man efter innehållet så får man träff på alla tre filerna om de finns i samma mapp eller i undermappar. Ligger de i olika mappar på samma nivå så får man träff på den eller de filer som ligger i den aktuella mappen.

Radera filen "prov 1.txt". Om man nu försöker öppna filen "prov 2.txt" så får man felmeddelande (eftersom "prov 1.txt" inte finns) men "prov 3.txt" kan fortfarande öppnas och har samma innehåll som tidigare.

Ett försök till förklaring

Innehållsförteckn. och filsegment.png
Innehållsförteckn. och filsegment.png (16.72 KiB) Visad 1002 gånger

Varje enhet har en "innehållsförteckning" med uppgifter om de filer som finns på enheten. Filerna delas upp i delar, segment, som sparas där det finns plats. Innehållsförteckningen har därför uppgifter om var varje sådant segment finns. Segmenten behöver därför inte ligga i ordningsföljd. På en hårddisk påverkas vissa filsystem negativt av detta och behöver därför "defragmenteras" ibland så att segmenten sorteras i ordningsföljd och flyttas så att de hamnar så nära varann som möjligt. Det är en tidskrävande operation. Det filsystem som vi använder i Linux är inte särskilt känsligt för detta.

En symbolisk länk är en ren hänvisning till den ursprungliga filen. En hård länk läggs in som en ny fil i innehållsförteckningen men den pekar på samma filsegment som motsvarande post för den ursprungliga. När man raderar den ursprungliga filen så tar man egentligen bara bort hänvisningarna i innehållsförteckningen. Innehållet finns därför kvar och kan nås via den hårda länken.
Jan-Olof
Finansiär och Beskyddare
 
Inlägg: 1553
Blev medlem: tis dec 08, 2009 2:07 pm

Re: Länkar??

Inläggav Mikael » fre sep 16, 2022 6:05 pm

Tror jag fattar, men behöver nog återkomma hit om det skulle bli aktuellt med att skapa länkar. ;)
---
Linux Mint 21 Vanessa Cinnamon @Mintbox Mini 2 Pro      "from freedom came elegance"
Mikael
Finansiär och Beskyddare
 
Inlägg: 2430
Blev medlem: lör jan 07, 2012 3:29 pm
Ort: Söråker


Återgå till Vanliga frågor och svar

Vilka är online

Användare som besöker denna kategori: Inga registrerade användare och 2 gäster

cron