====== Rsync ======
===== Gandalf style =====
export 'RSYNC_RSH=ssh -T -c aes128-gcm@openssh.com,arcfour128,arcfour,aes128-cbc,blowfish -o Compression=no -x'
rsync -aAXzv --numeric-ids --exclude="/dev" --exclude="/proc" --exclude="/sys" login@host:/ .
rsync -aAXHWv --numeric-ids root@192.168.1.100:/mnt/* .
příkaz pro rsync pomocí klíče bez hesla : rsync -r -e "ssh -i /root/.ssh/id_rsa_migration" /var/www/clients/zelenemesto3.cz/web/* root@hostx009.spoje.net:/var/www/clients/zelenemesto3.cz/web/)
zkopírování celého obsahu **vzdáleného serveru** Můra Style (od Gandalfa)
* **remote** v /etc/ssh/sshd_config povolit : PermitRootLogin yes
* **remote** ip a (zjistit IP adresu vdáleného serveru - 82.100.58.6)
* **local** su- (stát se root rootem)
* **local** cd/ (evěřit že stojím v lomítku - hlavním adresáři)
* **local** rsync -aAXzv --numeric-ids --exclude="/dev" --exclude="/proc" --exclude="/sys" root@82.100.58.6:/ .
* **-a** archivni mod (zahrnuje **-rlptgoD**)
* **-A** preserve ACLs (implies **-p**)
* **-X** preserve extended attributes
* **-H** preserve hard links
* **-W** copy files whole (w/o delta-xfer algorithm)
* **-z** compress file data during the transfer
* **-v** increase verbosity
* **-x** don't cross filesystem boundaries
===== Lomítka =====
* do dst synchronizuje obsah src
* **src/ dst**
* **src/ dst/**
* v dst udela podadresar src
* **src dst**
* **src dst/**
===== protocol version mismatch -- is your shell clean? =====
zkus se pripojit ''%%ssh host /bin/true%%''
===== Vyhleda pocet vyskytu IP adresy v logu =====
/var/log/apache/access.log |cut -f 1 -d ' '|sort|uniq -c|sort -nr|more
===== Sync permissions bez obsahu souboru =====
Pokud se nam povedlo syncnout adresar bez setuidu nebo numeric-ids, a zjistime to se zpozdenim kdyz uz jsou data zmenena a chcem permisny dosyncnout dodatecne na upraveny produkcni data bez zmeny obsahu souboru, muzem pouzit tenhle skript:
#!/bin/bash
#set -x
fixperms() {
echo "FIXING $SUFFIX in $@ $(date)"
cd "$3""$SUFFIX"
IFS=$'\t'
ssh "$1" -- 'find '"$2$SUFFIX"' -printf "%m\t%U:%G\t%u:%g\t%P\n"' | tail -n +2 | while read -a line; do
#echo chown -h "${line[2]}" "${line[3]}" #set name ids (probably bad for migrations?)
chown -h "${line[1]}" "${line[3]}" #set numeric ids
test -L "${line[3]}" || chmod "${line[0]}" "${line[3]}" #set mode if not symlink
done;
}
#SUFFIX=/home
time fixperms server.example.com /vzdaleny/adresar/ /lokalni/adresar/
===== NTFS (ntfsclone) =====
NTFS se na Linuxu neda rsyncnout se zachovanim vsech atributu, je potreba pouzit ntfsclone:
ntfsclone --overwrite /dev/cil /dev/zdroj