Podpora :: RAR Features

2020-04-15 10:00:23
Tom
Volitelná úprava řazení při solid

Dobrý den,

chci se zeptat, zda je možné doplnit volitelnou funkci pro úpravu řazení souborů v solid archivu?
Často balím soubory, které mají různou příponu, ale obsahem jsou stejné. Nechci na to používat přepínač -oi , ale v solid archivu jsou ty soubory daleko od sebe, takže solid funkce není tolik účinná.

Upravené řazení by bylo doplňkové k řazení při solid.
1. proběhla by kontrola obsahu souborů jako při použití přepínače -oi , jenom by se zjistil CRC
2. na základe zjištěných CRC by se upravilo řazení souborů tak, aby stejné soubory dle CRC se nacházely u sebe pro zvýšení účinnosti solid komprese

Příklad:

Aktuální situace:
... další soubory
1C3027F2 Data/Backup/test.bak
AA1EF9D5 Data/Backup/test2.bak
... další soubory
1C3027F2 Data/test.dwg
AA1EF9D5 Data/test2.dwg
... další soubory

Nové řazení:
... další soubory
1C3027F2 Data/Backup/test.bak
1C3027F2 Data/test.dwg

AA1EF9D5 Data/Backup/test2.bak
AA1EF9D5 Data/test2.dwg

... další soubory

2020-04-15 20:10:06
Ľubomír Mlích
Re: Volitelná úprava řazení při solid

Dobrý den,

zkusím se na to zeptat.

Napadá mně jestli by váš problém neřešilo mít na soubor se stejným obsahem ale jiným jménem link (odkaz)?

Tím by jste nejen nepotřeboval novou možnost, ale ještě ušetřil místo na disku.

2020-04-16 08:52:57
Tom
Re: Volitelná úprava řazení při solid

Bohužel link by nefungoval.

Představte si jednu složku za každý den:
...
záloha.2020-04-01
záloha.2020-04-02
záloha.2020-04-03
záloha.2020-04-04
záloha.2020-04-05
záloha.2020-04-06
záloha.2020-04-07
záloha.2020-04-08
záloha.2020-04-09
...

Souborů v těch zálohách je spousta a do archivu jde posledních 10 dnů. Link, který by odkazoval mimo vybrané složky by znamenalo nefunkčnost / nekompletnost projektu.
Obsahově stejný 1 soubor se může nacházet i např. v 20 složkách, ale jeho název může být upravován.

Přepínač -oi (odkaz v archivu) nelze použít, protože se např. rozbaluje záloha za jeden konkrétní den nebo několik souborů a RAR s tím má problém, pokud je tam odkaz na soubor, který se nachází v jiném dnu a nerozbaluje se.

2020-04-16 20:08:16
Ľubomír Mlích
Re: Volitelná úprava řazení při solid

Tom> Bohužel link by nefungoval.
Tom> Představte si jednu složku za každý den:
Tom>...

Ach ano, rozumím proč by link nefungoval. Eugene Roshal mi odepsal asi toto:

ER> Přestože je to zajímavý nápad, je třeba otevřít všechny soubory se stejnou velikostí a přečíst alespoň část jejich obsahu. Což může v některých případech způsobit znatelné spoždění. Velká otázka je, jak často uživatelé komprimují soubory se stejným obsahem, ale s různými jmény - zda má smysl tento režim implementovat.
ER> V mých komprimačních úlohách mají obvykle stejné soubory, shodné názvy, jsou jen uložené v jiných složkách. Přesto je to zajímavý nápad. Nejsem si teď jistý, jestli jej budu implementovat, ale neodmítám jej úplně. Ještě nevím jistě, možná to někdy v budoucnu zvážím.

Zajímavé je, jak se trefil do příkladu, který jste uvedl, aby jste ilustroval nemožnost vytvoření linku. Hmmm,  třeba by bylo snadné provést změnu vaší adresářové struktury, tak aby měly soubory se stejným obsahem shodná jména?

2020-04-16 21:52:23
Tom
Re: Volitelná úprava řazení při solid

Záleží od toho, co se vytváří. Ono psaní zdrojáků a tohle nejde porovnávat.
ER to vidí ze svého pohledu jako programátora.
Já dělám 3D modely. Tam je jeden hlavní soubor (sestava) a ostatní se otevírají dle potřeby (díly). Když se rozhodnu, nahradím nějaký díl novým, ale chci ten původní uchovat, tak je jenom přejmenován a původní název nese nový díl.

