Project

General

Profile

BaculaBackup » History » Version 23

Amministratore Truelite, 07/09/2010 07:31 PM

1 5 Amministratore Truelite
[[TracNav(TOC)]]
2 1 Amministratore Truelite
= Backup con Bacula =
3 1 Amministratore Truelite
4 2 Amministratore Truelite
[http://www.bacula.org/ Bacula] è un potente sistema che consente la centralizzazione dei backup di varie macchine all'interno di una rete, e la gestione automatica degli stessi.
5 1 Amministratore Truelite
6 1 Amministratore Truelite
L'architettura di bacula è composta da tre componenti principali:
7 1 Amministratore Truelite
8 2 Amministratore Truelite
 * il ''File Daemon'', che va installato sulle macchine di cui si vuole effettuare il backup ed ha il compito di gestire i file di cui deve essere eseguito il backup.
9 14 Amministratore Truelite
 * lo ''Storage Daemon'' che va installato sulla macchina su cui è presente il dispositivo di registrazione dei dati (nastro, disco o quant'altro).
10 14 Amministratore Truelite
 * il ''Director'' che va installato su una macchina qualsiasi (ma in genere si usa quella dove sta il dispositivo di backup) e che è il servizio che controlla tutti gli altri e gestisce i backup.
11 1 Amministratore Truelite
12 14 Amministratore Truelite
Ciascuno di questi tre servizi ha un suo script di avvio ed un suo file di configurazione, come illustrato nella seguente tabella:
13 1 Amministratore Truelite
14 1 Amministratore Truelite
||Servizio||File di configurazione||Script di avvio||
15 3 Amministratore Truelite
||File Daemon||{{{bacula-fd.conf}}}||bacula-fd||
16 3 Amministratore Truelite
||Storage Daemon||{{{bacula-sd.conf}}}||bacula-sd||
17 3 Amministratore Truelite
||Director||{{{bacula-dir.conf}}}||bacula-director||
18 1 Amministratore Truelite
19 22 Amministratore Truelite
a questi si aggiuinge poi la console di comando. 
20 22 Amministratore Truelite
21 22 Amministratore Truelite
== Installazione e configurazione ==
22 22 Amministratore Truelite
23 23 Amministratore Truelite
Tratteremo dell'installazione e della configurazione di base con Debian Lenny. Una delle caratteristiche di [http://www.bacula.org/ Bacula] è quella di salvare su un database il suo stato, mantenendo quello che viene chiamato dal programma stesso il ''catalogo''. Il programma supporta tre tipi di database, MySQL, PostgreSQL e SQLite. Dato che la versione ufficiale di Debian Lenny non aveva abilitato (per questioni di licenza con OpenSSL) il supporto per le connessioni cifrate, useremo la versione ottenuta da backports (la 5.0.2 al momento della ultima revisione di queste note) che usa GnuTLS. 
24 22 Amministratore Truelite
25 22 Amministratore Truelite
Per installare il necessario sul server di backup occorre anzitutto inserire la seguente riga in {{{/etc/apt/sources.list}}}:
26 22 Amministratore Truelite
{{{
27 22 Amministratore Truelite
deb http://www.backports.org/debian lenny-backports main contrib
28 22 Amministratore Truelite
}}}
29 22 Amministratore Truelite
e poi installare la versione per il database scelto con:
30 22 Amministratore Truelite
{{{
31 23 Amministratore Truelite
apt-get install bacula-director-sqlite3 bacula-sd bacula-fd
32 22 Amministratore Truelite
}}}
33 22 Amministratore Truelite
34 22 Amministratore Truelite
35 22 Amministratore Truelite
36 22 Amministratore Truelite
== Configurazione con SSL ==
37 22 Amministratore Truelite
38 22 Amministratore Truelite
Con la versione 1.38 (presente di default su Debian Etch), Bacula ha il supporto nativo per l'uso di SSL per il trasferimento dei dati, che però è stato disabilitato con Lenny per questioni di conflitto di licenza. In precedenza era necessario impostare gli opportuni tunnel SSL con {{{stunnel}}}, in questo caso la cosa si semplifica leggermente. In caso di presenza di un firewall occorre comunque ricordare che la struttura di Bacula prevede che il ''File Daemon'' deve poter contattare lo ''Storage Daemon'' ed occorrerà pertanto prevedere gli opportuni ''pin-holes'' per eventuali accessi da server dalla DMZ (si presuppone ovviamente che il server di backup sia nella rete interna).
39 22 Amministratore Truelite
40 22 Amministratore Truelite
Il primo passo è quello di procurarsi i certificati necessari, questi andranno anzitutto installati sul ''Director'' per quanto riguarda tutti i vari servizi: il ''Director'' stesso, che viene contattato dalla console, ed il ''File Daemon'', che viene contattato dai vari ''File Daemon''. Occorre allora anzitutto configurare l'accesso al ''Director'' definendo la relativa voce in {{{bacula-dir.conf}}}:
41 22 Amministratore Truelite
42 22 Amministratore Truelite
{{{
43 22 Amministratore Truelite
Director {                            # define myself
44 22 Amministratore Truelite
  Name = backup1-dir
45 22 Amministratore Truelite
  DIRport = 9101                # where we listen for UA connections
46 22 Amministratore Truelite
  QueryFile = "/etc/bacula/scripts/query.sql"
47 22 Amministratore Truelite
  WorkingDirectory = "/var/lib/bacula"
48 22 Amministratore Truelite
  PidDirectory = "/var/run/bacula"
49 22 Amministratore Truelite
  Maximum Concurrent Jobs = 1
50 1 Amministratore Truelite
  Password = "xxx"         # Console password (lunga e complicata)
51 1 Amministratore Truelite
  Messages = Daemon
52 22 Amministratore Truelite
  TLS Enable = yes
53 1 Amministratore Truelite
  TLS Require = yes
54 23 Amministratore Truelite
  TLS CA Certificate File = /etc/ssl/certs/Truelite-cacert.pem
55 23 Amministratore Truelite
  TLS Certificate = /etc/ssl/certs/bacula.fi.trl-cert.pem
56 23 Amministratore Truelite
  TLS Key = /etc/ssl/private/bacula.fi.trl-key.pem
57 1 Amministratore Truelite
  TLS Verify Peer = yes
58 23 Amministratore Truelite
  TLS DH File = /etc/bacula/dh1024.pem
59 1 Amministratore Truelite
}
60 1 Amministratore Truelite
}}}
61 23 Amministratore Truelite
62 23 Amministratore Truelite
in questo caso le varie direttive servono a dichiarare chiave e certificato SSL usato dal ''Director'', ed indicare la CA con cui vengono verificati le connessioni dai client verso il ''Director''. Devono poi essere configurate le modalità di accesso SSL client del  ''Director'' verso gli altri servizi indicando con quali certificato e chiave ci si vuole collegare ad essi (nel caso useremo sempre gli stessi). In particolare per le varie voci rispetto alla configurazione installata di default si dovranno inserire delle configurazioni del tipo:
63 23 Amministratore Truelite
64 23 Amministratore Truelite
{{{
65 23 Amministratore Truelite
Client {
66 23 Amministratore Truelite
...
67 23 Amministratore Truelite
  TLS Enable = yes
68 23 Amministratore Truelite
  TLS Require = yes
69 23 Amministratore Truelite
  TLS CA Certificate File = /etc/ssl/certs/Truelite-cacert.pem
70 23 Amministratore Truelite
  TLS Certificate = /etc/ssl/certs/bacula.fi.trl-cert.pem
71 23 Amministratore Truelite
  TLS Key = /etc/ssl/private/bacula.fi.trl-key.pem
72 23 Amministratore Truelite
}
73 23 Amministratore Truelite
...
74 23 Amministratore Truelite
...
75 23 Amministratore Truelite
Storage {
76 23 Amministratore Truelite
...
77 23 Amministratore Truelite
  TLS Enable = yes
78 23 Amministratore Truelite
  TLS Require = yes
79 23 Amministratore Truelite
  TLS CA Certificate File = /etc/ssl/certs/Truelite-cacert.pem
80 23 Amministratore Truelite
  TLS Certificate = /etc/ssl/certs/bacula.fi.trl-cert.pem
81 23 Amministratore Truelite
  TLS Key = /etc/ssl/private/bacula.fi.trl-key.pem
82 23 Amministratore Truelite
}
83 23 Amministratore Truelite
}}}
84 23 Amministratore Truelite
per ciascuna istanza di un ''File Daemon'' ({{{Client}}}) o di uno ''Storage Daemon'' ({{{Storage}}}).
85 23 Amministratore Truelite
86 23 Amministratore Truelite
Una volta configurato il ''Director'' occorrerrà fare altrettanto per gli altri servizi, e sempre, qualora questo sia previsto (la cosa vale per il ''File Daemon'') per le due direzioni, quella in cui il singolo servizio può essere contattato e quella in cui il servizio contatta un altro servizio.  Si avranno pertanto in  {{{bacula-sd.conf}}}configurazioni del tipo:
87 23 Amministratore Truelite
{{{
88 23 Amministratore Truelite
Storage {
89 23 Amministratore Truelite
...
90 23 Amministratore Truelite
  TLS Enable = yes
91 23 Amministratore Truelite
  TLS Require = yes
92 23 Amministratore Truelite
  TLS CA Certificate File = /etc/ssl/certs/Truelite-cacert.pem
93 23 Amministratore Truelite
  TLS Certificate = /etc/ssl/certs/bacula.fi.trl-cert.pem
94 23 Amministratore Truelite
  TLS Key = /etc/ssl/private/bacula.fi.trl-key.pem
95 23 Amministratore Truelite
}
96 23 Amministratore Truelite
}}}
97 23 Amministratore Truelite
per definire il certificato usato per le connessioni allo ''Storage Daemon'', mentre per le connessioni effettuate verso l'esterno (in questo caso solo il ''Director'' per rispondere ad interrogazioni dalla console) si dovrà mettere qualcosa del tipo:
98 23 Amministratore Truelite
{{{
99 23 Amministratore Truelite
Director {
100 23 Amministratore Truelite
...
101 23 Amministratore Truelite
  TLS Enable = yes
102 23 Amministratore Truelite
  TLS Require = yes
103 23 Amministratore Truelite
  TLS CA Certificate File = /etc/ssl/certs/Truelite-cacert.pem
104 23 Amministratore Truelite
  TLS Certificate = /etc/ssl/certs/bacula.fi.trl-cert.pem
105 23 Amministratore Truelite
  TLS Key = /etc/ssl/private/bacula.fi.trl-key.pem
106 23 Amministratore Truelite
  TLS Verify Peer = yes
107 23 Amministratore Truelite
  TLS Allowed CN = "bacula.fi.trl"
108 23 Amministratore Truelite
}
109 23 Amministratore Truelite
}}}
110 23 Amministratore Truelite
dove si richiede anche la verifica del certificato e che questo abbia uno specifico Common Name. La stessa configurazione si ritroverà sostanzialmente identica anche in {{{bacula-fd.conf}}} (con ({{{FileDaemon}}}) al posto di ({{{Storage}}}).
111 23 Amministratore Truelite
112 22 Amministratore Truelite
113 22 Amministratore Truelite
114 11 Amministratore Truelite
== Uso dell'autochanger ==
115 1 Amministratore Truelite
116 11 Amministratore Truelite
Perché sia possibile utilizzare un dispositivo cambianastri (quello che in gergo viene chiamato ''Autochanger''), deve essere disponibile e funzionante lo script {{{/etc/bacula/scripts/mtx-changer}}}.
117 1 Amministratore Truelite
118 14 Amministratore Truelite
Normalmente i dispositivi cambianastri sono pilotati direttamente attraverso l'interfaccia SCSI, utilizzando il dispositivo generico (se avete solo il nastro SCSI questo sarà {{{/dev/sg0}}}, in generale va verificato). Per inviare i comandi viene usato un programma apposito, {{{mtx}}}, cui lo script installato di default si appoggia. Esistono però anche cambianastri pilotati con modalità diverse, nel qual caso occorrerà uno script dedicato, un esempio per un ''IBM Ultrium LTO 3581 L28'', che viene comandato via {{{telnet}}}, è allegato alla pagina.
119 1 Amministratore Truelite
120 11 Amministratore Truelite
Per poter utilizzare il cambianastri si deve anzitutto segnalarne la presenza nella sezione Device del file {{{bacula-sd.conf}}}, ed indicare il file di dispositivo da usare, un possibile esempio è il seguente:
121 1 Amministratore Truelite
{{{
122 1 Amministratore Truelite
Device {
123 1 Amministratore Truelite
  Name = DDS-4                        #
124 1 Amministratore Truelite
  Media Type = DDS-4
125 1 Amministratore Truelite
  Archive Device = /dev/nst0
126 1 Amministratore Truelite
  AutomaticMount = yes;               # when device opened, read it
127 1 Amministratore Truelite
  AlwaysOpen = yes;
128 1 Amministratore Truelite
  RemovableMedia = yes;
129 1 Amministratore Truelite
  RandomAccess = no;
130 1 Amministratore Truelite
  Changer Command = "/etc/bacula/scripts/mtx-changer %c %o %S %a %d"
131 1 Amministratore Truelite
  Changer Device = /dev/sg1
132 1 Amministratore Truelite
  AutoChanger = yes
133 1 Amministratore Truelite
  Alert Command = "sh -c 'tapeinfo -f %c |grep TapeAlert|cat'"
134 1 Amministratore Truelite
}
135 1 Amministratore Truelite
}}}
136 13 Amministratore Truelite
inoltre deve essere reso noto al ''Director'' che lo storage supporta l'autochanger; questo si fa con una analoga riga {{{AutoChanger = yes}}} nella sua configurazione; cioè si dovrà avere dentro {{{bacula-dir.conf}}} qualcosa del tipo:
137 10 Amministratore Truelite
{{{
138 10 Amministratore Truelite
Storage {
139 10 Amministratore Truelite
  Name = File
140 10 Amministratore Truelite
  Address = bacula.truelite.it   # N.B. Use a fully qualified name here
141 10 Amministratore Truelite
  SDPort = 9103
142 10 Amministratore Truelite
  Password = "xxxxxxx"
143 10 Amministratore Truelite
  Device = DDS-4
144 10 Amministratore Truelite
  Media Type = DDS-4
145 10 Amministratore Truelite
  Autochanger = yes
146 10 Amministratore Truelite
}
147 10 Amministratore Truelite
}}}
148 1 Amministratore Truelite
149 14 Amministratore Truelite
Fatto questo diventa possibile usare l'attributo {{{slot}}} nel comando {{{label}}} da console. Con questo diventa possibile etichettare i vari nastri dell'autochanger con una serie di comandi del tipo:
150 1 Amministratore Truelite
{{{
151 1 Amministratore Truelite
*label slot=5
152 1 Amministratore Truelite
Using default Catalog name=MyCatalog DB=bacula
153 1 Amministratore Truelite
Automatically selected Storage: File
154 1 Amministratore Truelite
Enter new Volume name: Volume005
155 1 Amministratore Truelite
Automatically selected Pool: Default
156 10 Amministratore Truelite
Connecting to Storage daemon File at bacula.truelite.it:9103 ...
157 1 Amministratore Truelite
Sending label command for Volume "Volume005" Slot 5 ...
158 1 Amministratore Truelite
3301 Issuing autochanger "loaded drive 0" command.
159 1 Amministratore Truelite
3302 Autochanger "loaded drive 0", result is Slot 4.
160 1 Amministratore Truelite
3303 Issuing autochanger "unload slot 4, drive 0" command.
161 1 Amministratore Truelite
3304 Issuing autochanger "load slot 5, drive 0" command.
162 1 Amministratore Truelite
3305 Autochanger "load slot 5, drive 0", status is OK.
163 1 Amministratore Truelite
block.c:264 Volume data error at 0:0! Wanted ID: "BB02", got "". Buffer discarded.
164 1 Amministratore Truelite
3000 OK label. Volume=Volume005 Device=/dev/nst0
165 1 Amministratore Truelite
Catalog record for Volume "Volume005", Slot 5  successfully created.
166 1 Amministratore Truelite
Requesting to mount DDS-4 ...
167 1 Amministratore Truelite
3001 Device /dev/nst0 is mounted with Volume "Volume005"
168 1 Amministratore Truelite
}}}
169 1 Amministratore Truelite
da ripetere per tutti i nastri disponibili. 
170 1 Amministratore Truelite
171 1 Amministratore Truelite
Una volta inizializzati i vari nastri si può rendere noto al ''Director'' la presenza dei vari nastri con il comando:
172 1 Amministratore Truelite
{{{
173 1 Amministratore Truelite
update slots scan
174 1 Amministratore Truelite
}}}
175 11 Amministratore Truelite
176 11 Amministratore Truelite
177 11 Amministratore Truelite
== Come gestire manualmente i nastri ==
178 11 Amministratore Truelite
179 11 Amministratore Truelite
Per la rimozione dei dati presenti sui nastri si devono seguire i seguenti passi:
180 11 Amministratore Truelite
181 15 Amministratore Truelite
 * rimuovere i dati dal catalogo con {{{purge}}} scegliendo il volume da cancellare.
182 15 Amministratore Truelite
 * inserire il nastro nel dispositivo, se si dispone dell'autochanger si può fare con:
183 15 Amministratore Truelite
{{{
184 15 Amministratore Truelite
/etc/bacula/scripts/mtx-changer /dev/sg1 load N
185 15 Amministratore Truelite
}}}
186 15 Amministratore Truelite
   dove N è il numero dello slot.
187 15 Amministratore Truelite
 * cancellarne il contenuto a mano con {{{btape test}}} o scrivendoci direttamente
188 13 Amministratore Truelite
 * usare {{{label}}} per modificarne l'etichetta
189 11 Amministratore Truelite
190 11 Amministratore Truelite
Se invece si è configurato correttamente il periodo di ritenzione dei dati, sarà ''Bacula'' che provvederà a cercare il primo nastro libero, posto che il periodo non sia eccessivo e lo spazio disponibile esaurito, 
191 11 Amministratore Truelite
192 11 Amministratore Truelite
Nel qual caso si potrà ridurre il periodo di ritenzione con il comando:
193 11 Amministratore Truelite
{{{
194 11 Amministratore Truelite
update volume=VolumeXXX VolRetention=ddd
195 11 Amministratore Truelite
}}}
196 11 Amministratore Truelite
si tenga presente che cambiare il perido di ritenzione direttamente dentro {{{bacula-dir.conf}}} non è sufficiente in quanto questi dati sono registrati all'interno del singolo volume e non cambiano fintanto che non se ne aggiorna il valore.
197 16 Amministratore Truelite
198 16 Amministratore Truelite
199 16 Amministratore Truelite
== Cosa fare quando si esaurisce lo spazio disponibile ==
200 16 Amministratore Truelite
201 16 Amministratore Truelite
La maggiore forza di [http://www.bacula.org/ Bacula] è quella, una volta configurato correttamente, di essere in grado di gestire tutta la procedura di backup in maniera automatica. In genere questo funziona correttamente senza nessun intervento manuale. L'incidente più comune che può capitare è che si esaurisca lo spazio (disco o nastro) disponibile per i backup, nel qual caso il comportamento di [http://www.bacula.org/ Bacula] è quello di bloccare i backup rispettando i termini del periodo di ritenzione dei dati impostato. 
202 16 Amministratore Truelite
203 16 Amministratore Truelite
Perciò se si desidera che i backup proseguano sovrascrivendo i vecchi dati occorrerà liberare lo spazio necessario. Questo dovrà essere fatto andando a rimuovere i dati più vecchi; per questo su può utilizzare il comando {{{purge}}}, ma occorrerà individuare opportunamente cosa rimuovere. Un esempio di utilizzo allora potrebbe essere il seguente; prima si potrà verificare lo stato dei volumi utilizzati con il comando:
204 17 Amministratore Truelite
{{{
205 17 Amministratore Truelite
*list volumes
206 17 Amministratore Truelite
Using default Catalog name=MyCatalog DB=bacula
207 17 Amministratore Truelite
Pool: Default
208 17 Amministratore Truelite
+---------+------------+-----------+-------------+----------+--------------+---------+------+-----------+-----------+---------------------+
209 17 Amministratore Truelite
| MediaId | VolumeName | VolStatus | VolBytes    | VolFiles | VolRetention | Recycle | Slot | InChanger | MediaType | LastWritten         |
210 17 Amministratore Truelite
+---------+------------+-----------+-------------+----------+--------------+---------+------+-----------+-----------+---------------------+
211 17 Amministratore Truelite
| 1       | Volume0013 | Full      | 13156318147 | 0        | 1814400      | 1       | 0    | 0         | File      | 2006-08-06 02:53:16 |
212 17 Amministratore Truelite
| 2       | Volume0014 | Full      | 15260956061 | 0        | 1814400      | 1       | 0    | 0         | File      | 2006-08-15 01:12:48 |
213 17 Amministratore Truelite
| 3       | Volume0015 | Full      | 10288088510 | 0        | 1814400      | 1       | 0    | 0         | File      | 2006-07-30 02:03:26 |
214 17 Amministratore Truelite
| 4       | Volume0016 | Full      | 28805889791 | 0        | 1814400      | 1       | 0    | 0         | File      | 2006-08-06 01:26:31 |
215 17 Amministratore Truelite
| 5       | Volume0017 | Full      | 14412428094 | 0        | 1814400      | 1       | 0    | 0         | File      | 2006-07-29 01:27:50 |
216 17 Amministratore Truelite
+---------+------------+-----------+-------------+----------+--------------+---------+------+-----------+-----------+---------------------+
217 17 Amministratore Truelite
}}}
218 17 Amministratore Truelite
dopo di che, considerato che i dati più vecchi si trovano sul Volume0017, se potrà cancellare il contenuto con:
219 17 Amministratore Truelite
{{{
220 17 Amministratore Truelite
* purge volume=Volume0017
221 17 Amministratore Truelite
222 18 Amministratore Truelite
This command is can be DANGEROUS!!!
223 16 Amministratore Truelite
224 16 Amministratore Truelite
It purges (deletes) all Files from a Job,
225 19 Amministratore Truelite
JobId, Client or Volume; or it purges (deletes)
226 19 Amministratore Truelite
all Jobs from a Client or Volume without regard
227 1 Amministratore Truelite
for retention periods. Normally you should use the
228 20 Amministratore Truelite
PRUNE command, which respects retention periods.
229 20 Amministratore Truelite
230 21 Amministratore Truelite
}}}
231 1 Amministratore Truelite
(il comando impiegherà un certo tempo per eseguire l'operazione), a questo punto si potrà verificare che il volume è diventato disponibile con:
232 21 Amministratore Truelite
{{{
233 21 Amministratore Truelite
*list volumes
234 21 Amministratore Truelite
Using default Catalog name=MyCatalog DB=bacula
235 21 Amministratore Truelite
Pool: Default
236 21 Amministratore Truelite
237 21 Amministratore Truelite
+---------+------------+-----------+-------------+----------+--------------+---------+------+-----------+-----------+---------------------+
238 21 Amministratore Truelite
| MediaId | VolumeName | VolStatus | VolBytes    | VolFiles | VolRetention | Recycle | Slot | InChanger | MediaType | LastWritten         |
239 21 Amministratore Truelite
+---------+------------+-----------+-------------+----------+--------------+---------+------+-----------+-----------+---------------------+
240 21 Amministratore Truelite
| 1       | Volume0013 | Full      | 13156318147 | 0        | 1814400      | 1       | 0    | 0         | File      | 2006-08-06 02:53:16 |
241 21 Amministratore Truelite
| 2       | Volume0014 | Full      | 15260956061 | 0        | 1814400      | 1       | 0    | 0         | File      | 2006-08-15 01:12:48 |
242 21 Amministratore Truelite
| 3       | Volume0015 | Full      | 10288088510 | 0        | 1814400      | 1       | 0    | 0         | File      | 2006-07-30 02:03:26 |
243 21 Amministratore Truelite
| 4       | Volume0016 | Full      | 28805889791 | 0        | 1814400      | 1       | 0    | 0         | File      | 2006-08-06 01:26:31 |
244 21 Amministratore Truelite
| 5       | Volume0017 | Purged    | 968063348   | 0        | 1814400      | 1       | 0    | 0         | File      | 2006-08-21 11:59:28 |
245 21 Amministratore Truelite
+---------+------------+-----------+-------------+----------+--------------+---------+------+-----------+-----------+---------------------+
246 21 Amministratore Truelite
}}}
247 1 Amministratore Truelite
248 21 Amministratore Truelite
249 22 Amministratore Truelite
== Configurazione Webacula ==
250 21 Amministratore Truelite
251 22 Amministratore Truelite
[http://webacula.sourceforge.net/ Webacula] è una interfaccia di gestione via Web di Bacula, basata su PHP e Zendframework, pertanto per installarla si sono preventivamente installati i seguenti pacchetti con:
252 21 Amministratore Truelite
{{{
253 22 Amministratore Truelite
apt-get install zendframework php5-gd
254 1 Amministratore Truelite
}}}