Portál AbcLinuxu, 14. srpna 2025 11:15


Dotaz: zálohování přes ssh s vynecháním podadresáře

13.5.2005 10:07 deleted | skóre: 3 | blog: pnojmatika
zálohování přes ssh s vynecháním podadresáře
Přečteno: 200×
Odpovědět | Admin
Ahoj,

potřeboval bych zazálohovat celý /home vyjma jednoho (dosti velkého) adresáře. Zálohovat bych to chtěl na počítač, na který se dostanu pouze přes ssh (nebo sftp). Záloha by měla být v jednom souboru (nejlépe tar). Na zdrojovém počítači nemám dost místa, abych to celé mohl tarnout a pak poslat přes sftp. Nějaké nápady?

Díky
deleted
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

13.5.2005 10:26 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: zálohování přes ssh s vynecháním podadresáře
Odpovědět | | Sbalit | Link | Blokovat | Admin
tar --exclude=... -cf - | ssh počítač "tar -xf -"
13.5.2005 10:48 deleted | skóre: 3 | blog: pnojmatika
Rozbalit Rozbalit vše Re: zálohování přes ssh s vynecháním podadresáře
aha, neuvědomil jsem si, že slovíčko FILE v manuálu znamená i adresář, děkuji
deleted
13.5.2005 14:49 Zdeněk Štěpánek | skóre: 57 | blog: uz_mam_taky_blog | varnsdorf
Rozbalit Rozbalit vše Re: zálohování přes ssh s vynecháním podadresáře
Odpovědět | | Sbalit | Link | Blokovat | Admin
Zdravim

S timhle jsem si jednou hral u prikazu ls, potreboval jsem vynechat nekolik souboru a adresaru a proste to neslo, vzdy sel jen jeden, byl jstem z toho dost navetvi. Nakonec jsme tedy udelal ls do souboru, rucne vymazal to co nechci a ve skriptu ve smycce for jsem misto ls * --exclude pouzil cteni z toho souboru.

Jde to i s tim exclude?

Zdenek
www.pirati.cz - s piráty do parlamentu i jinam www.gavanet.org - czfree varnsdorf
13.5.2005 15:26 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
Rozbalit Rozbalit vše Re: zálohování přes ssh s vynecháním podadresáře
for i in *
do
  case $i in
    to|co|nechci) ;;
    *) co_s_tim_chci;;
  esac
done
XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
13.5.2005 15:32 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
Rozbalit Rozbalit vše Re: zálohování přes ssh s vynecháním podadresáře
$ ls
dalsi  GDL  olixpre  olixpre.tar
$ for i in *; do case "$i" in GDL|olixpre);; *) echo $i;esac;done
dalsi
olixpre.tar
XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
13.5.2005 15:45 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
Rozbalit Rozbalit vše Re: zálohování přes ssh s vynecháním podadresáře
Mimochodem můj ls si o --exclude myslí
$ ls --exclude=cokoli
ls: neznámý přepínač `--exclude=cokoli'
Více informací získáte příkazem `ls --help'.
a ls *? Co vám ten počítač udělal? Jen doufám, že nepíšete perly typu
for i in `ls *`
XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
14.5.2005 11:20 Zdeněk Štěpánek | skóre: 57 | blog: uz_mam_taky_blog | varnsdorf
Rozbalit Rozbalit vše Re: zálohování přes ssh s vynecháním podadresáře
Odpovědět | | Sbalit | Link | Blokovat | Admin
Zdravim

No ja ten skript nemel pred sebou, neni to --exclude, ale --ignore

-I, --ignore=pattern

Do not list files whose names match the shell pattern pattern (not regular expression) unless they are given on the command line. As in the shell, an initial `.' in a file-name does not match a wildcard at the start of pattern. For simple-minded root-kits: add LS_OPTIONS="$LS_OPTIONS -I mystuff" in /etc/profile or so, to hide your directo-ries.

Dost mozna ze jsem tam udelal ls *. Vim ze to neni idealni, ale tech souboru tam stejne bylo tak max 20. P.S.: Muzete mi tedy nekdo jakl to udelat lepe?

Pouzil jsme tento exampl:
#!/bin/bash
#==========================================
# process every file in current directory
# may use "break", "continue"
#==========================================

for FName in $(ls *.*); do
  echo $FName
# mv $FName $FName.old
done
Zdenek
www.pirati.cz - s piráty do parlamentu i jinam www.gavanet.org - czfree varnsdorf
16.5.2005 09:28 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
Rozbalit Rozbalit vše Re: zálohování přes ssh s vynecháním podadresáře
Nejdřív co je tam špatně. Prvně provede bash expanzi *.* uvnitř $(), pak se spustí ls a na svůj stdout pošle totéž, co už jednou bash expandoval a pak to bash znovu musí rozparsovat (ne podle hranic jmen souborů, ale podle IFS takže to navíc může rozseknout soubory s mezerou ve jméně a podobné radosti) a zpracovat jakou parametry příkazového řádku. (Odmyslíme-li si další chybu, že ls *.* nevypíše všechny soubory, ale jen soubory s tečkou v názvu - nejsme v DOSu se jmény souborů 8.3) To znamená spoustu zbytečné práce navíc. Přitom zápis
for FName in *; do
  echo $FName
# mv $FName $FName.old
done
Udělá totéž, ale mnohem efektivněji. Bash je tak chytrej, že * neexpanduje naráz, ale provádí smyčku for postupně s jednotlivými jmény souborů. Efekt je stejný, ale ušetří se hodně paměti.
XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.