# Backup di Discourse su un droplet DO su dispositivo NAS

**URL:** https://meta.discourse.org/t/backup-discourse-in-do-droplet-to-nas-device/139253
**Category:** Support
**Created:** [21 Gennaio 2020, 3:09am UTC](https://meta.discourse.org/t/backup-discourse-in-do-droplet-to-nas-device/139253 "2020-01-21T03:09:56Z")
**Posts on this page:** 13
**Page:** 1

<div class="post-metadata">

### Author: ![Paul\_King](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/paul_king/32/165426_2.png) [@Paul\_King](https://meta.discourse.org/u/Paul_King)
#### Post date: [21 Gennaio 2020, 3:09am UTC](https://meta.discourse.org/t/backup-discourse-in-do-droplet-to-nas-device/139253/1 "2020-01-21T03:09:57Z")

</div>

Ciao, sto cercando un modo per eseguire backup automatizzati del mio nuovo forum Discourse (configurato su un droplet di Digital Ocean) sul dispositivo NAS della mia rete domestica. Come posso farlo?

Non sono un programmatore e non saprei da dove iniziare per creare un plugin a questo scopo.

---

<div class="post-metadata">

### Author: ![marianord](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/marianord/32/90502_2.png) [@marianord](https://meta.discourse.org/u/marianord)
#### Post date: [21 Gennaio 2020, 3:49am UTC](https://meta.discourse.org/t/backup-discourse-in-do-droplet-to-nas-device/139253/2 "2020-01-21T03:49:38Z")

</div>

Il modo più semplice è eseguire un’attività automatizzata (cron job). A seconda del NAS che possiedi, puoi eseguire comandi Linux di base, come `rsync`.

Hai bisogno di un metodo per collegare il NAS e il Droplet; una volta trovato, penso che utilizzare un plugin sarebbe eccessivo. Ti basta qualcosa di simile al codice qui sotto, da eseguire sul tuo NAS tramite un cron job:

```bash
rsync -avz --progress -e "ssh -i ~/.ssh/id-rsa" example.com:/var/discourse/shared/standalone/backups /folder/in/the/nas

```

La possibilità di eseguire qualcosa di questo tipo dipende, come ho detto sopra, dal tipo di NAS che possiedi.

---

<div class="post-metadata">

### Author: ![Paul\_King](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/paul_king/32/165426_2.png) [@Paul\_King](https://meta.discourse.org/u/Paul_King)
#### Post date: [21 Gennaio 2020, 4:37am UTC](https://meta.discourse.org/t/backup-discourse-in-do-droplet-to-nas-device/139253/3 "2020-01-21T04:37:17Z")

</div>

Grazie, Mario. Ho un vecchio Netgear ReadyNAS Ultra 6 con OS6, che credo possa supportare questo approccio (lo verificherò).

Immagino che parte del problema per me consista nell’identificare quali file o cartelle eseguire il backup: presumo solo il database? (e presumo che tutte le immagini/allegati pubblicati siano incorporati al suo interno?)

Quale percorso dovrei utilizzare per trovare il database? Il database è addirittura memorizzato come file all’interno della directory di Discourse? Ho dato un’occhiata in /var/discourse e, con i miei occhi inesperti, non ho notato nulla che sembrasse un file di database.

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [21 Gennaio 2020, 4:56am UTC](https://meta.discourse.org/t/backup-discourse-in-do-droplet-to-nas-device/139253/4 "2020-01-21T04:56:35Z")

</div>

Vuoi attivare i backup giornalieri e ottenere

```
 /var/discourse/shared/standalone/backups/default

```

---

<div class="post-metadata">

### Author: ![Paul\_King](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/paul_king/32/165426_2.png) [@Paul\_King](https://meta.discourse.org/u/Paul_King)
#### Post date: [21 Gennaio 2020, 5:04am UTC](https://meta.discourse.org/t/backup-discourse-in-do-droplet-to-nas-device/139253/5 "2020-01-21T05:04:32Z")

</div>

Grazie Jay, sembra essere la soluzione giusta!  
È corretto assumere che, se ho impostato ‘includi i caricamenti con i backup’, non ci sia altro da mantenere in backup, nel caso in cui in futuro dovessi ricominciare da zero su un altro server?

(assumendo che i plugin di terze parti che ho utilizzato non diventino improvvisamente nuovamente non disponibili per il download)

Inoltre, esiste un modo per pulire automaticamente la directory dei backup giornalieri, in modo che, ad esempio, vengano mantenuti sul server non più degli ultimi 7 giorni di backup giornalieri?

---

<div class="post-metadata">

### Author: ![marianord](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/marianord/32/90502_2.png) [@marianord](https://meta.discourse.org/u/marianord)
#### Post date: [21 Gennaio 2020, 5:55am UTC](https://meta.discourse.org/t/backup-discourse-in-do-droplet-to-nas-device/139253/6 "2020-01-21T05:55:36Z")

</div>

Sì, ci sono delle impostazioni nella Dashboard di Amministrazione, al momento non ricordo i nomi esatti. Lo script che ti ho inviato in precedenza utilizza già il percorso predefinito in cui vengono archiviati i backup.

Tuttavia, con `rsync` sul NAS e quel comando, puoi configurarlo in modo che cancelli anche i vecchi backup dal NAS: sei pronto.

---

<div class="post-metadata">

### Author: ![Paul\_King](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/paul_king/32/165426_2.png) [@Paul\_King](https://meta.discourse.org/u/Paul_King)
#### Post date: [21 Gennaio 2020, 6:02am UTC](https://meta.discourse.org/t/backup-discourse-in-do-droplet-to-nas-device/139253/7 "2020-01-21T06:02:43Z")

</div>

Grazie, Mariano  
Nel forum di ReadyNAS è stato suggerito che l’uso di cron su ReadyNAS è possibile ma non ideale, e che i ‘timer systemd’ integrati sono migliori. Non sono sicuro che permettano funzionalità avanzate come la pulizia remota delle directory.

Attualmente sto avendo problemi con errori ‘Permission denied (publickey)’ ogni volta che provo a connettermi da ReadyNAS al mio server Discourse, anche se ho aggiunto la chiave pubblica di ReadyNAS all’elenco degli utenti SSH su Digital Ocean.

Aggiornerò qui se farò progressi, per chiunque altro stia provando a fare la stessa cosa.

---

<div class="post-metadata">

### Author: ![marianord](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/marianord/32/90502_2.png) [@marianord](https://meta.discourse.org/u/marianord)
#### Post date: [21 Gennaio 2020, 6:24am UTC](https://meta.discourse.org/t/backup-discourse-in-do-droplet-to-nas-device/139253/8 "2020-01-21T06:24:04Z")

</div>

La pulizia viene eseguita direttamente da Discourse sul droplet, ma `rsync` ha un’infinità di opzioni, quindi puoi personalizzare il processo di copia dei backup a tuo piacimento.

Assicurati di riavviare il server SSH; a volte questo risolve alcuni problemi relativi alle chiavi pubbliche.

---

<div class="post-metadata">

### Author: ![Paul\_King](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/paul_king/32/165426_2.png) [@Paul\_King](https://meta.discourse.org/u/Paul_King)
#### Post date: [21 Gennaio 2020, 6:37am UTC](https://meta.discourse.org/t/backup-discourse-in-do-droplet-to-nas-device/139253/9 "2020-01-21T06:37:56Z")

</div>

Grazie Mariano  
Ho appena riavviato il server con un ciclo di alimentazione, ma ricevo ancora:

> Permesso negato (publickey).  
> rsync: connessione chiusa inaspettatamente (0 byte ricevuti finora) [Receiver]  
> rsync error: errore inspiegabile (codice 255) in io.c(235) [Receiver=3.1.3]

Senza dubbio il problema è da parte mia, probabilmente sto tentando di accedere con l’utente sbagliato o qualcosa del genere. Ho provato ad accedere da ReadyNAS utilizzando il nome che ho associato alla chiave pubblica quando l’ho aggiunta a Digital Ocean, nonché ‘root’. Nessuno dei due sembra funzionare.

---

<div class="post-metadata">

### Author: ![marianord](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/marianord/32/90502_2.png) [@marianord](https://meta.discourse.org/u/marianord)
#### Post date: [21 Gennaio 2020, 4:03pm UTC](https://meta.discourse.org/t/backup-discourse-in-do-droplet-to-nas-device/139253/10 "2020-01-21T16:03:23Z")

</div>

Hai già effettuato l’accesso al server con una chiave? Come quando hai installato Discourse o ricostruito l’applicazione?

Potrebbe essere (anche se non dovrebbe) che l’SSH sul server abbia l’autenticazione pubblica disabilitata, o forse il NAS sta usando la chiave sbagliata per effettuare l’accesso.

Ricorda di modificare il nome e il percorso della chiave corretta in questa parte del comando `"ssh -i ~/.ssh/id-rsa"`

---

<div class="post-metadata">

### Author: ![Paul\_King](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/paul_king/32/165426_2.png) [@Paul\_King](https://meta.discourse.org/u/Paul_King)
#### Post date: [22 Gennaio 2020, 6:02am UTC](https://meta.discourse.org/t/backup-discourse-in-do-droplet-to-nas-device/139253/11 "2020-01-22T06:02:34Z")

</div>

\*\*\* MODIFICA \*\*\*  
Grazie Mariano. Alla fine è riuscito a funzionare.

In sintesi, per chiunque altro stia cercando di farlo;

1. Abilita SSH su ReadyNAS [ReadyNAS OS 6: SSH access support and configuration guides - NETGEAR Support](https://kb.netgear.com/30068/ReadyNAS-OS-6-SSH-access-support-and-configuration-guides)

2. Usa PuTTY per accedere al server Digital Ocean e digita

> nano /root/.ssh/authorized\_keys

1. Nell’editor, incolla il testo della chiave pubblica utilizzato da ReadyNAS, aggiungendolo alla fine del file /root/.ssh/authorized\_keys (fai attenzione a non sovrascrivere eventuali chiavi già presenti).

2. Nelle impostazioni della finestra di dialogo di backup di ReadyNAS, ho utilizzato::

Nome: Backup tramite Rsync su SSH remoto (selezione dal menu a tendina)  
Host: [mydomain.com](http://mydomain.com) (o indirizzo IP del server)  
Porta: 22  
Percorso: /var/discourse/shared/standalone/backups/default  
Login: root

(Si noti che, se hai seguito correttamente le istruzioni per configurare ReadyNAS per l’accesso SSH, nessuna passphrase SSH sarà associata alla coppia di chiavi pubblica/privata SSH di ReadyNAS. Questo è piuttosto importante, poiché la finestra di dialogo di backup di ReadyNAS non prevede una passphrase)

All’inizio questo processo non ha funzionato completamente per me: utilizzando il pulsante ‘Test’ nella finestra di dialogo di backup di ReadyNAS con queste impostazioni, la connessione è avvenuta con successo, ma l’avvio del backup ha generato l’errore ‘Spazio su disco superato (122)’.  
Tuttavia, dopo un paio d’ore, senza alcun intervento evidente da parte mia, quando il processo di backup si è avviato automaticamente all’ora prestabilita, questa volta ha funzionato correttamente.

È possibile che i miei precedenti tentativi di stabilire una connessione e di eseguire test con impostazioni diverse avessero avuto qualche effetto residuo che ostacolava il processo, oppure che il fatto di essere contemporaneamente connesso al server dal mio PC come root tramite PuTTY e come root tramite FileZilla (entrambi utilizzando la chiave predefinita per root) e poi tentare di accedere come root tramite l’utilità di backup del dispositivo ReadyNAS (utilizzando la chiave pubblica di ReadyNAS aggiunta a root) fosse problematico.

---

<div class="post-metadata">

### Author: ![system](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/system/32/443519_2.png) [@system](https://meta.discourse.org/u/system)
#### Post date: [5 Dicembre 2023, 3:50pm UTC](https://meta.discourse.org/t/backup-discourse-in-do-droplet-to-nas-device/139253/12 "2023-12-05T15:50:57Z")

</div>



---

<div class="post-metadata">

### Author: ![nat](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/nat/32/235063_2.png) [@nat](https://meta.discourse.org/u/nat)
#### Post date: [6 Dicembre 2023, 1:37am UTC](https://meta.discourse.org/t/backup-discourse-in-do-droplet-to-nas-device/139253/13 "2023-12-06T01:37:51Z")

</div>


