Koledzy mówią o
backupie, a ty chcesz zwykłą, prostą
kopię. To co innego.
Na lokalnej maszynie wykonujesz takie polecenie (i to wszystko!):
Kod:
ssh user@server 'cd ~/katalog_serwera; tar cf - .' | tar xf -
W bieżącym katalogu maszyny lokalnej pojawią się pliki z serwera.
Omówienie:
- polecenie ssh loguje się do zdalnej maszyny
- polecenie cd zmienia katalog na ten z którego chcesz skopiować pliki
- polecenie tar cf - . (myślnik i kropka) tworzy tarballa, po to aby go szybko skopiować (tak jest najszybciej)
- polecenie tar xf - rozpakowuje tarballa na maszynie lokalnej
Aby powyższe polecenie zadziałało bez hasła (czyli ze skryptu, z crona) musisz przed jego wykonaniem umożliwić logowanie do zdalnej maszyny za pomocą kluczy publiczny-prywatny.
Na localu generujesz klucze
Wciskasz Enter, Enter aby utworzyć klucze bezhasłowe.
Kopiujesz klucz publiczny na zdalną maszynę:
Kod:
ssh-copy-id user@server
i już możesz wykonać pierwsze polecenie z tego posta.
I