Gestione Twinbox/Singlebox
Da DexWiki.
Download ISO CD-Live
E' possibile trovare qui tutte le informazioni per il download dell'immagine ISO del CD-Live per Twinbox/Singlebox.
Comunicazioni, bug fixing, richiami
DX.B9 hardware compatibility
Rilasciata la versione 2.2.6-DXB9 dell'ISO del CD-Live per Twinbox: e' stato aggiunto il supporto per dischi SATA e per la scheda di rete aggiuntiva D-Link DGE 530-T, necessario per la compatibilita' con l'hardware delle nuove Twinbox e Singlebox Core2 Duo codificata come DX.B9
"Too many open files" durante il backup
- Abbiamo riscontrato la possibilita' che su versioni precedenti alla 2.2.8 di Dexgate, durante il backup notturno del database e dei messaggi vengano aperti un numero di files superiori rispetto al default di sistema, e si verifichi l'eccezione
64690657 2008-02-21 03:01:06,872 [http80-Processor27] WARN it.tradesoft.tegate.managers.rmi.BackupManager.BackupManagerImpl Error while doing a system backup
java.io.FileNotFoundException: blob/comm_big_attachments_v2/36/12336-1-data.blob (Too many open files)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:106)
at it.tradesoft.apputil.misc.ZipUtil.add2Zip(SourceFile:69)
at it.tradesoft.apputil.misc.ZipUtil.a(SourceFile:54)
at it.tradesoft.apputil.misc.ZipUtil.a(SourceFile:51)
...
Per ovviare a tale problema, sulle nuove ISO abbiamo modificato il file /opt/Dexgate/start.sh aggiungendo le due righe
ulimit -n 16384 log "Setting ulimit -n `ulimit -n`"
subito prima dell'ultima riga, ottenendo il seguente file:
#!/bin/sh . /dexgate/config.sh . /dexgate/mem_functions.sh . /dexgate/wrapper_functions.sh $LDCONFIG cd $HDMOUNTPOINT/Dexgate /dexgate/start_prepare.sh recreate_wrapper_conf ulimit -n 16384 log "Setting ulimit -n `ulimit -n`" ./wrapped-dexgate start
La modifica al file start.sh puo' esser effettuata su installazioni con versioni precedenti di Dexgate, avendo l'accortezza di effettuare subito dopo un backup della configurazione di sistema con i comandi:
backup_system_config.sh copy_sys_backup_to_SDCard.sh
e riavviando Dexgate.
Procedure
Installazione
L'installazione di Dexgate su una Twinbox nuova richiede semplicemente il boot della macchina con il LiveCD per Twinbox presente all'interno del lettore CD. Dopo il boot il sistema effetua il controllo della presenza e dello stato di Hard Disk e SD Card, eventualmente chiede conferma prima di creare le tabelle delle partizioni e formattarle, quindi installa l'applicazione Dexgate sull'hard disk e richiede all'utente la configurazione dei parametri di rete ed il prefisso telefonico locale. A questo punto l'installazione e' terminata, fare riferimento alla guida per l'installatore per effettuare le necessarie configurazioni da interfaccia web e nei files .properties
Update
Per aggiornare una Twinbox e' sufficiente riavviarla dopo aver sostituito il LiveCD con quello della nuova versione. Dopo il boot la procedura di avvio rileva la presenza della nuova versione e chiede conferma prima di effettuare l'aggiornamento. Rispondendo di no, il sisitema si avvia con la vecchia versione di Dexgate, ma occorre prestare attenzione al fatto che anche ai prossimi avvii della macchina sara' presentata la stessa richiesta. Se invece si risponde di si, la procedura di update effettua preventivamente una copia dell'intera directory /opt/Dexgate , chiamandola /opt/Dexgate-x.y.z.bak (dove x.y.z indicano la versione), dopodiche' aggiorna tutti i files eseguibili e la parte di interfaccia web, quindi apporta puntualmente le modifiche necessarie ai files .properties preservando le modifiche effettuate dall'istallatore. Se in questa fase si dovesse verificare qualche errore viene ripristinata la vecchia versione precedentemente backuppata. Se l'aggiornamento termina senza problemi viene subito effettuato un nuovo backup di tutta la configurazione, in modo da avere su hard disk e su SD Card un backup prodotto con la nuova versione.
| | Per effettuare l'update di una Twinbox non dotata di monitor e tastiera fare riferimento alla sezione set_autoupdate |
Ripristino da SD Card
Avviando una macchina della Twinbox con hard disk "vergine" (su cui cioe' non sia mai stato installato Dexgate, oppure sia stato precedentemente installato, ma poi eliminato col comando format_hd.sh), con il LiveCD nel lettore CD ed una SD Card contenente i files di backup di Dexgate, si avvia una procedura di installazione di Dexgate e ripristino di tutta la configurazione, sia di sistema operativo (utenti e password, impostazioni di rete, files di sistema personalizzati) che dell'applicazione Dexgate (files .properties , file di licenza, database e messaggi), che in pochi minuti ed in maniera completamente automatica rende la nuova macchina operativa. Come descritto anche nella procedura di installazione, un presequisito necessario affinche' questa procedura venga avviata e' che sull'hard disk della macchina sostitutiva non sia gia' installato Dexgate.
Informazioni generali
Backup automatico
Sulle Twinbox e' previsto un backup automatico su hard disk e su SD Card della configurazione di sistema e dell'applicazione Dexgate. Le impostazioni di default schedulano tale backup alle 03:00, ma e' possibile modificare tale impostazione editando il file /etc/crontab
Sono previsti tre livelli di backup dell'applicazione Dexgate:
- large (contiene tutto il database)
- medium (contiene la il database senza i log delle comunicazioni)
- small (contiene il database senza i log della comunicazioni e senza i blob, salvo gli stream utilizzati in IVR, segreterie e musica di attesa).
Lo script fa prima un backup large, poi controlla se la sua dimensione supera l'85% di meta' della capacita' della SD Card. Se si' ne mantiene una copia sull'hard disk aggiungendo il suffisso .large al file, poi effettua un backup medium. Se anche questo eccede la dimensione massima prova con il backup small. La procedura si ferma appena ottiene un file di backup di dimensione sufficientemente piccola, e scrive l'esito dell'operazione nel file /opt/Dexgate/backup.sensor, utilizzato dal sistema di monitor ed alert di DexgateMicro.
SD Card
Per prevenire problemi legati all'estrazione della SD Card durante il funzionamento, dopo il boot il filesystem della SD viene disabilitato (umount), e gli script di copia dei backup su SD provvedono ad abilitarlo, copiare i files e disabilitarlo di nuovo. Per interventi sui files della SD Card occorre quindi effettuarne il mount manualemte, con lo script mount_sdcard.sh ed al termine delle operazioni, l'umount con lo script umount_sdcard.sh
File System
I file system sulle Twinbox sono cosi' organizzati:
- /opt : hard disk
- /sdcard : SD Card, normalmente non montata, viene montata solo quando necessario e poi subito smontata
- /KNOPPIX : CD-Rom
- /ramdisk : disco virtuale in memoria
- /UNIONFS : e' il file system che "mergia" CD-Rom e ramdisk, rendendo virtualmente read/write il CD-Rom. Tutte le modifiche effettuate su /UNIONFS sono volatili, vengono perse al reboot.
NOTA: quasi tutte le directory in / (/bin /boot /dexgate /etc /home /lib /opt /root /sbin /usr /var /vmlinuz) sono dei link alle corrispondenti directory in /UNIONFS . Questo rende possibile modificare files in quasi tutte le directory del file system, ma tali modifiche sono volatili: al reboot vengono perse. Solo la directory /opt e' montata su una partizione dell'hard disk, quindi le modifiche apportate in /opt saranno disponibili anche dopo un reboot. Le directory /opt/persistent e /opt/tftpboot , oltre ai files di sistema specificati in /dexgate/backup_config.sh, sono backuppate quotidianamente su SD-Card: in questo modo in caso di guasto e ripristino da SD-Card sulla seconda macchina, tali directory vengono ripopolate con il contenuto originario.
Nuovi servizi
- Dalla versione 2.0 e' presente la directory /opt/persistent che viene backuppata su SD Card
- Dalla versione 2.1 e' attivo un tftp server, la cui root directory e' /opt/tftpboot
- Dalla versione 2.2.8 e' attivo un snmp server, i cui files di configurazione sono in /etc/nsmp
- Dalla versione 2.2.8 e' attivabile un server ldap per la replica locale di un archivio remoto. Per avviarlo occore scommentare le righe relative in service_manages.sh e configurare opportunamente i files in /etc/ldap
Console di amministrazione per utente remote
La console di amministrazione permette anche ad un utente non esperto di linux di effettuare delle operazioni sulla Twinbox. Principalmente e' utilizzata per far si che il cliente, guidato telefonicamente, possa attivare una sessione di assistenza remota che ci permette di intervenire da remoto per esigenze di manutenzione/configurazione.
Connessione alla console di amministrazione
Per connettersi alla console di amministrazione utilizzare un client SSH (su linux il comando e' gia' presente, se invece ci si connette da una macchina Windows occorrera' Putty o un altro emulatore di terminale che supporti il protocollo SSH). Per l'accesso usare le seguenti credenziali:
username: remote password: remote
Una volta effettuata la connessione si aprira' un menu testuale da cui sara' possibile selezionare l'operazione da eseguire:
Dexgate TwinBox consolle is starting... +----------------------------------------------------------------------------+ DEXGATE 2.3.3 - CD LIVE 2.3.3-build-6 - Interfaccia di amministrazione +----------------------------------------------------------------------------+ | | | 1: Mostra stato Dexgate | | 2: Avvia Dexgate | | 3: Arresta Dexgate | | 4: Configura rete | | 5: Configura prefisso locale | | 6: Configura l'orologio di sistema | | 7: Configura Time server (NTPD) | | 8: Esegui backup su SD Card della configurazione di sistema e di Dexgate | | 9: Visualizza dexgate.log (ultime 1000 linee) | | 10: (revinetd) Configura server per l'assistenza remota | | 11: (revinetd) Attiva assistenza remota | | 12: (revinetd) Termina assistenza remota | | 13: (ssh) Configura server per l'assistenza remota | | 14: (ssh) Attiva assistenza remota | | 15: (ssh) Termina assistenza remota | | | | 0: Esci | | | +----------------------------------------------------------------------------+ Selezionare un comando:
Comandi
1: Mostra stato Dexgate
Permette di sapere se Dexgate e' in esecuzione (e da quanti giorni lo e') oppure no.
2: Avvia Dexgate
Avvia l'applicazione Dexgate.
3: Arresta Dexgate
Stoppa l'applicazione Dexgate.
4: Configura rete
Permette di modificare la configurazione di rete della Twinbox (indirizzo IP, netmask, indirizzo di broadcast, default gateway, DNS). NOTA: se Dexgate e' in esecuzione, questo comando richiede prima l'autorizzazione allo stop dell'applicazione, e solo in caso di risposta affermativa permette la modifica della configurazione di rete. Al termine NON e' previsto il riavvio automatico di Dexgate, che dovra' quindi essere avviato manualmente con il comando 1.
5: Configura prefisso locale
Consente di impostare il prefisso telefonico locale della localita' dove e' installata la Twinbox, che sara' utilizzato da Dexgate per distinguere tra chiamate urbane ed interurbane.
6: Configura l'orologio di sistema
Permette di inserire manualmente la data e l'ora corrente.
7: Configura Time server (NTPD)
Con questo comando si puo' impostare la Twinbox per sincronizzarsi con un time server pubblico oppure no. NOTA: nel caso si volesse impostare un time server diverso da quelli preimpostati, occorre accedere in ssh come root ed editare il file
/etc/ntp.conf
nelle righe che iniziano con server. Al termine eseguire un backup della configurazione di sistema per rendere persistente la nuova configurazione:
backup_system_config.sh
8: Esegui backup su SD Card della configurazione di sistema e di Dexgate
Effettua il backup della configurazione di Dexgate e quello della configurazione del sistema operativo, quindi li copia entrambi sulla SD Card
9: Visualizza dexgate.log (ultime 1000 linee)
Dexgate dispone di un sistema di log altamente configurabile, utile per esigenze di debug. Con questo comando e' possibile visualizzare le ultime 1000 righe del file di log.
10: (revinetd) Configura server per l'assistenza remota
Richiede l'indirizzo ip del server dell'installatore verso cui pubblicare le porte SSH e HTTP. L'informazione viene poi backuppata in modo che non sia necessario reinserirla al successivo utilizzo.
11: (revinetd) Attiva assistenza remota
Attiva l'assistenza remota: pubblica le porte SSH (22) ed HTTP (80) verso il server per l'assistenza remota via revinetd precedentemente impostato.
12: (revinetd) Termina assistenza remota
Termina la sessione di assistenza remota via revinetd.
13: (ssh) Configura server per l'assistenza remota
Richiede l'indirizzo IP, la porta su cui SSH e' in ascolto sul server di assistenza remota e l'utente da utilizzare per la connessione SSH. Queste informazioni vengono poi backuppate affinche' non sia necessario reinserirle al successivo utilizzo.
14: (ssh) Attiva assistenza remota
Attiva l'assistenza remota: pubblica le porte SSH (22) ed HTTP (80) verso il server per l'assistenza remota via ssh precedentemente impostato.
15: (ssh) Termina assistenza remota
Termina la sessione di assistenza remota via ssh.
0: Esci
Esce dalla console di amministrazione.
Note sull'assistenza remota
I due meccanismi (revinetd e ssh) funzionano con strumenti diversi ma secondo lo stesso principio: l'installatore predispone presso la propria sede un server per l'assistenza remota. Tale server dovra' esser raggiungibile da internet almeno su alcune porte. Quando il cliente attiva l'assistenza remota fa si che la sua Twinbox si connetta al server dell'installatore. Il secondo step e' fatto dall'installatore, che si connette al proprio server di assistenza remota, sulle porte opportune, e si trova connesso alle porte 22 ed 80 della Twinbox del cliente.
Essendo una connessione in uscita dalla LAN del cliente, solitamente il suo firewall la fara' uscire senza necessita' di interventi ad hoc. Nel caso in cui sia anche le connessioni uscenti siano bloccate dal firewall sara' necessario richiedere l'intervento del sistemista del cliente affinche' intervenga sui propri dispositivi di sicurezza. In tal caso la soluzione piu' comoda e' farsi creare un account di VPN o aprire le porte 22 ed 80, forwardate sulla Twinbox (oppure altro porte, ad esempio la 10022 e la 10080, forwardate rispettivamente sulla 22 ed 80 della Twinbox). Per quest'ultima soluzione si raccomanda l'utilizzo di un'access list sul firewall del cliente, che consenta connessioni solo dall'indirizzo IP dell'installatore.
Nei successivi esempi, per semplicita', supponiamo che l'indirizzo IP del server di assistenza remota, sulla rete dell'installatore, abbia indirizzo IP 192.168.1.100
Configurazione ed utilizzo dell'assistenza remota via revinetd
revinetd e' un reverse port redirector: permette a Twinbox non raggiungibili da internet di pubblicare, solo quando necessario, le porte SSH e HTTP verso un server dell'installatore, in modo da consentire manutenzione da remoto senza la necessita' di operare sul firewall o sul router del cliente. L'installatore deve predisporre un proprio server (va bene un comune PC, anche vecchio, in quanto il carico di lavoro che dovra' effettuare e' irrisorio) con sistema operativo linux e l'applicazione revinetd, lanciata con con i seguenti parametri:
./revinetd -v -s -l <LOCAL_HTTP_PORT> -L <PUBLIC_HTTP_PORT> & ./revinetd -v -s -l <LOCAL_SSH_PORT> -L <PUBLIC_SSH_PORT> &
ad esempio:
./revinetd -v -s -l 1080 -L 1180 & ./revinetd -v -s -l 1022 -L 1122 &
A questo punto, se il cliente attiva l'assistenza remota, dovra' rispondere rispettivamente 1180 e 1122 alle richieste di porta HHTP e porta SSH. Una volta effettua la connessione da parte del cliente, l'installatore, dal suo PC potra' connettarsi alla parte web della twinbox digitando l'indirizzo privato del proprio server di assistenza, specificando come porta la 1080, ad esempio:
http://192.168.1.100:1080
e raggiungere in ssh la Twimbox del cliente connettendosi (da linux oppure da Windows con Putty o equivalenti) con il comando:
ssh -p 1022 root@192.168.1.100
Sul server si assistenza dovranno esser lanciate tante coppie di revinetd quante sono le assistenze remote che si intende poter tenere contemoraneamente aperte. Ciascuna istanza di revinet dovra' usare porte diverse, ed esempio:
./revinetd -v -s -l 1080 -L 1180 & ./revinetd -v -s -l 1022 -L 1122 & ./revinetd -v -s -l 2080 -L 2180 & ./revinetd -v -s -l 2022 -L 2122 & ./revinetd -v -s -l 3080 -L 3180 & ./revinetd -v -s -l 3022 -L 3122 &
permette di far connettere il cliente A alle porte 1180 e 1122, il cliente B alle porte 2180 e 2122 ed il cliente C alle porte 3180 e 3122, ed all'istallatore di raggiungere la Twimbox del cliente A connetendosi alle 1080 e 1022 del prorpio server di assistenza remota, quella del cliente B connettendosi alle 2080 e 2022 e a quella di C connettendosi alle pote 3080 e 3022. Per questa configurazione e' necessario che il firewall/router dell'installatore forwardi le porte pubbliche 1180, 1122, 2180, 2122, 3180 e 3122 all'indirizzo IP del server di assistenza remota.
Configurazione ed utilizzo dell'assistenza remota via ssh
Anche in questo caso il server che l'installatore dovra' metter su e render raggiungibile dall'esterno (da internet) puo' essere un vecchio PC, con installato linux e con il servizio SSH attivo. E' sufficiente che tale macchina sia raggiungibile su una sola porta: quella su cui sta in ascolto SSH, che di default e' la 22. Quando il cliente A attiva l'assistenza remota, gli sara' chiesto da parte dalla procedura di inserire la porta da utilizzare per l'HTTP e quella per l'SSH. Sara' l'installatore a comunicare i due numero di porta (es: 1080 e 1022). Se nel frattempo anche il cliente B dovesse attivare l'assistenza remota, sara' sufficiente comunicare a lui due porte diverse (es: 2080 e 2022). Quindi l'installatore sara' in grado di accedere all'interfaccia web del cliente A accedendo col proprio browser alla porta 1080 del proprio server di assistenza remota, ed alla shell della Twinbox accedendo con ssh (o Putty se l'installatore ha Windows sul proprio pc) alla porta 1022 del solito server di assistenza remota:
http://192.168.1.100:1080
e raggiungere in ssh la Twinbox del cliente connettendosi (da linux oppure da Windows con Putty o equivalenti) con il comando:
ssh -p 1022 root@192.168.1.100
Script di amministrazione
Tutti gli script per l'amministrazione delle Twinbox si trovano nella directory /dexgate e la loro documentazione e' contenuta anche in /dexgate/README.TXT per una consultazione off-line.
show_version.sh
Mostra la versione di Dexgate e del LiveCD.
backup_config.sh
Definisce i files da backuppare e quelli di cui usare la nuova versione (da CD) anziche' quella backuppata, a seguito di un update.
backup_Dexgate.sh
Effettua un backup del database e dei files di configurazione di DexgateMicro, ed e' eseguito automaticamente da crontab (di default alle 03:00). Per modificare l'ora o la frequenza del backup, modificare il file /etc/crontab Esistono tre livelli di backup: large (contiene tutto il database), medium (contiene il database senza i log delle comunicazioni) e small (contiene il database senza i log delle comunicazioni e senza i blob, salvo gli stream utilizzati in IVR, segreterie e musica di attesa). Lo script fa prima un backup large, poi controlla se la sua dimensione supera l'85% di meta' della capacita' della SD Card. Se si' ne mantiene una copia sull'hard disk aggiungendo il suffisso .large al file, poi effettua un backup medium. Se anche questo eccede la dimensione massima prova con il backup small. La procedura si ferma appena ottiene un file di backup di dimensione sufficientemente piccola, e scrive l'esito dell'operazione nel file /opt/Dexgate/backup.sensor, utilizzato dal sistema di monitor ed alert di DexgateMicro.
backup_system_config.sh
Crea un archivio contenente i files di configurazione del sistema (impostazioni di rete).
copy_dexgate_backup_to_SDCard.sh
Elimina tutti i backup di Dexgate presenti sulla SD Card tranne l'ultimo, quindi vi copia l'ultimo file di backup di Dexgate generato sull'hd.
copy_sys_backup_to_SDCard.sh
Elimina tutti i backup di sistema presenti sulla SD Card tranne l'ultimo, quindi vi copia l'ultimo file di backup di sistema generato sull'hd.
backup_all.sh
Lancia in sequenza gli script backup_Dexgate.sh, backup_system_config.sh, copy_dexgate_backup_to_SDCard.sh e copy_sys_backup_to_SDCard.sh. In pratica effettua e copia su SD Card sia il backup di sistema che quello di Dexgate.
network_manager.sh
Permette di vedere o cambiare la configurazione di rete della macchina. Lanciato senza parametri visualizza la configurazione attuale: indirizzo IP, netmask, broadcast, default gateway e DNS. Lanciato col parametro -m permette la modifica della configurazione, e al termine effettua un backup della nuova configurazione di sistema e lo copia su SD Card. Se si tenta di modificare la configurazione di rete mentre Dexgate e' in esecuzione, lo script avverte che e' necessario prima arrestare l'applicazione e chiede se lo si vuol fare o meno.
localprefix_manager.sh
Permette di impostare il prefisso telefonico locale. Tale prefisso sara' utilizzato da Dexgate durante la generazione di report sull'utilizzo del sistema, per distinguere le chiamate urbane dalle interurbane. Per rendere effettiva la modifica e' necessario stoppare e riavviare Dexgate.
time_manager.sh
Permette di consultare ed impostare l'ora di sistema. Lanciato senza parametri visualizza l'ora di sistema.
- Lanciato col parametro -m permette l'impostazione dell'ora di sistema, con cui poi aggiorna anche clock hardware.
- Lanciato col parametro -a sincronizza l'orologio di sistema (ed il clock hardware) con i time server definiti in /etc/openntpd/ntpd.conf.
- Lanciato col parametro -s sincronizza l'orologio di sistema (ed il clock hardware) con i time server definiti in /etc/openntpd/ntpd.conf ed avvia il time server interno (NTPD). Per specificare quali server ntp esterni utilizzare per la sincronizzazione dell'orologio, editare il file /etc/openntpd/ntpd.conf; al termine effettuare un backup di sistema o un backup_all.sh per rendere persistente la modifica.
NOTA: per poter effettuare la sincronizzazione con time server esterni e' necessario che sulla Twinbox siano correttamente configurati il Default Gateway ed il DNS, e che eventuali firewall non impediscano la connessione alla porta 123 di server esterni.
remote_manager.sh
Permette di impostare l'indirizzo IP del server per l'assistenza remota. Lanciato senza parametri visualizza l'indirizzo IP attualmente configurato, mentre lanciato col parametro -m permette la modifica della configurazione, e al termine effettua un backup della nuova configurazione di sistema e lo copia su SD Card.
mount_sdcard.sh
effettua il mount sicuro del file system della sdcard.
umount_sdcard.sh
effettua l'umount sicuro del file system della sdcard.
set_autoupdate.sh (dalla versione 2.2.8 di Dexgate)
Prende i parametri on e off, rispettivamente per la creazione/cancellazione del file AUTOUPDATE (in /opt). Se tale file e' presente al boot ed il sistema rileva che il CD ha una versione Dexgate piu' nuova rispetto a quella installata, l'aggiornamento viene eseguito senza bisogno di input da tastiera. Al termine del boot il file viene comunque rimosso, dunque se si programma un update su una macchina non dotata di monitor e tastiera, occorre connettersi in ssh come root e lanciare
set_autoupdate on
e poi riavviare la macchina col nuovo CD inserito. Ovviamente al termine dell'aggiornamento sara' opportuno verificare nel file /opt/log/dexgate-twinbox.log tutto cio' che e' avvenuto al reboot.
Aggiornando alla 2.2.8 una versione precedente, prima dell'aggiornamento non sara' disponibile lo script set_autoupdate.sh . In alternativa e' sufficiente dare il comando
touch /opt/AUTOUPDATE
prima di arrestare la twinbox e sostituire il CD.
derby.sh
Effettua la connessione al DBMS Derby e visualizza i comandi per connettersi al database di Dexgate e per visualizzare le tabelle. Nota: poiche' Derby e' monoutente, prima di effettuare la connessione al database occorre arrestare Dexgate.
format_hd.sh
ATTENZIONE - ELIMINA TUTTI I DATI PRESENTI SULL'HARD DISK. Elimina tutti i files dall'hard disk, senza comprometterne la tabella delle partizioni. Al successivo riavvio non sara' richiesta la formattazione dell'hard disk.
format_sd.sh
ATTENZIONE - ELIMINA TUTTI I DATI PRESENTI SULLA SD CARD. Elimina tutti i files dalla SD Card, senza comprometterne la tabella delle partizioni. Al successivo riavvio non sara' richiesta la formattazione della SD Card.
destroy_hd.sh
ATTENZIONE - ELIMINA TUTTI I DATI E LE PARTIZIONI PRESENTI SULL'HARD DISK. E' usato solo in fase di test per cancellare i dati sull'HD e far si che al successivo riavvio il sistema lo riconosca come nuovo e provveda alla creazione, formattazione e montaggio delle partizioni necessarie.
destroy_sd.sh
ATTENZIONE - ELIMINA TUTTI I DATI E LE PARTIZIONI PRESENTI SULLA SD CARD. E' usato solo in fase di test per cancellare i dati sulla SD CARD e far si che al successivo riavvio il sistema la riconosca come nuova e provveda alla creazione, formattazione e montaggio delle partizioni necessarie.
services_manager.sh
Consente di avviare/ stoppare / riavviare i servizi di rete in un momento successivo rispetto al boot, in modo da aver prima recuperato e ripristinato la configurazione di rete.
tcpdump_wrappers.sh
Utility per sniffare il traffico di rete ed effettuarne un dump in files analizzabili successivamente con Ethereal / Wireshark. I files vengono salvati in /opt/tcpdump, directory creata al primo utilizzo. Con i valori di default viene creato un nuovo file ogni ora. Per evitare di saturare lo spazio su disco, vengono mantenuti gli ultimi 48 files, ed e' interdetta la creazione di nuovi files se lo stato di riempimento dell'hard disk supera l'85%
export_phonebook.sh
Esporta la rubrica nel file di testo phonebook.txt, copiato poi in /opt/Dexgate/webapps/tegate , in modo da esser consultabile via web all'url http://192.168.0.1/tegate/phonebook.txt (dove 192.168.0.1 va sostituito con l'indirizzo IP di Dexgate).
| | Durante l'esecuzione questo script stoppa Dexgate ed al termine lo riavvia. |
| Questo script e' provvisorio, e non e' compatibile con import_phonebook.sh . Le operazioni di import/export della rubrica saranno quanto prima integrate nell'interfaccia web di Dexgate. |
import_phonebook.sh (Disponibile dalla versione 2.2.8)
Importa la rubrica da un file CSV al database di Dexgate. E' fornito anche il file CSV di esempio import_honebook.example.CSV con i campi e l'ordine giusto. Per i campi vuoti non va messo nulla, resteranno delle virgole in fila una dietro l'atra. Come separatore di campo e' usata la virgola, mentre tutti i campi sono delimitati da doppi apici. Utilizzo: dopo aver preparato il file CSV secondo l'esempio, ed averlo copiato sulla twinbox, e' sufficiente lanciare lo script import_phonebook.sh. Lo script chede qual'e' il file da importare, il login name di un utente (per importare la sua rubrica privata. Lasciando vuoto il login name (dando subito invio) si importano i record nella rubrica pubblica). Infine chiede il default prefix per le chiamate in uscita (solitamente 0), in modo da appenderlo in testa ai numeri di telefono che vai ad importare. Poiche' lo script modifica il database, e' opportuno effettuare prima un backup, utile se qualcosa dovesse andare storto. Inoltre, essendo uno script esterno che accede a Derby, e' necessario stoppare Dexgate a causa della natura "mono utente" di Derby.
| Questo script e' provvisorio, e non e' compatibile con export_phonebook.sh . Le operazioni di import/export della rubrica saranno quanto prima integrate nell'interfaccia web di Dexgate. |
tftpboot_unpack.sh
Utilizzato durante l'installazione e gli aggiornamenti, e' tuttavia possibile eseguirlo manualmente per scompattare l'archivio dei firmware dei dispositivi presente sul CD nella directory di lavoro del servizio tftp. Lanciato senza parametri chiede conferma prima di sovrascrivere eventuali sottodirectory esistenti. Lanciato col parametro -q copia solo le sottodirectory che non esistono sul sistema installato, bypassando gli altri. Lanciato col parametro -f sovrascrive tutte le sottodirectory esistenti senza chiedere conferma. Nota: in fase di installazione ed aggiornamenti lo script e' eseguito col parametro -q per non richiedere l'interazione dell'installatore. Volendo forzare la sovrascrittura di tutti i firmware si puo' eseguire manualmente lo script col parametro -f
streams_unpack.sh
Utilizzato durante gli aggiornamenti (solo per le versioni 2.3.0 e successive), e' tuttavia possibile eseguirlo manualmente per scompattare l'archivio degli audio streams presente sul CD nella directory Dexgate/streams in modo che al successivo avvio di Dexgate vengano caricati nel database. Lanciato senza parametri chiede conferma prima di sovrascrivere stream preesistenti. Lanciato col parametro -q copia solo gli stream che non esistono sul sistema installato, bypassando gli altri. Lanciato col parametro -f sovrascrive tutti gli streams esistenti senza chiedere conferma. Nota: in fase di installazione ed aggiornamrnti lo script e' eseguito col parametro -q per non richiedere l'interazione dell'installatore. Volendo forzare la sovrascrittura di tutti gli streams si puo' eseguire manualmente lo script col parametro -f
/opt/persistent/post_boot.sh
Se esiste ed ha permessi di esecuzione, lo script /opt/persistent/post_boot.sh viene eseguito al termine del boot della Twinbox, prima dell'avvio di Dexgate. In tale script possono essere inseriti comandi custom che si vogliono eseguire ad ogni avvio della macchina.
Per editare il file si puo' utilizzare l'editor preferito tra emacs o vi, eseguento il comando:
emacs /opt/persistent/post_boot.sh
oppure:
vi /opt/persistent/post_boot.sh
Per renderlo eseguibile il comando e':
chmod 755 /opt/persistent/post_boot.sh
Script di sistema e librerie di funzioni ad uso interno
dexgate.sh
E' lo script eseguito automaticamente al boot. Effettua una serie di controlli ed avvia le procedure idonee per la situazione in cui la macchina si trova relativamente alla presenza di DexgateMicro installato o meno, di backup sulla SD Card, di versioni di DexgateMicro sul CD piu' nuove di quella su HD.
config.sh
Contiene la definizione di variabili usate dagli altri script.
restore_Dexgate.sh
Viene eseguito automaticamente all'avvio se il sistema rileva l'assenza di Dexgate su HD (e quindi lo installa) e la presenza di un backup di Dexgate sulla SD Card. Avvia DexgateMicro, effettua il ripristino del database e dei files di configurazione di Dexgate. Al termine arresta DexgateMicro. Può esser lanciato manualmente per un ripristino forzato. In tal caso è necessario che DexgateMicro non sia in esecuzione al momento del lancio di questo script.
sdcard_functions.sh
Contiene le funzioni relative all'utilizzo della SDCard, utilizzate dagli altri script.
mem_functions.sh
Contiene delle funzioni per il rilevamento della quantita' di memoria presente sulla macchina ed il dimensionamento automatico delle cache e dell'heap della Java Virtual Machine.
update_functions.sh
Contiene le funzioni relative alla gestione delle versioni di Dexgate, utilizzate dagli altri script.
start_prepare.sh
Eseguito ad ogni start, verifica se si e' appena effettuato il ripristino di un backup. In tal caso rimpiazza alcuni files che potrebbereo esser presenti in versione obsoleta all'interno del file di backup, con la versione aggiornata.
logrotate.sh
Versione del logrotate di Linux modificata per funzionare con i files di log memorizzati in /opt/log (directory persistente, in quanto su HD, mentre /var/log e' montata su Ram Disk).
update_properties_functions.sh
Contiene le funzioni per il rilevamento della versione installata e di quela presente su CD, e per l'aggiornamento incrementale automatico.
wrapper_functions.sh
Contiene il generatore per il file wrapper.conf, che contiene i parametri di lancio di Java e del wrapper.
storage_functions.sh
Contiene le funzioni per il rilevamento dei dispositivi di memoria di massa (Hard disk e SD Card).
bin_config.sh
Localizzazione degli eseguibili utilizzati dagli script in /dexgate
Impostazioni del BIOS
Per tutte le versioni di Twinbox, premendo Del durante la fase di boot si accede al Setup della macchina. In particolare, sulle Twinbox Core2 Duo, fornite con SD Card da 2GB, la presenza di quest'ultima nel lettore potrebbe impedire l'avvio e l'accesso al Setup finche' non venga disattivata l'impostazione "Legacy USB Support" nel Setup stesso. Quindi, se la macchina si blocca prima di iniziare la sequenza di boot da CD, sara' opportuno estrarre la SD Card, riavviare la macchina ed accedere al Setup, quindi verificare che siano settate correttamente le impostazioni relative all'USB. Di seguito sono elencate le modifiche da apportare al Setup delle varie versioni di Twinbox rispetto ai valori di default. In neretto sono evidenziate le impostazioni necessarie.
NOTA: Le Twinbox sono distribuite con il Setup gia' configurato. Potrebbe pero' esser necessario riconfigurarlo a seguito dell'esaurimento della batteria interna. Per questo motivo e' raccomandabile mantenere collegata alla rete elettrica anche la macchina "muletto", anche se spenta, in modo che sia l'energia elettrica di rete a mantenere alimentata la CMOS con i settaggi del BIOS, prolungando la durata della batteria.
DX.B5 e DX.B6 - 2005 (Intel Celeron, motherboard Biostar, Phoenix AWARDBIOS v6.00PG)
- Standard CMOS Features
- DATA e ORA
- Drive A: None
- Halt On: All, But Disk/Key
- Advanced BIOS Features
- First Boot Device: CDROM
- Second Boot Device: HDD-0
- Third Boot Device: Disabled
- Boot Other Device: Disabled
- Boot Up Floppy Seek: Disabled
- Boot Up NumLock Status: Off
- Typematic Rate Setting: Enabled
- Typematic Rate (Chars/Sec): 30
- Advanced Chipset Features
- AGP & P2P Bridge Control
- VGA Share Momory Size: 16M (su alcune versioni la quantita' minima di memoria e' 32M, settare tale valore)
- AGP & P2P Bridge Control
- Power Management Setup
- AC Loss Auto Restart: Former-Sts
- PC Health Status
- Shutdown Temperature: 70 C/158 F
DX.B7 - 2005 (Intel Pentium4, motherboard Biostar, Phoenix AWARDBIOS v6.00PG)
- Standard CMOS Features
- DATA e ORA
- Drive A: None
- Halt On: All, But Disk/Key
- Advanced BIOS Features
- Boot Seq & Floppy Setup
- First Boot Device: CDROM
- Second Boot Device: Hard Disk
- Third Boot Device: Disabled
- Boot Other Device: Disabled
- Boot Up Floppy Seek: Disabled
- Boot Up NumLock Status: Off
- Typematic Rate Setting: Enabled
- Typematic Rate (Chars/Sec): 30
- Full Screen LOGO Show: Disabled
- Boot Seq & Floppy Setup
- Advanced Chipset Features
- AGP & P2P Bridge Control
- VGA Share Momory Size: 16M (su alcune versioni la quantita' minima di memoria e' 32M, settare tale valore)
- AGP & P2P Bridge Control
- Power Management Setup
- AC Loss Auto Restart: Former-Sts
- PC Health Status
- CPU SMART FAN Control By: SMART
- Shutdown Temperature: 80 C/176 F
DX.B8 - 2006 (Intel Core2 Duo, motherboard ASUS P5LD2-VM ACPI BIOS Revision 1102, v02.59 (C)Copyright 1985-2006, American Megatrend, Inc.)
- Main
- DATA e ORA
- Legacy Diskette A: Disabled
- IDE Configuration
- Configure SATA as: Standard IDE
- Onboard IDE Operate Mode: Enhanced Mode
- Combined Mode Option: S-ATA
- Advanced
- USB Configuration
- Legacy USB Support: Disabled
- USB Configuration
- Power
- APM Configuration
- Restore on AC Power Loss: Last State
- APM Configuration
- Boot
- Boot Device Priority
- 1st Boot Device: CDROM (o DVD)
- 2nd Boot Device: Hard Drive
- 3rd Boot Device: Disabled
- Boot Setings Configuration
- Full Screen Logo: Disabled
- Bootup Num-Lock: Off
- Wait For 'F1' If Error: Disabled
- Boot Device Priority
DX.B9 - luglio 2007 (Intel Core2 Duo, motherboard ASUS P5K-VM ACPI BIOS Revision 0304, v02.58 (C)Copyright 1985-2007, American Megatrend, Inc.)
| Nota: verificare che sulla macchina sia presente la scheda di rete aggiuntiva D-Link DGE-530T |
- Main
- DATA e ORA
- Legacy Diskette A: Disabled
- IDE Configuration
- SATA Configuration: Enhanced
- Configure SATA: AHCI
- Advanced
- USB Configuration
- Legacy USB Support: Disabled
- Onboard Devices Configuration
- Marvell GigaBit LAN: Disabled
- USB Configuration
- Power
- APM Configuration
- Restore on AC Power Loss: Last State
- APM Configuration
- Boot
- Boot Device Priority
- 1st Boot Device: CDROM (o DVD)
- 2nd Boot Device: HDD
- 3rd Boot Device: Disabled
- Boot Setings Configuration
- Full Screen Logo: Disabled
- Bootup Num-Lock: Off
- Boot Device Priority
DX.B9 - marzo 2009 (Intel Core2 Duo, motherboard MSI G31M3F - A7528ICX V1.33C 102208 - CMOS Setup Utility - Copyright (C) 1985-2005, American Megatrends, Inc.)
Impostazioni da modificare rispetto agli Optimized Defaults. In neretto i settaggi essenziali.
- Standard CMOS Features
- Date
- Time
- Floppy Drive A: Not Installed
- Advanced BIOS Features
- Boot Up Num-Lock LED: Off
- Boot Sequence
- 1st Boot Device: CD/DVD
- 2nd Boot Device: SATA HD
- 3rd Boot Device: Disabled
- 4th Boot Device: Disabled
- 5th Boot Device: Disabled
- 6th Boot Device: Disabled
- 7th Boot Device: Disabled
- Boot from Other Device: No
- Integrated Peripherals
- HD Audio Controller: Disabled
- Power Management Setup
- Restore On AC Power Loss: Last State
- Wake Up Event Setup
- Wake Up Event By: BIOS
- Resume From S3 By USB Device: Disabled
- Resume From S3 By PS/2 Keyboard: Disabled
- Resume From S3 By PS/2 Mouse: Disabled
- Resume By PCI Device: Disabled
- Resume By PCI-E: Disabled
- Resume By RTC Alarm: Disabled


