Discussione:
sincronizzare siti online e locali
(troppo vecchio per rispondere)
Franco Peci
2022-07-30 15:00:01 UTC
Permalink
Mi diverto a realizzare e gestire qualche sito, perlopiù appoggiandomi
ad Aruba.
Mentre prima aggiornavo il sito in locale sul mio PC e poi eseguivo
l'upload dei files nuovi o modificati tramite i soliti programmi ftp
(gftp. filezilla...) ora, tramite pagine php protette da password,
aggiorno e creo nuove pagine quasi sempre online.
Lo trovo un metodo più comodo per aggiornare i siti, ma vorrei avere
periodicamente anche una copia dei files nuovi e modificati in locale
sul mio pc.
Usando i programmi ftp prima ricordati, mi fanno sempre scaricare tutti
i files di una determinata directory mentre, come avviene per l'upload,
vorrei scaricare in locale solo i files nuovi o modificati.
Ho provato ad usare rsync ma non riesco ad impostare come origine una
determinata directory del sito online. Mi sembra d'aver capito che
bisogna avere un accesso ssh o roba simile.

Dando il comando:
rsync -av --delete https://www.xxx.it/dati/  Siti/xxx/dati/
ottengo il seguente output:
ssh: Could not resolve hostname https: Name or service not known
rsync: connection unexpectedly closed (0 bytes received so far) [Receiver]
rsync error: unexplained error (code 255) at io.c(228) [Receiver=3.2.4]

Sareste così gentili di indicarmi un modo per mantenere sincronizzati i
dati in locale senza dover ogni volta scaricare centinaia di files che
ho già nel computer?

Grazie e ciao
Franco
Giancarlo Martini
2022-07-30 15:40:01 UTC
Permalink
Domanda: ma come fai ad usare rsync se non hai ssh?

--
Giancarlo Martini
http://www.giancarlomartini.it
http://www.linkedin.com/in/giancarlo-martini
Mi diverto a realizzare e gestire qualche sito, perlopiù appoggiandomi
ad Aruba.
Mentre prima aggiornavo il sito in locale sul mio PC e poi eseguivo
l'upload dei files nuovi o modificati tramite i soliti programmi ftp
(gftp. filezilla...) ora, tramite pagine php protette da password,
aggiorno e creo nuove pagine quasi sempre online.
Lo trovo un metodo più comodo per aggiornare i siti, ma vorrei avere
periodicamente anche una copia dei files nuovi e modificati in locale
sul mio pc.
Usando i programmi ftp prima ricordati, mi fanno sempre scaricare tutti
i files di una determinata directory mentre, come avviene per l'upload,
vorrei scaricare in locale solo i files nuovi o modificati.
Ho provato ad usare rsync ma non riesco ad impostare come origine una
determinata directory del sito online. Mi sembra d'aver capito che
bisogna avere un accesso ssh o roba simile.
rsync -av --delete https://www.xxx.it/dati/ Siti/xxx/dati/
ssh: Could not resolve hostname https: Name or service not known
rsync: connection unexpectedly closed (0 bytes received so far) [Receiver]
rsync error: unexplained error (code 255) at io.c(228) [Receiver=3.2.4]
Sareste così gentili di indicarmi un modo per mantenere sincronizzati i
dati in locale senza dover ogni volta scaricare centinaia di files che
ho già nel computer?
Grazie e ciao
Franco
Alessandro Rubini
2022-07-30 21:10:01 UTC
Permalink
rsync -av --delete https://www.xxx.it/dati/ Siti/xxx/dati/
ssh: Could not resolve hostname https: Name or service not known
rsync usa come indicatore remoto <host>:<path>, quindi cerca di
risovere "https" come hostname. Si, si basa su ssh. Per come funziona
rsync (interessante da leggere, e` ben spiegato) non puo` appoggiarsi
su https.

E comunque anche ftp permette copie quasi intelligenti ("solo i file
modificati"), perche` il cliente puo` vedere data e dimensione dei file
prima di decidere se scaricarli o meno.

Io uso lftp, che ha il comando "mirror" e fa questo, con varie
opzioni su dimensioni e date. "man lftp" per i dettagli. Un bel
"mirror" sul telefono e` una buona forma di backup (dopo aver installato
un server ftp sul telefono, per esempio da fdroid).

rsync resta meglio, ma serve ssh.

/alessandro
Piviul
2022-08-02 13:20:02 UTC
Permalink
Grazie per le risposte.
Siti/parrocchia/dati/home/
rsync usa ssh come protocollo remoto, non lo devi specificare; sarebbe
meglio inoltre installare rsync anche sull'host xx.xxx.xxx.108 se non lo
hai già fatto.

Ovviamente ssh server è installato su xx.xxx.xxx.108? Inoltre quel che
mi perplime è come rsync interpreti una username con la chiocciola,
essendo la chiocciola utilizzata per separare lo username dall'host per
l'accesso remoto;  ad esempio in ssh riesci ad entrare su xx.xxx.xxx.108
con utente ***@aruba.it con qualcosa tipo:

$ ssh ***@aruba.it@xx.xxx.xxx.108

Piviul
Giuseppe Sacco
2022-08-02 13:40:01 UTC
Permalink
Ciao
Post by Piviul
[...]
Ovviamente ssh server è installato su xx.xxx.xxx.108? Inoltre quel che
mi perplime è come rsync interpreti una username con la chiocciola,
essendo la chiocciola utilizzata per separare lo username dall'host per
l'accesso remoto;  ad esempio in ssh riesci ad entrare su xx.xxx.xxx.108
quando hai la chiocciola o altri caratteri particolari nel nome, usa
l'argomento «-l» di ssh per indicare il solo nome. Ad esempio:

ssh -l nome:parti//***@. nomehost

oppure puoi configurare l'accesso nel file ~/.ssh/config in questo modo:

host nomehost
User nome:parti//***@.

Ciao,
Giuseppe
Piviul
2022-08-02 15:50:01 UTC
Permalink
Grazie per le risposte.
Siti/parrocchia/dati/home/
se ***@aruba.it è l'utente che ha accesso in ssh all'host xx.xxx.xxx.108
allora potresti mettere lo username fra apici singoli per evitare errori
di sintassi con rsync. In altre parole prova con:

$ rsync -avz '***@aruba.it'@xx.xxx.xxx.108:/dati/home/
Siti/parrocchia/dati/home/

Piviul
Piviul
2022-08-03 08:20:02 UTC
Permalink
xx.xxx.xxx.108 allora potresti mettere lo username fra apici singoli
separa lo username dall'host. Se ce ne sono altri, fanno parte dello
username.
bene, ho imparato una cosa nuova, grazie
Purtroppo Aruba non mi risulta permetta l'uso di ssh coi piani di
hosting condiviso, quindi niente rsync :(
beh, se non hai ssh, rsync non lo puoi usare sicuro... tocca ripiegare
su ftp mi sembra di aver capito


Piviul

Continua a leggere su narkive:
Loading...