Page 1 of 1

softlinky a kopirovani

Posted: 17 Dec 2010, 18:10
by phanousk
Dobry den,
dalo by se v kopirovacim dialogu dodelat zaskrtavatko "preserve softlinks"? Vzhledem k tomu, ze Salamander NTFS softlinky (napriklad vytvorene pres plugins-> automation->make link) normalne rozpoznava, by to nemel byt takovy problem. Jde mi o to, aby byla moznost si zvolit, jestli se ma soubor (adresar) typu "link" zkopirovat i s obsahem, nebo opet jen jako odkaz. Obcas ta data nejsou potreba vickrat... System Win7 x64 Enterprise, Salamander 2.54 EDU
Dekuji a zdravim, Petr Hanousek

Re: softlinky a kopirovani

Posted: 23 Jan 2011, 20:53
by Cigydd
Hlasuji pro :)

Re: softlinky a kopirovani

Posted: 23 Jan 2011, 22:52
by Ether
Jo, občas na to taky narazím, když chci pouze překopírovat sadu linků a ono mi to kopíruje cíle.

Re: softlinky a kopirovani

Posted: 24 Jan 2011, 00:21
by Cigydd
Tak ony ty hardlinky a softlinky jsou ve Windows (v NTFS) novinkou opsanou (nebo vlastně zděděnou) od Unixu (jádro Nové technologie (NT) tvoří druh Unixu nebo snad podle některých druh BSD, Interix).
Novinkou proto, že začaly být v installaci operačního systému vytvářeny Microsoftem teprve ve Vistě.
Katastrofálním hříchem Prquo$oftu je, že úplně ignoroval zacházení s nimi ve svém Průzkumníku (explorer.exe), takže, když si člověk smazal softlink, už ho nedokázal žádnou normální a běžnou cestou obnovit, a když si smazal hardlink, smazal navíc zároveň i jeho cíl!
Takže inspirací pro rozlišování kopírování pevných odkazů a měkkých (v unixové terminologii symbolických) odkazů od kopírování jejich cílů je unixový Midnight Commander, který má v kopírovacím okénku zaškrtávátko Následovat odkazy, přičemž výchozí nastavení je nenásledovat odkazy a kopírovat je tak, jak jsou.

Zkusím sem vlepit jakýsi textový „snímek obrazovky“ Midnight Commanderu z PuTTYny:

Code: Select all

  Levý     Soubor     Příkaz     Nastavení     Pravý
┌<─ ~ ────────────────────────────.[^]>┐┌<─ ~ ────────────────────────────.[^]>┐
│'n    Jméno      │ Délka │ Modifikace ││'n    Jméno      │ Délka │ Modifikace │
│/..                                                                      13:34│
│/.Bl ┌─────────────────────────── Kopírovat ───────────────────────────┐  2010│
│/.Md │ Kopírovat adresář „.BloGTK“ vyhovující masce:                   │ 04:04│
│/.Sk │ *                                                           [^] │ 00:07│
│/.Vi │                                  [x] Význam vzorů jako v shellu │ 20:48│
│/.ad │ na:                                                             │ 02:05│
│/.ap │ /home/pavel/                                                [^] │ 06:54│
│/.au │ [ ] Následovat odkazy   [ ] Ponořit se do existujících adresářů │ 17:32│
│/.au │ [x] Zachovat atributy                     [ ] Stabilní symlinky │ 03:28│
│/.be │                                                                 │ 05:47│
│/.bl │              [< OK >]  [ Na pozadí ]  [ Zrušit ]                │ 04:35│
│/.bo └─────────────────────────────────────────────────────────────────┘ 05:16│
│/.ca                                                                     11:04│
│/.cddb           │   4096│30.zář 21:46││/.cddb           │   4096│30.zář 21:46│
│/.compiz         │   4096│29.čec 01:37││/.compiz         │   4096│29.čec 01:37│
├──────────────────────────────────────┤├──────────────────────────────────────┤
│/.BloGTK                              ││VYŠ-ADR                               │
└───────────────────── 5180M/86G (5%) ─┘└───────────────────── 5180M/86G (5%) ─┘
Pozn.: Příkazy shellu nefungují, pokud nepracujete na lokálním systému souborů.
[pavel@dell ~]$                                                              [^]
 1Pomoc  2Menu   3Zobraz 4Uprav  5Kopie  6Přesun 7NovAdr 8Smazat 9H.Menu10Konec
