1
Software / Re:Rsync se nezastaví na chybě
« Poslední příspěvek od RDa kdy Dnes v 22:49:19 »Dopadlo to tak, ze jsem si to cele oskriptoval sam.
Takze mam jeden skript co analyzuje soucasnou situaci mezi zdrojem a cilem (z pohledu velikosti souboru a timestampu), a pak to vyprodukuje seznamy serazene podle nazvu, velikosti a casu, plus seznam pro castecne soubory, vcetne statusu:
Jiny skript pak umi cist ty vytvorene seznamy a bud pusti cp nebo rsync, a preskakuje existujici soubory (v pripade rsync ho pusti i na neuplne). Nyni preferuji rsync protoze umi pokracovat v tech partialech (ktere se obcas tvori moji intervenci a la Ctrl+C) a pak ma samozrejme riditelnost rychlosti. Ten rsync se pusti vzdy jenom na 1 soubor, a po skonceni rsynce tam mam kontrolu zda aktualni cil nahodou neobsahuje na konci same nuly (4KiB), takze by se smycka ukoncila a ja videl rano zda a na cem to selhalo - pak stacilo nalezt odkud jsou nuly, udelat truncate --size a pokracovat rsyncem.
Se seznamy muzu delat pak co chci, nez je zacnu prenaset, coz pomaha prioritizovat urcite soubory nebo volit strategii (jel jsem vcera od nejmensich souboru po nejvetsi, pak u nocnich behu preferuji od nejnovejsich po nejstarsi - abych maximalizoval uspesnost kdy to nehlidam, pripadne je muzu rozdelit grepem nez to pustim paralelne).
Nyni mam pusteny dve vlakna nad seznamy pro ruzne slozky a oba maj limit 2500 KB/s, takze to leze cca 5MB/s. Rucni adhoc kopirovani jsem resil vedle v mc, ale kdyz vidim ze se to zastavi tak musim dat abort, at se ten radic prilis netrapi, ale dokazal jsem nahnat nejakych par GB jeste.
Odpoledne to vypadalo ze jeste 48 hodin, pokud vse dobre dojede:
Zrejme bych to zvladl i na blokove urovni podobne jako byl tvuj navrh, protoze jak mam ctecku exfat-u, tak presne vim ktere sektory co obsahuji, a mohl bych to tahat do sparse file nebo derave cache kopie. Puvodne jsem to chtel udelat, pro metadata, ale myslim ze zadna chyba na tom FS neni kterou bych musel opravovat - takze me to uz v teto fazi nic neprinese.
Disk ma fakt problem pod zatezi, treba za noc (12hodin cca) se objevila jen 4x ta soft chyba kdyz to slo 5MB/s ... a neodpojilo se to. Takze to necham dojet - a vsude kde jsem chyby zahledl tak ty video soubory prehrat opravdu sli, bez nejakeho glitche.. predpokladam tedy ze data zkoruptena nebudou.
Pripojeny to je v 10G rezimu, jsem linej shanet A-C kabel, nebo A-C/C-C s usb2 only, zda to neblbne kvuli USB samotnemu. Ale vzhledem k tomu ze nedavno nahrana data slo stahnout plnou rychlosti, a problem je zejmena u starsich.. tak bych rekl ze to bude problem na opacnem konci - smerem do flashek nebo ve FW.
Takze mam jeden skript co analyzuje soucasnou situaci mezi zdrojem a cilem (z pohledu velikosti souboru a timestampu), a pak to vyprodukuje seznamy serazene podle nazvu, velikosti a casu, plus seznam pro castecne soubory, vcetne statusu:
Kód: [Vybrat]
# ./syncer.php | tail -n 3
[count] same=14018 timediff=0 sizediff=2 todo=1550
[bytes] same=2071684139183 timediff=0 sizediff=(1678033637:1015545856)=662487781 todo=929056391920 max=19025802592
[MiBsz] same=1975711 timediff=0 sizediff=(1600:968)=631 todo=886017 max=18144
Jiny skript pak umi cist ty vytvorene seznamy a bud pusti cp nebo rsync, a preskakuje existujici soubory (v pripade rsync ho pusti i na neuplne). Nyni preferuji rsync protoze umi pokracovat v tech partialech (ktere se obcas tvori moji intervenci a la Ctrl+C) a pak ma samozrejme riditelnost rychlosti. Ten rsync se pusti vzdy jenom na 1 soubor, a po skonceni rsynce tam mam kontrolu zda aktualni cil nahodou neobsahuje na konci same nuly (4KiB), takze by se smycka ukoncila a ja videl rano zda a na cem to selhalo - pak stacilo nalezt odkud jsou nuly, udelat truncate --size a pokracovat rsyncem.
Se seznamy muzu delat pak co chci, nez je zacnu prenaset, coz pomaha prioritizovat urcite soubory nebo volit strategii (jel jsem vcera od nejmensich souboru po nejvetsi, pak u nocnich behu preferuji od nejnovejsich po nejstarsi - abych maximalizoval uspesnost kdy to nehlidam, pripadne je muzu rozdelit grepem nez to pustim paralelne).
Nyni mam pusteny dve vlakna nad seznamy pro ruzne slozky a oba maj limit 2500 KB/s, takze to leze cca 5MB/s. Rucni adhoc kopirovani jsem resil vedle v mc, ale kdyz vidim ze se to zastavi tak musim dat abort, at se ten radic prilis netrapi, ale dokazal jsem nahnat nejakych par GB jeste.
Odpoledne to vypadalo ze jeste 48 hodin, pokud vse dobre dojede:
Kód: [Vybrat]
# while true ; do echo -n `date` '' ; ./syncer.php | tail | grep MiB ; sleep 3600 ; done
Sun Jan 5 05:05:10 PM CET 2025 [MiBsz] same=2035446 timediff=0 sizediff=(640:297)=343 todo=827242 max=18144
Sun Jan 5 06:05:10 PM CET 2025 [MiBsz] same=2052923 timediff=0 sizediff=(2048:282)=1765 todo=808357 max=18144
Sun Jan 5 07:05:11 PM CET 2025 [MiBsz] same=2070273 timediff=0 sizediff=(3072:373)=2699 todo=789983 max=18144
Sun Jan 5 08:05:11 PM CET 2025 [MiBsz] same=2084967 timediff=0 sizediff=(4608:3067)=1541 todo=773753 max=18144
Sun Jan 5 09:05:12 PM CET 2025 [MiBsz] same=2101610 timediff=0 sizediff=(6592:3860)=2732 todo=755126 max=18144
Sun Jan 5 10:05:12 PM CET 2025 [MiBsz] same=2120478 timediff=0 sizediff=(5596:2298)=3298 todo=737254 max=18144
Zrejme bych to zvladl i na blokove urovni podobne jako byl tvuj navrh, protoze jak mam ctecku exfat-u, tak presne vim ktere sektory co obsahuji, a mohl bych to tahat do sparse file nebo derave cache kopie. Puvodne jsem to chtel udelat, pro metadata, ale myslim ze zadna chyba na tom FS neni kterou bych musel opravovat - takze me to uz v teto fazi nic neprinese.
Disk ma fakt problem pod zatezi, treba za noc (12hodin cca) se objevila jen 4x ta soft chyba kdyz to slo 5MB/s ... a neodpojilo se to. Takze to necham dojet - a vsude kde jsem chyby zahledl tak ty video soubory prehrat opravdu sli, bez nejakeho glitche.. predpokladam tedy ze data zkoruptena nebudou.
Pripojeny to je v 10G rezimu, jsem linej shanet A-C kabel, nebo A-C/C-C s usb2 only, zda to neblbne kvuli USB samotnemu. Ale vzhledem k tomu ze nedavno nahrana data slo stahnout plnou rychlosti, a problem je zejmena u starsich.. tak bych rekl ze to bude problem na opacnem konci - smerem do flashek nebo ve FW.