Je jedna složka, ve které probíhá práce. Ta je pomocí scriptu zkopírována a doplněna o časovou značku, udržováno je 10 složek (10 dnů). Těch 10 složek jde do archivu.

V případě solid archivu RAR ukládá stejné názvy souborů seřazené dle nekomprimované velikosti od nejmenšího.

Pokud bych použil přepínače -s- -oi (odkazy v archivu bez použití solid komprese), předpoklad je, že by s rozbalením jedné složky z archivu nebyl problém. Ten bohužel je - RAR není schopen rozbalit, protože nenašel soubor na který odkazuje odkaz.
Byl bych rád, kdyby alespoň tohle fungovalo. Myslím, že to není až taký problém rozbalit soubor, na který odkazuje, na místo, kde se nachází odkaz při nonsolid archivu. Chápu, že zkopírovat je méně náročné, ale pokud soubor není nalezen, třeba jej rozbalit.

 

ER> Velká otázka je, jak často uživatelé komprimují soubory se stejným obsahem, ale s různými jmény - zda má smysl tento režim implementovat.

Řekl bych, že 99 % uživatelů ani neví, že něco jako odkaz v archivu (-oi) existuje a nechávají nastavení ve výchozím stavu.

2020-04-17 16:44:39
Ľubomír Mlích
Re: Volitelná úprava řazení při solid

No a uvažoval jste třeba o použití verzovacího systému jako je git?

Git vám umožní kdykoli se vrátit k předchozímu stavu a ukládá pouze změny. Tj. pokud soubor zůstane stejný, v nové verzi je pouze odkaz na starý soubor.

2020-04-18 08:06:44
Ľubomír Mlích
Re: Volitelná úprava řazení při solid

Ještě jsem napsal Eugenovi Roshalovi nápad na zlepšení, že by mohl z WinRARu udělat správce zálohování. Aby v něm šlo nastavit, které soubory, kam zálohovat, jak dlouho uchovávat zálohy.

2020-04-18 11:33:00
Tom
Re: Volitelná úprava řazení při solid

Pořešeno RARem...

rar u -ver9 archiv.rar ./projekt

Původní nezměněné nechá a zaverzuje změny + doplní nové (při vypnuté funkci solid).

2020-04-19 14:01:54
Tom
Re: Volitelná úprava řazení při solid

Po simulacích by to chtělo jednu úpravu a bude to OK.
Samotné přepínače fungují dobře samostatně. V kombinaci může nastat situace, která způsobí možnou ztrátu souborů.

V dokumentaci bohužel není napsáno, co vše porovnává přepínač -ver. Předpoklad je CRC a datum.

Provedl jsem simulaci přepínačů -ver -as.
Na adrese https://uloz.to/file/ZU3SADdtMZ8w/simulace-rar-rar je archiv se vzorkama a PDF s grafickým popisem (snad srozumitelným).
PDF obsahuje 3 scénáře. První 2 (Before (A1) a Before (B1)) jsou simulace, které nastaly. 3. (After (C1)) je, jak by se měl RAR chovat. U simulace Before (B1) je ztráta souboru.

Stačilo by v případě použití -ver -as, aby soubor, který přepínač -as má smazat z archivu, přepínač -ver místo toho přejmenoval jako další verzi, i když soubor už neexituje na HDD.

ER může prostudovat a zhodnotit.

2020-04-20 20:48:17
Ľubomír Mlích
Re: Volitelná úprava řazení při solid

Podle ER je chování v pořádku. Poslední verze souboru je smazána pokud soubor mezi přidávanými soubory chybí.

Nevidí praktický důvod pro společné použití těchto přepínačů, protože jejich účel je příliš rozdílný. Pokud zaznamená špatné chování v případě použití této kombinace je možné, že v budoucnu přidá omezení, že jeden z nich vypne ten druhý.

Myslí si, že tyto přepínače by společně měly být používané pouze pro testovací účely.

-ver znamená tolik historie, kolik je jen možné

zatímco -as znamená nemazat aktuální soubory kdykoli je to možné

Tom: V dokumentaci bohužel není napsáno, co vše porovnává přepínač -ver. Předpoklad je CRC a datum.

Pokud si ER dobře vzpomíná, tak pouze jména.

Dále jsem se ptal zda by bylo možné přidat podobný parametr, který by místo mazání přejmoval. Reakce byla, že to je velmi nepravděpodobné. Jedná se o příliš neobvyklý případ pro "general purpose" archivátor (nemůžu teď najít správný český ekvivalent general purpose tak aby to pasovalo)