Přesun v rámci jednoho svazku skrz přesměrování

Vítáme všechny návrhy na nové funkce a vylepšení programu Altap Salamander. Pro každý návrh prosím vytvořte samostatný příspěvek.
User avatar
Ether
Posts: 1471
Joined: 10 May 2007, 16:08
Location: Czech Republic
Contact:

Přesun v rámci jednoho svazku skrz přesměrování

Post by Ether »

Mám systém prošpikovaný junctiony (slouží mi mj. k oddělení persistentních uživatelských dat od toho balastu, který se tvoří v profilu, a některé adresáře tak přesměrovávám na šifrovaný svazek) a dost často se mi stává, že přesunuju nějaké soubory mezi řekněme D:\data a W:\temporary, přičemž ve skutečnosti jsou data z obou adresářů na stejném svazku. Bohužel Salamander tohle nepozná a přesunuje data místo toho, aby jenom přesunul záznam v souborové tabulce.

Podobný problém se vyskytuje u substů (moc nepoužívám), "permanentních substů" (využívám neustále; *) a sdílených disků na lokálním počítači (nestalo se mi).

Bylo by možné, aby se s tím Salamander nějak slušně vypořádal?

*) MSDN ohledně \DosDevices; psubst - prográmek, který by měl jejich vytváření usnadnit.
Ελληνικά rulez.
Jan Rysavy
ALTAP Staff
ALTAP Staff
Posts: 5231
Joined: 08 Dec 2005, 06:34
Location: Novy Bor, Czech Republic
Contact:

Re: Kopírování v rámci jednoho svazku skrz přesměrování

Post by Jan Rysavy »

Takže jaký je návrh?
User avatar
SelfMan
Posts: 1144
Joined: 05 Apr 2006, 20:51
Contact:

Re: Kopírování v rámci jednoho svazku skrz přesměrování

Post by SelfMan »

Ake je v tomto pripade chovanie explorera?
User avatar
Ether
Posts: 1471
Joined: 10 May 2007, 16:08
Location: Czech Republic
Contact:

Re: Kopírování v rámci jednoho svazku skrz přesměrování

Post by Ether »

Jan Rysavy wrote:Takže jaký je návrh?
Návrh je přesunovat tak, jak se přesunuje v rámci jednoho svazku (tj. okamžitě :)).
SelfMan wrote:Ake je v tomto pripade chovanie explorera?
Explorer nevím, zjistím. Tak Explorer to taky neumí. Právě proto by Salamander tímto značně povýšil coby pokročilý správce souborů.
Ελληνικά rulez.
Jan Rysavy
ALTAP Staff
ALTAP Staff
Posts: 5231
Joined: 08 Dec 2005, 06:34
Location: Novy Bor, Czech Republic
Contact:

Re: Kopírování v rámci jednoho svazku skrz přesměrování

Post by Jan Rysavy »

Aha, zmátlo mě slovo "Kopírování" v názvu vlákna.
User avatar
Ether
Posts: 1471
Joined: 10 May 2007, 16:08
Location: Czech Republic
Contact:

Re: Kopírování v rámci jednoho svazku skrz přesměrování

Post by Ether »

Jan Rysavy wrote:Aha, zmátlo mě slovo "Kopírování" v názvu vlákna.
Ou, chybička.

Do předchozího postu jsem přidal informaci o Exploreru.
Ελληνικά rulez.
User avatar
SelfMan
Posts: 1144
Joined: 05 Apr 2006, 20:51
Contact:

Re: Přesun v rámci jednoho svazku skrz přesměrování

Post by SelfMan »

Tak je potom otazne, ci to vobec umoznuje samotny filesystem. :?
User avatar
Ether
Posts: 1471
Joined: 10 May 2007, 16:08
Location: Czech Republic
Contact:

Re: Přesun v rámci jednoho svazku skrz přesměrování

Post by Ether »

SelfMan wrote:Tak je potom otazne, ci to vobec umoznuje samotny filesystem. :?
Samozřejmě, že ano. Filesystem samotný je v tomto ohledu pouze jakýmsi otrokem ovladačů a filtrů operačního systému. Když se podíváte na výpis Process Monitoru, když program přistupuje na reparsovanou cestu, tak ona se mu tam pěkně rozbalí.

Postup:
  1. Uživatel chce něco přesunout.
  2. Rozbalím si obě cesty a vyzkouším, jestli jsou na stejném disku.
  3. Jestli jo, přesouvám záznamy, jestli ne, přesouvám data.
Ελληνικά rulez.
User avatar
Ether
Posts: 1471
Joined: 10 May 2007, 16:08
Location: Czech Republic
Contact:

Re: Přesun v rámci jednoho svazku skrz přesměrování

Post by Ether »

