» »

Pingu says: Hard link!

Pingu says: Hard link!

slitkx ::

Soft (oz. symbolic) link je bližnjica do neke datoteke ali mape.
Kaj je pa hard link?

ales85 ::

V bistvu še ena datoteka, ki kaže na isto vsebino na disku-inode. Link

Zgodovina sprememb…

  • spremenil: ales85 ()

jype ::

Soft link je kazalec na drugo ime, hard linka pa od originalne datoteke v resnici ne moreš ločiti (razen s precej "forenzičnim" pregledovanjem diska), ker je le še eno ime za isto datoteko.

slitkx ::

Oni ales85-ov link bom pogledal kasneje. Takole na hitro pa - mora biti hard link na isti lokaciji kot original?
Ali hard link vsebuje nekakšne meta podatke od originala? (Tako kot ima npr. slika svoje meta podatke.)

Se da relacijo hard link-original ponazoriti na kakem vsakdanjem primeru?

Zgodovina sprememb…

  • spremenil: slitkx ()

jype ::

slitkx> Se da relacijo hard link-original ponazoriti na kakem vsakdanjem primeru?

Ne, ker med hard linkom in originalom ni razlike.

Datotečni sistemi, ki hard linke podpirajo, običajno dodajo le novo ime, ki kaže na isti inode (oziroma ekvivalentno strukturo), v katerem so metapodatki (in običajno tudi število linkov na inode, da lahko označejo inode kot izbrisan, ko nanj ne kaže več nobeno ime).

pegasus ::

Hardlink mora biti znotraj istega datotečnega sistema, symlink pa lahko kaže na drug datotečni sistem.
Hardlink na direktorij ti večina sodobnih datotečnih sistemov preprečuje, zaradi dvoumnosti in potencialne zmede, ki bi lahko nastali ob njegovi uporabi. Symlink na direktorij je vsakodneva reč.
Hardlinke prepoznaš z ls -i, ki ti pred ime napiše inode number (dve različni imeni z istim inodeom).

slitkx ::

No saj me še čaka študij tega hard-linka.
Na kratko pa - hello, my twinnie. :D

Brane22 ::

slitkx je izjavil:

Oni ales85-ov link bom pogledal kasneje. Takole na hitro pa - mora biti hard link na isti lokaciji kot original?


1. Pri hard linkih ni "originala". So med seboj popolnoma enakovredni.

2. Omejitev je,d a morajo biti vsi na istem filesystemu, ker pač kažejo na konkreten i-node in ta je enoznačno določen samo znotraj istega filesystema, poleg tega je pa pokrit z ustreznimi locking mehanizmi.

Filesystem je namreč SW mehanizem, ki ga komplicirajo zahteve po determinističnem dostopu. Morajo biti pokriti scenariji hkratnih pristopov in posodoboitev in to je po ( precej mučnem debuggingu) znotraj enega filesystema.
Ti bi verjetna lahko razvil varianto, ki bi ti omogočala osnovni teoretični ekvivalent softlinka s "hardlinkom" na nekem drugem disku, ampak hude težave z njo bi se začele, ko bi nekdo drugi začel šariti po tem filesystemu in spreminjati fajle.

Zato je softlink, ki pa je - če greš gledat mehanizem delovanja, upravičuje svoje ime in je bistveno bolj "soft".

Zgodovina sprememb…

  • spremenilo: Brane22 ()

Randomness ::

To, kar so ti že drugi povedali. Za tiste, ki poznajo C++, je mogoče primerna analogija s smart pointerji. Simbolični link bi do neke mere ustrezal C++-ovskemu weak_ptr-ju, medtem ko je hard link bolj podoben C++-ovskemu shared_ptr-ju (za razlago glej prvi odgovor na stackoverflow).

Zanimiva optimizacija, ki jo načeloma omogoča koncept hard linkov, je t.i. COW (copy-on-write), ki pa jo implementirajo le nekateri datotečni sistemi (npr. qcow2).

slitkx ::



Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

NTFS simbolični link

Oddelek: Igre
5776 (609) Cold1
»

Glibc bug

Oddelek: Informacijska varnost
296453 (5824) Icematxyz
»

Novosti v Vista jedru

Oddelek: Novice / Operacijski sistemi
496662 (4655) Matako
»

Shranjevanje nastavitev -- register proti /etc (strani: 1 2 )

Oddelek: Programska oprema
554396 (4078) 64202
»

Fat 32 : NTFS

Oddelek: Pomoč in nasveti
201534 (1267) andrej

Več podobnih tem