rsync proti databázi?

tropikhajma tropikhajma na seznam.cz
Neděle Říjen 2 23:31:00 CEST 2005


Dne neděle 02 říjen 2005 23:21 Ctirad Fertr napsal(a):
> Dne neděle 02 října 2005 22:50 tropikhajma napsal(a):
> > přepínač -n
>
> To nestačí. Potřebuju tam mít i práva a navíc nevím, jak řešit druhou
> polovinu problému, kde bych potřeboval porovnat aktuální filesystém s takto
> vygenerovanou databází a rozdíl hodit do zálohy.
>
> Ctirad

takhle to dělám já, i když něco trochu jinýho než potřebuješ, ale třeba tě to inspiruje:

#!/bin/bash
root_path="/mnt/mdk/Mandrakelinux-devel/cooker"
server_address="mandrake.contactel.cz"
server_path="Mandrivalinux-devel/cooker/i586/"

/usr/bin/rsync -avvnH --delete-after --exclude='media_info/' --exclude='*.cz' $server_address::$server_path $root_path | grep -v "is uptodate" | grep .rpm$ > /var/log/seznamrpm

for deleted in $(grep deleting /var/log/seznamrpm)
do
  if [ "$deleted" != "deleting" ]
  then
  stary_soubor=$root_path/$deleted
  deleted_base=`/bin/basename "$deleted"`
  deleted_dir=`/usr/bin/dirname "$deleted"`
  package_name=`echo $deleted_base | awk 'BEGIN { FS = "-[^-]+-[^-]+rpm$" } ; { print $1 }'`
  novy_soubor=$root_path/`grep -v deleting /var/log/seznamrpm | grep "$deleted_dir/$package_name-[^-]\+-[^-]\+rpm$"`
  echo $stary_soubor
  echo $novy_soubor
  mv -f $stary_soubor $novy_soubor
  fi
done

/usr/bin/rsync -avvH --delete-after --progress --partial --exclude='media_info/' --exclude='*.cz' $server_address::$server_path $root_path > /var/log/updaterpm1.log

/mnt/mdk/Mandrakelinux-devel/cooker/misc/gendistrib --skipmissingdir --nochkdep /mnt/mdk/Mandrakelinux-devel/cooker/


Další informace o konferenci Linux