Teď jsem navíc objevil, že to je příčinou dalšího problému:
Mám W:, který je subst na D:\users\ether, a uvnitř je W:\temporary, který je reparse point na D:\temporary. Když přesouvám mezi W:\temporary\a a W:\temporary\b, Salamander nic netuší a pošle systému příkaz na rychlé přesunutí, ale systém ví, že to tak fungovat nemůže, takže přesouvá data (ale to zas neví Salamander, takže se mi třeba 20 sekund ukazuje, že je 0% z přesouvání a pak se naráz dokončí). Ale systém není dost chytrý na to, aby zjistil, že nakonec jsou obě místa na stejném svazku, takže opravdu může přesouvat. Navíc se mi zdá, že při tom přesouvání se děje něco nekalého a působí to další problémy.

Doufám, že jsem se vyjádřil srozumitelně. Pointa je v tom, že kdyby Salamander všechna tato přesměrování našel a vyřešil sám, mohl by zařídit přesun tak, jak má být, a ušetřil mi starosti, práci a čas.

Doplnění: vypadá to, že to Win7 má oproti WinXP vyřešeno líp a tenhle problém nevykazuje.
Ελληνικά rulez.
Petr Solin
ALTAP Staff
ALTAP Staff
Posts: 1112
Joined: 08 Dec 2005, 09:13
Location: Novy Bor, Czech Republic
Contact:

Re: Přesun v rámci jednoho svazku skrz přesměrování

Post by Petr Solin »

Časem se na to mrknu, něco na toto téma už se tam řeší a jsou tam rutiny pro zjištění všech těchto "linků", takže je to určitě řešitelné (možná by to i mělo fungovat a je to jen rozbité, je to potřeba projet debuggerem). Je to ale každopádně práce pro malé publikum, žádnou velkou prioritu tomu proto dávat nechceme.
fraktik
Posts: 209
Joined: 27 Apr 2007, 12:13
Location: cz
Contact:

Re: Přesun v rámci jednoho svazku skrz přesměrování

Post by fraktik »

Zda se mi, ze na Win 7 se k pointerum chova AS korektne (neznam presne pozadi, ale je to ten "typ", co vytvarim pomoci "mklink").

(BTW poradite jak si pridat do user menu vytvoreni mklinku (vytvorit odkaz na oznaceny adresar z druheho panelu) - sytax je: C:\mklink /D C:\Virtual C:\Users\Geek\Puvodni)
User avatar
Ether
Posts: 1471
Joined: 10 May 2007, 16:08
Location: Czech Republic
Contact:

Re: Přesun v rámci jednoho svazku skrz přesměrování

Post by Ether »

fraktik wrote:Zda se mi, ze na Win 7 se k pointerum chova AS korektne
Taky se mi zdá. Popsané chování jsem pozoroval na WinXP, ale na Win7 si nic takového nepamatuju.
fraktik wrote:poradite jak si pridat do user menu vytvoreni mklinku (vytvorit odkaz na oznaceny adresar z druheho panelu)
Command: mklink
Arguments: /D $(DirToCompareActive) $(DirToCompareInactive)
Ale bude to vypadat humorně, protože se bude Salamander ptát na adresáře k porovnání a pak místo toho zavolá mklink. :D
Ελληνικά rulez.
fraktik
Posts: 209
Joined: 27 Apr 2007, 12:13
Location: cz
Contact:

Re: Přesun v rámci jednoho svazku skrz přesměrování

Post by fraktik »

ether wrote:
fraktik wrote:poradite jak si pridat do user menu vytvoreni mklinku (vytvorit odkaz na oznaceny adresar z druheho panelu)
Command: mklink
Arguments: /D $(DirToCompareActive) $(DirToCompareInactive)
Ale bude to vypadat humorně, protože se bude Salamander ptát na adresáře k porovnání a pak místo toho zavolá mklink. :D
Nejak to nefacha - zkousel jsem uvozovky i vyplnit ten druhej radek, ale nic, jen hlaska:
"Empty string is not allowed here"
User avatar
Ether
Posts: 1471
Joined: 10 May 2007, 16:08
Location: Czech Republic
Contact:

Re: Přesun v rámci jednoho svazku skrz přesměrování

Post by Ether »

Nevím, nějak se mi to nedaří reprodukovat. Pošlete podrobný postup, třeba pomocí screenshotů.
Ελληνικά rulez.
fraktik
Posts: 209
Joined: 27 Apr 2007, 12:13
Location: cz
Contact:

Re: Přesun v rámci jednoho svazku skrz přesměrování

Post by fraktik »

Tu serii screenu jsem udelal na XP - proto kdyz jsem zadal do druheho radku platnou cestu, vyhodilo to komandlajnu s:

Code: Select all

E:\Zdroj>call mklink /D E:\Zdroj\Priklad D:\Zkusebni
mklink není názvem vnitřního ani vnějšího příkazu,
spustitelného programu nebo dávkového souboru.
Ale jinak hlaska je identicka s tou z Win7:
Image
Image
Image
Image
Odkaz na celou stranku (pro jistotu).
Post Reply