[LUGOS] tar 'on the fly'

Metod Kozelj metod.kozelj at lugos.si
Sun Dec 25 10:55:05 CET 2005


Howdy!

Nejc Skoberne wrote:

> Zdravo.
>
> Ali je možno narediti nekaj v stilu:
>
> root at 192.168.1.1:~# ssh 192.168.1.2 cd /homes; tar cvz * | tar zxvf -


Ja. Samo posamezne sklope grupiraj v oklepaje. Takole:

root at 192.168.1.1:~# ( ssh 192.168.1.2 cd /homes; tar czf - * ) | tar zxvf -

Aja, pa izklopi tisti 'verbose' cmd parameter od tara pri taru, ki svoj 
izhod piše na stdout. Nisem sicer še preverjal ampak morda bi izpis 
informativnih sporočil v isti stream kot vsebino arhiva znal zmotiti 
tar, ki ta stream potem bere in razpakirava.

Lahko se greš še malo hekeriranja ... recimo takole:

root at 192.168.1.1:~# ( ssh 192.168.1.2 cd /homes; tar czf - * | dd 
bs=1024k ) | tar zxvf -

ki ti za bonus da še 1M buffer. V zgornjem primeru je kajpada to brez 
veze, bolj smiselno pa je v temle primeru:

root at 192.168.1.1:~# ( ssh 192.168.1.2 cd /homes; tar czf - * ) | dd 
bs=1024k of=/dev/nst0

ki je arhiviranje remote mašine na lokalni kasetar (DAT, DLT, LTO, ...). 
Bistveno pomaga v primeru, da je pripravljanje in transport podatkov z 
remote mašine prepočasno za kasetar, zato uporabiš buffer. V zgornjem 
primeru je bufferja (1MB) kajpada premalo, bolje bi bilo z bistveno 
večjim (100MB ali kaj podobnega).

-- 
Peace!
  Mkx

---- perl -e 'print $i=pack(c5,(41*2),sqrt(7056),(unpack(c,H)-2),oct(115),10);'
---- echo 16i[q]sa[ln0=aln100%Pln100/snlbx]sbA0D4D465452snlb xq | dc



More information about the lugos-list mailing list