Tolik jen vývojářům pro inspiraci :wink:

Re: softlinky a kopirovani

Posted: 24 Jan 2011, 20:26
by phanousk
No od toho ten hardlink je preci hard, ze maze i cil, ne? Na nic jineho hardlink neni...
PH

Re: softlinky a kopirovani

Posted: 25 Jan 2011, 00:10
by Cigydd
phanousk wrote:No od toho ten hardlink je preci hard, ze maze i cil, ne? Na nic jineho hardlink neni...
PH
Aha, aha, to máte pravdu. Nevím, co jsem to tu vyplodil za nesmysl. Asi jsem to měl nechat na ráno, jež je, jak známo, moudřejší večera (a noci) :D

Re: softlinky a kopirovani

Posted: 25 Jan 2011, 22:47
by Ether
phanousk wrote:No od toho ten hardlink je preci hard, ze maze i cil, ne? Na nic jineho hardlink neni...
No já měl za to, že hardlink nemá cíl jako takový, ale že je rovnocenný s ostatními soubory, které odkazují na stejná data, a potom se u těch dat akorát počítá, kolik na ně odkazuje hardlinků (ve většině případu přesně 1), a po zrušení posledního se data smažou.

Re: softlinky a kopirovani

Posted: 26 Jan 2011, 02:08
by Cigydd
Ether wrote:
phanousk wrote:No od toho ten hardlink je preci hard, ze maze i cil, ne? Na nic jineho hardlink neni...
No já měl za to, že hardlink nemá cíl jako takový, ale že je rovnocenný s ostatními soubory, které odkazují na stejná data, a potom se u těch dat akorát počítá, kolik na ně odkazuje hardlinků (ve většině případu přesně 1), a po zrušení posledního se data smažou.
Aha, takže cosi jako reference counting v garbage collectorech některých programmovacích jazyků (Python, .NET Framework, Mono) - po zrušení posledního odkazu se data smažou?
Já si to představoval tak, že se při smazání jakéhokoliv hardlinku smažou všechny ostatní, které znamenají ten samý soubor. Ale v tom se odráží má nezkušenost. Ony mohou být i rozdíly v tom, jak chápou hardlinky Windows a Linux, resp. NTFS a linuxové souborové systémy. Ví to tu někdo přesněji?

Re: softlinky a kopirovani

Posted: 05 Feb 2011, 08:00
by fraktik
Cigydd wrote:
Ether wrote:
phanousk wrote:No od toho ten hardlink je preci hard, ze maze i cil, ne? Na nic jineho hardlink neni...
No já měl za to, že hardlink nemá cíl jako takový, ale že je rovnocenný s ostatními soubory, které odkazují na stejná data, a potom se u těch dat akorát počítá, kolik na ně odkazuje hardlinků (ve většině případu přesně 1), a po zrušení posledního se data smažou.
Ony mohou být i rozdíly v tom, jak chápou hardlinky Windows a Linux, resp. NTFS a linuxové souborové systémy. Ví to tu někdo přesněji?
Nás kdysi dávno ve škole učili tu Etherovu versi (OS neutrální základy programování (PPA), btw imho phanousk tam taky chodil ;-) )

Re: softlinky a kopirovani

Posted: 18 Jun 2012, 22:07
by Cigydd
Vy jste ale povedená partička ;-)

Díky za poučení o pevných odkazech! 8)