Vai ai contenuti

Vita Da Zazu

Pensieri, idee strampalate, accrocchi e pazzie

Thunderbird & androidCiao a tutti, in questa piccola guida, illustrerò come faccio a sincronizzare i contatti, il calendario e ovviamente le email tra Thunderbird e un telefono Android senza l’ausilio di nessun software proprietario, proprio per questo motivo la soluzione è valida su sistemi Windows, Linux e Mac.

In realtà la sincronia non avviene direttamente tra telefono e Thunderbird, ma tra Thunderbird e Gmail;
il necessario:

- account Gmail già configurato nel telefono;
- Mozilla Thunderbird già installato nel pc;
- alcune estensioni di Thunderbird.

Come primo passaggio andiamo ad installare in thunderbird (menù strumenti > componenti aggiuntivi) le seguenti estensioni:

- Lightning
- Provider per Google Calendar
- Zindus

estensioni

Una volta installati i componenti e riavviato il programma, ci troveremo davanti ad alcune novità: dato che abbiamo aggiunto Lightning la grafica di thunderbird apparirà arricchita delle funzionalità del calendario, per chi non lo sapesse si apre da una piccola icona calendario in alto a destra.

Una volta aperto il calendario, procediamo con l’aggiunta di quello Gmail.

  1. accediamo a Google calendar;
  2. dal simbolo a forma di ingranaggio accediamo alle impostazioni del calendario;
  3. ci spostiamo nella sezione “Calendari”
  4. qui clicchiamo sul nostro calendario da sincronizzare
  5. nella sezione “Indirizzo Calendario” facciamo clic sull’icona XML e copiamo l’indirizzo del nostro calendario
  6. torniamo a thunderbird, nello spazio vuoto sotto al calendario di default facciamo un click col destro, poi “nuovo calendario…”:

thunderbird2

ora procediamo con calendario sulla rete > Google calendar e qui incolliamo nella casella il link XML copiato poco fa e procediamo:

thunderbird3  thunderbird4  thunderbird5

finita la procedura il calendario di Gmail sarà sincronizzato e potremo eliminare quello di default contenuto in Lightning.

Se abbiamo più calendari da sincronizzare basterà ripetere tutta la procedura per ognuno di loro.

Fase 2: la rubrica.

in basso nella barra di stato di TB, troviamo una nuova icona: un piccolo quadratino grigio, è Zindus e con un click col destro procediamo ad impostarlo:

zindus

nella finestra che si apre selezioniamo “Aggiungi”, come tipo di account selezioniamo “Google”, inseriemo email e password, procediamo poi con “Prova connessione” se otteniamo l’OK significa che i dati sono corretti e possiamo salvare.

Adesso la rubrica di gmail sarà sincronizzata con la rubrica personale di Thunderbird.

E buona sincronia a tutti

zimbraZimbra è un ottima piattaforma per la gestione della posta e per il lavoro collaborativo, con il passaggio dalla V6 alla V7 il team di sviluppo ha deciso di eliminare il modulo della chat

una feature, secondo me, molto utile e funzionale che permette di comunicare al volo coi colleghi e scambiarsi qualche informazione al volo. In realtà il sistema di chat non è stato del tutto rimosso da zimbra 7, il motore c’è ma non è più gestibile via amministrazione web.

per attivare e gestire la chat bisogna agire da riga di comando e il comando sottostante serve proprio per attivare il sistema di chat e se non si lancia questo, nessuno dei comandi a seguire servirà a nulla:

zmprov mcf zimbraXMPPEnabled TRUE

dopo di ché si deve agire sulle varie classi di servizio (COS) per attivare la chat agli utenti.
Nativamente zimbra dispone di una COS predefinita che si chiama “default”;
dalla cli di zimbra occorre lanciare i comandi seguenti per attivare la chat a tutti i membri della classe “default”:

zmprov mc default zimbraFeatureIMEnabled TRUE
zmprov mc default zimbraFeatureInstantNotify TRUE
zmprov mc default zimbraPrefIMAutoLogin TRUE

se abbiamo già sviluppato più COS, lo stesso procedimento va ripetuto per tutte le classi che volgiamo dotare di chat (nei comandi soprastanti la parola default va sostituita col nome delle altre classi).

Attivare la chat per tutti però è un sistema piuttosto sommario, la chat in azienda è uno strumento delicato e può essere problematico dotarne tutti, di solito solo chi ne ha reale necessità viene dotato della chat, quindi, se vogliamo dotare di chat solo alcuni membri, un procedimento sensato potrebbe essere quello di lasciare invariata la classe “default” e creare una classe di servizio dedicata, ad esempio “chat_users” per la quale abilitiamo la chat:

zmprov mc chat_users zimbraFeatureIMEnabled TRUE
zmprov mc chat_users zimbraFeatureInstantNotify TRUE
zmprov mc chat_users zimbraPrefIMAutoLogin TRUE

ora, gli utenti che verranno inseriti nella classe “chat_users” troveranno la chat attiva, mentre tutti gli altri non la vedranno.

In alternativa si può procedere anche attivando (o disattivando) la chat per un singolo account;
per attivarla solo ad un singolo utente:

zmprov ma utente@esempio.it zimbraFeatureIMEnabled TRUE
zmprov ma utente@esempio.it zimbraFeatureInstantNotify TRUE
zmprov mc utente@esempio.it zimbraPrefIMAutoLogin TRUE

mentre, se abbiamo attivato la chat globalmente, per disattivare un singolo utente è sufficiente un solo comando:

zmprov ma utente@esempio.it zimbraFeatureIMEnabled FALSE

personalmente sconsiglio il metodo di gestione a singolo utente, dall’interfaccia web di amministrazione non c’è traccia della chat, quindi, usando un COS dedicato in cui inseriamo i membri della chat rimane sempre possibile vedere tutti coloro che ne fanno parte; al contrario, gestendo gli account separatamente, non si può sapere poi chi ce l’ha e chi no, se non da riga di comando.

E buona chattata a tutti.

Il GNR Virtuale di Eutelia è un prodotto molto interessante, in pratica si tratta di un Account Voip sul quale poggia un radicale telefonico da 10 a 100 numeri; per maggiori dettagli sulle specifiche, questo il link di riferimento:

Eutelia GNR Virtuale

In questo articolo vi illustrerò come configurare correttamente il GNR su Elastix;

naturalmente, questa configurazione con pochi accorgimenti si può tranquillamente adattare ad una installazione Standard di Asterisk priva di interfacce di gestione.

- Se vogliamo usare la selezione passante occorre avere almeno una linea ADSL con IP fisso, altrimenti, per una policy di sicurezza non è possibile uscire con gli interni.

- Contrattualmente, per poter usare gli interni del GNR in uscita occorre avere la selezione passante abilitata, altrimenti le chiamate usciranno sempre dal numero capofila.

Passiamo ora alla configurazione di base per gestire la NAT, che a meno di avere un modem, sussiste con un qualsiasi router ADSL:

apriamo l’interfaccia web di Elastix e spostiamoci nel menù PBX > Tools > Asterisk file editor, qui cerchiamo il file sip_general_custom.conf e lo andiamo a modificare inserendo questo contenuto:

stunaddr=stun.voip.eutelia.it:3478
localnet=172.16.10.0/255.255.255.0
bindport=5060
externrefresh=120
language=it
t38pt_udptl=yes

il parametro stunaddr fa sì che lo stun decreti qual’è il nostro IP pubblico;
localnet è necessario per far conoscere ad asterisk la nostra rete locale e in base a questa decide quando applicare le impostazioni per la NAT;
bindport indica la porta sulla quale il nostro server è in ascolto;
t38pt_udptl attiva globalmente il supporto T.38 per il passaggio dei fax.

Al posto dello stunaddr possiamo usare alternativamente altri due parametri, ma la scelta dello STUN, in alcune situazioni si rivela sempre più funzionale quindi io lo adotto a priori, anche in caso di IP fisso:

externip=XXX.XXX.XXX.XXX
externhost=www.mioindirizzo.it

Per attivare queste impostazioni di rete serve un restart di Asterisk:

dal menù PBX > Tools > Asterisk-Cli scriviamo il comando “core restart now”  seguito dal tasto “Esegui”

 __________________________________________________________________________

Andiamo ora a configurare il nostro Trunk:

Andiamo in PBX > PBX Configuration > Trunks :

Clicchiamo Add SIP Trunk

Trunk Description: Eutelia1

Outbound Caller ID: 0123456789 <— Qui va inserito il capofila del nostro GNR

CID Options: Allow Any CID

[...]

Trunk Name: Eutelia1

PEER Details:

type=peer
srvlookup=yes
secret=XXXXXXXXXXX
regseconds=60
realm=voip.eutelia.it
qualify=yes
port=5060
outboundproxy=voip.eutelia.it
nat=yes
insecure=port,invite
host=voip.eutelia.it
;fromuser=0123456789
fromdomain=voip.eutelia.it
disallow=all
directmedia=no
defaultuser=0123456789
context=from-pstn-toheader
dtmfmode=info
allow=ulaw&alaw&gsm&g726&ilbc

USER Context: from-pstn-toheader

svuotiamo il contenuto di USER Details

 

Register String:

0123456789:XXXXXXXXXX:0123456789@voip.eutelia.it:5060/s

Clicchiamo “Submit Changes

* l’uso del contesto from-pstn-toheader ci permette di gestire l’ ingresso di tutti i numeri del GNR;

 __________________________________________________________________________

Configuriamo un interno:

nel menù PBX > PBX Configuration > Extensions click su Add Extension selezioniamo Generic SIP device e click su “Submit”

User Extension  200

Display Name  Utente

Outbound CID  0123456789  <— Qui va inserito il numero di telefono che vogliamo usare in uscita. possiamo selezionare un numero qualsiasi di quelli nel nostro GNR.

Ring Time 45

secret  XXXXXXXXX

dtmfmode  rfc2833

Language Code  it

Clicchiamo il tasto Submit

tutti i parametri non citati sono opzionali e non necessari ad un funzionamento base dell’interno

adesso occorre rientrare nell’utente appena creato e modificarlo;

click in alto a destra su Utente <200> e modifichiamo due parametri:

canreinvite  yes
nat  no

e di nuovo click su Submit;

questa modifica è consigliabile per tutti i telefoni che risiedono all’interno della nostra rete interna;

se dobbiamo registrare un telefono remoto in pubblica (via internet), i due parametri devono rimanere esattamente al contrario canreinvite no e  nat yes.

 __________________________________________________________________________

Configurazione delle rotte in ingresso:

entriamo nella sezione PBX > PBX Configuration > Inbound Routes

creiamo ad esempio una rotta in ingresso per il numero 0123456789

Description: 200

DID Number: 0123456789
Set Destination
Extensions:  <200> Utente

con questo settaggio abbiamo impostato che una chiamata entrante sul numero 0123456789 viene inoltrata all’interno 200

 __________________________________________________________________________

Configurazione delle rotte in uscita:

nella sezione PBX > PBX Configuration > Outbound Routes

Route Name:  tutto
Dial Patterns  XX.
Trunk Sequence  SIP/Eutelia1

click su Submit Changes

questa regola farà uscire dal nostro GNR tutte le chiamate di qualunque genere.

non resta che fare click sulla banda rosa in alto     Apply Configuration Changes Here      per confermare tutte le modifiche.

adesso abbiamo un  semplice centralino con un configurazione di base in grado di gestire correttamente il nostro GNR virtuale Eutelia.

Buone telefonate a tutti.

iFolder iconTutti conosciamo DropBox, il servizio gratuito che ci permette di condividere e sincronizzare i nostri documenti su più dispositivi anche con differenti sistemi operativi, il servizio è eccellente, ma se vogliamo trovare il pelo nell’uovo, DropBox è un servizio e per usarlo occorre registrarsi e usare lo spazio che ci mettono a disposizione, col risultato che non abbiamo nessun controllo  sul server, quindi, usando DropBox occorre fare un atto di fede e consegnare i nostri documenti importanti in mano altrui, ecco, da bravo informatico che ci tiene la sicurezza e perché no, un pochino paranoico, questa cosa non la trovo particolarmente simpatica, fortunatamente, esiste un’alternativa:

Novell iFolder

iFolder è una soluzione di sincronia file (basata su DeltaSync) semplice e sicura che può aumentare la produttività, consentendo di eseguire la sincronia dei documenti (e intrinsecamente il backup), garantendo la possibilità di accedere e gestire i file personali da qualsiasi luogo, in qualsiasi momento. Una volta installato, è sufficiente salvare i file localmente nella cartella iFolder, come avete sempre fatto e iFolder sincronizzerà i documenti automaticamente sul server di rete che li riconsegna agli altri pc collegati, inoltre, è possibile accedere ai propri documenti via web sfruttando il protocollo https.

Le differenze principali tra iFolder e Dropbox sono molto poche ma secondo me vale la pena indicarle:

  • Utilizzando iFolder il server centrale che gestisce la sincronia sarà il nostro
  • La crittografia di iFolder NON E’ REVERSIBILE.

Diversamente da dropbox , che, su richiesta delle autorità (e solo di quelle?) può decrittare i file dei propri utenti.

Installazione del server iFolder

la mia base di lavoro è openSUSE 11.4, ipotizziamo che il nostro server abbia l’ip 192.168.1.35 e pubblicamente il nostro dns sia acme.com

prima di tutto aggiungiamo il repository per il server iFolder

# zypper ar http://download.opensuse.org/repositories/home:/rkumar1:/branches:/network:/ifolder:/server_stable/openSUSE_11.4 ”iFolder-Server”

# zypper ref

ricordiamoci di accettare la chiave del repository premendo ‘a’ quando ce lo chiede.

adesso andiamo ad installare i pacchetti richiesti:

# zypper install apache2 ifolder3-enterprise novell-ifolder-enterprise-plugins yast2-http-server mono-wcf

Per il funzionamento di iFolder è necessario attivare l’SSL su Apache e ovviamente dobbiamo generare dei certificati:

a meno che non abbiamo a disposizione un certificato rilasciato da un ente certificatore, dobbiamo creare dei certificati casarecci, certo è che i browser non li riconosceranno come certificati validi, ma il loro lavoro di cifratura lo svolgeranno ugualmente, la strada semplice consiste nel lanciare un semplice comando:

# gensslcert



Adesso, per abilitare apache all’uso dell’SSL possiamo comodamente utilizzare YaST > Servizi di rete > Server HTTP
dobbiamo seguire una procedura in tre passaggi:
- Al primo avvio della procedura, installiamo quanto ci vuol fare installare, accettiamo tutti i settaggi di default, è molto importante abilitare l’autostart del servizio, clicchiamo Fine, non ci curiamo di un eventuale messaggio di errore.
- Lanciamo di nuovo YaST > Servizi di rete > Server HTTP, spostiamoci subito nel tab “Moduli Server” , selezioniamo il modulo “ssl” e clicchiamo il bottone “Cambia Stato” così “ssl” sarà abilitato, clicchiamo fine per applicare la modifica.
- Copiamo il template per il virtualhost con l’ssl abilitato al posto della configurazione standard. questo template ha tutte le impostazioni necessarie ad abilitare l’https sull’host di default.
# cp /etc/apache2/vhosts.d/vhost-ssl.template /etc/apache2/vhosts.d/vhost-ssl.conf
Riavviare Apache per attivare le modifiche
# rcapache2 restart
adesso possiamo verificare che l’SSL funzioni puntando in https al nostro server:
https://[ip server]
Un access forbidden in https:// ovviamente dopo aver accettato il nostro certificato fasullo, è normale paerché non abbiamo inserito alcuna pagina web al suo interno.
Adesso passiamo alla configurazione di iFolder.
lanciamo lo script di configurazione, ci sono poche modifiche da apportare:
# simias-server-setup

SIMIAS SERVER SETUP

This script configures a server installation of Simias to setup a new Simias system.


—– SERVER’S DATA PATH —–
Path to the server’s data files


Server’s Data Path? [/var/simias/data]: invio

—– SERVER NAME —–
The name of this server


Server Name? [iFolder]: invio

—– SSL —–
Select SSL/NONSSL communication for this server. Options
are  SSL, NONSSL or BOTH


SSL? [SSL]: invio

—– PUBLIC URL —–
Public URL of this Simias Server

qui dobbiamo inserire l’hostname pubblico da cui raggiungere il nostro server
Public URL? [https://192.168.1.35/simias10]: https://acme.com/simias10



—– PRIVATE URL —–
Private URL of this Simias Server

qui dobbiamo inserire l’IP interno da cui raggiungere il nostro server
Private URL? [https://acme.com/simias10]: https://192.168.1.35/simias10

—– SLAVE SERVER —–
Install into existing Simias Domain


Slave Server? [N]: invio

—– SYSTEM NAME —–
A name used to identify the Simias system to users.


System Name? [iFolder]: invio

—– SYSTEM DESCRIPTION —–
A detailed description of the Simias system for users.


System Description? [iFolder server]: invio

—– USE KEY RECOVERY AGENT —–
Use Key Recovery Agents to recovery the encryption
key if the user forgets the pass-phrase used for encryption?


Use Key Recovery Agent? [Y]: invio

—– RECOVERY AGENT CERTIFICATE PATH —–
Path to the Recovery agent certificate’s.


Recovery Agent Certificate Path? [/var/simias/data]: invio

—– USE LDAP —–
Use LDAP to provision and authenticate users?


Use LDAP? [Y]: N

—– SYSTEM ADMIN —–
The Simias default administrator.  If the system is
configured to use an external identity source, the
distinguished name (dn) should be used.


System Admin? [admin]:
System Admin Password? [novell]: ******

—– CONFIGURE APACHE —–
Configure Simias to run behind Apache


Configure Apache? [N]: Y

Ora, serve un nuovo restart di Apache per caricare la configurazione di simias appena effettuata:

# rcapache2 restart

Andiamo a verificare che la pagina Simias funzioni:
con il browser andiamo all’url ‘https://192.168.1.35/simias10′, facciamo l’accesso ocne le credenziali di admin specificate nel setup – verrà fuori una pagina di errore “The resource cannot be found.” è perfettamente normale, simias10 sta funzionando.

Per completare l’installazione rimane solo l’attivazione delle reali pagine web: “admin” e “ifolder”, il tutto è fattibile lanciando i rispettivi script di configurazione automatizzata:

# ifolder-admin-setup

IFOLDER WEB ADMIN SETUP

This script configures a server installation of iFolder Web Admin application. The script is intended for testing purposes only.

—– WEB ALIAS —–

Web Alias for iFolder Web Admin

Web Alias? [/admin]: invio

—– REQUIRE SSL —–

Require a secure connection between the browsers and

the iFolder Web Admin application

Require SSL? [Y]: invio

—– REQUIRE SERVER SSL —–

Require a secure connection between the iFolder Server

and the iFolder Web Admin application

Require Server SSL? [Y]: invio

—– IFOLDER URL —–

The host or ip address of the iFolder server that will

be used by the iFolder Web Admin application

iFolder URL? [https://localhost:443/]: https://192.168.1.35:443/

—– REDIRECT URL —–

Redirect URL for iChain / AccessGateway

Redirect URL? []: invio

Working…

Configuring /usr/lib/simias/admin/Web.config…Done

Server DATA PATH is set to :  /var/simias/data/simias

Configuring /etc/apache2/conf.d/ifolder_admin.conf…Done

Installing certificate…

—– ACCEPT IFOLDER SERVER CERTIFICATE —–

[Subject]

E=webmaster@ifolder.site, CN=ifolder.site,

OU=web server, O=SuSE Linux Web Server, L=unknown,

S=unknown, C=XY

[Issuer]

E=webmaster@ifolder.site, CN=ifolder.site,

OU=CA, O=SuSE Linux Web Server, L=unknown, S=unknown,

C=XY

[Not Before]

13/06/2011 8.20.51

[Not After]

12/06/2013 8.20.51

[Thumbprint]

365E7D1CF63C37C9C8B4FC13A01F72A5B934D3E5F6

Accept iFolder Server Certificate? [Y]: invio

Done

SUCCESS

e a segure:

# ifolder-web-setup

IFOLDER WEB ACCESS SETUP

This script configures a server installation of iFolder Web Access application. The script is intended for testing purposes only.

—– WEB ALIAS —–

Web Alias for iFolder Web Access

Web Alias? [/ifolder]: invio

—– REQUIRE SSL —–

Require a secure connection between the browsers and

the iFolder Web Access application

Require SSL? [Y]: invio

—– REQUIRE SERVER SSL —–

Require a secure connection between the iFolder Server

and the iFolder Web Access application

Require Server SSL? [Y]: invio

—– IFOLDER URL —–

The host or ip address of the iFolder server that will

be used by the iFolder Web Access application

iFolder URL? [https://localhost:443/]: https://192.168.1.35:443/

—– REDIRECT URL —–

Redirect URL for iChain / AccessGateway

Redirect URL? []: invio

Working…

Configuring /usr/lib/simias/webaccess/Web.config…Done

Server DATA PATH is set to :  /var/simias/data/simias

Configuring /etc/apache2/conf.d/ifolder_web.conf…Done

Installing certificate…

—– ACCEPT IFOLDER SERVER CERTIFICATE —–

[Subject]

E=webmaster@ifolder.site, CN=ifolder.site,

OU=web server, O=SuSE Linux Web Server, L=unknown,

S=unknown, C=XY

[Issuer]

E=webmaster@ifolder.site, CN=ifolder.site,

OU=CA, O=SuSE Linux Web Server, L=unknown, S=unknown,

C=XY

[Not Before]

13/06/2011 8.20.51

[Not After]

12/06/2013 8.20.51

[Thumbprint]

365E7D1CF63C37C9C8B4FC13A01F72A5B9B4E4D4

Accept iFolder Server Certificate? [Y]: invio

Done

SUCCESS

Un ultimo riavvio di Apache ed il server è pronto:

# rcapache2 restart

da browser adesso saranno accessibili la pagina “admin” e la pagina “ifolder”:

1) https://192.168.1.35/admin (dall’esterno sarebbe https://acme.com/admin)

Ci permette l’accesso di amministrazione per settare le opzioni del server, creare gli utenti iFolder e configurare gli eventuali report.

2) https://192.168.1.35/ifolder (dall’esterno sarebbe https://acme.com/ifolder)

Questo è il portale dell’utente, a questo link l’utente può avere accesso web ai files, usando un client, basta puntarlo a questa pagina per sincronizzarlo con il server.

e questo è tutto.

Installazione del client iFolder

l’installazione del client su opensuse è molto più semplice, e può essere effettuata senza aggiungere alcun repository.

# zypper in ifolder3 novell-ifolder-client-plugins mono-wcf

terminata l’installazione, dal menù del nostro desktop grafico basterà lanciare “iFolder 3″ e partirà il wizard di configurazione

all’indirizzo del server basterà inserire la url che punta alla pagina utente “https://acme.com/ifolder”, accettare il certificato, inserire nome utente e password ed il gioco è fatto.

Il client per altri sistemi operativi è scaricabile al sito ufficiale:

http://ifolder.com/ifolder

Esiste anche l’app per iPhone reperibile nell’Apple Store.

e buona sincronia a tutti. :-o

Con le macchine virtuali (ma anche con le macchine vere), capita spesso di modificare l’hardware e qualche volta ci si trova di fronte a delle schede di rete fantasma, per esempio virtualizzando con P2v una macchina reale, verrà installata una scheda aggiuntiva e sparirà quella vecchia. Se non la disinstalliamo precedentemente, vuoi  perchè non si può o semplicemente per dimenticanza, la scheda vecchia “scomparirà” dalla macchina virtuale ma rimarrà comunque nel registro annoverata tra le schede installate nel sistema con tanto di parametri di configurazione settati; questo spesso ci porta ad un fastidioso messaggio non problematico, ma semplicemente fastidioso come le zanzare:

Microsoft TCP/IP

per risolvere occorre eseguire un paio di comandi al prompt dei comandi:
1. Cliccare Start > Programmi > Accessori > Prompt dei comandi.
2. una volta aperto digitare il seguente comando e premere Invio:
set devmgr_show_nonpresent_devices=1
3. sempre nel medesimo prompt scrivere anche quanto segue e premere sempre Invio:
start devmgmt.msc
Prompt

4. Adesso nel gestore periferiche cliccare Visualizza > Mostra periferiche nascoste.
5. nella sezione delle schede di rete selezioniamo la nostra scheda “invisibile”.
6. Click col destro sulla scheda > Disinstalla.
Buon divertimento.

Lavorando col nuovo Xen 3.4 su Debian Lenny e su openSUSE 11.2, mi sono imbattuto in una problematica che personalmente ho dovuto affrontare molto ma molto di rado:

Assegnare un device fisico ad una macchina virtuale (domU).

Seguendo le vecchie procedure per il vecchio Xen, apparentemente al boot della dom0 la risorsa fisica veniva riservata, ma poi non funzionava nulla, ovvero, la macchina virtuale non partiva restituendo il seguente errore:

Error: pci: 0000:0d:08.0: non-page-aligned MMIO BAR found.

ho cercato soluzioni in lungo e in largo, senza giungere a nulla, finché non mi sono imbattuto in una patch del sorgente di Xen 3.4….
ebbene, leggendo il codice sorgente della patch è saltato fuori che con il nuovo Xen la sintassi per assegnare una risorsa è cambiata e nessuno lo sa!

Vengo quindi ad illustrare la procedura corretta:

per prima cosa, nella dom0 rifare l’initrd includendo il modulo “pciback“;

adesso con lspci andiamo a trovare l’ID della nostra scheda fisica:

# lspci
08:00.0 Ethernet controller: Intel Corporation 82571EB Gigabit Ethernet Controller (rev 06)
08:00.1 Ethernet controller: Intel Corporation 82571EB Gigabit Ethernet Controller (rev 06)
0a:00.0 Ethernet controller: Intel Corporation 82571EB Gigabit Ethernet Controller (rev 06)
0a:00.1 Ethernet controller: Intel Corporation 82571EB Gigabit Ethernet Controller (rev 06)
0d:08.0 Communication controller: Digium, Inc. Wildcard TE220 dual-span T1/E1/J1 card 3.3V
0f:0d.0 VGA compatible controller: ATI Technologies Inc ES1000 (rev 02)

come parametro aggiuntivo del kernel xen, al grub si deve inserire questo:

guestdev=0000:0d:08.0 reassign_resources

nel file di configurazione della macchina virtuale basta aggiungere questa riga:

pci = [ '0d:08.0' ]

fatto :-o adesso basta riavviare la nostra dom0 e la pci verrà riservata per la macchina virtuale…

Happy Xen

Sto provando Pardus 2009.2 sul mio eee-PC 900

Pardus è un mio vecchio amore a prima vista e dato che l’ho sempre ricordata come distribuzione piuttosto leggera, ho deciso di testarla sul mio eee-PC

il problema dell’eee-PC è che essendo un po’ limitato di risorse, con firefox va a fatica; siccome ho notato che ChromePlus comunque ci funziona bene, mi interessava poterlo usare anche su questa distro che nei repository non lo prevede… detto fatto, mi sono messo all’opera,

sono andato sul sito di ChromePlus e dato che Pardus è a 32 bit ho scaricato quanto disponibile per linux a 32 bit:

la versione “Debian/Ubuntu” e quella “Suse/Fedora”, vi dico subito di lasciar stare la versione per Debian che mi ha dato problemi, scaricate la versione “Suse/Fedora”

appena finito di scaricare, sono andato nella cartella “Scaricati” e con ark ho scompattato il tar.gz in una sottocartella;
fatto ciò, sono andato semplicemente di terminale:

$ su
# cd /home/zazu/Scaricati/chromeplus-1.3.3.3_suse_fedora_i686
# mkdir /opt/chromeplus
# cp -a * /opt/chromeplus
# cd /opt/chromeplus
# chown -R root:root *

con questi comandi sovrastanti ho copiato ChromePlus dentro opt e gli ho conferito i giusti permessi; opt è la cartella linux in cui si può mettere tutto ciò che è opzionale, per evitare problemi e conflitti col software pacchettizzato è sempre bene che quel che viene installato a mano, venga messo dentro opt.
Adesso andiamo a creare un link simbolico per l’eseguibile di Chromeplus:

# cd /usr/bin
# ln -s /opt/chromeplus/chrome-wrapper chromeplus

ora, manca un lanciatore per il menù di avvio e per il desktop:

# touch /usr/share/applications/chromeplus.desktop

dentro questo file appena creato dobbiamo metterci questo testo:

[Desktop Entry]
Name=ChromePlus
Exec=chromeplus %u
Icon=/opt/chromeplus/product_logo_48.png
Categories=Network;WebBrowser;
GenericName=Browser Web
Terminal=false
Type=Application
StartupNotify=true

io ho editato il file con vim:

# vi /usr/share/applications/chromeplus.desktop

ciò non toglie che se non si è capaci, lo si possa fare con l’editor che si preferisce (nano, kwrite, o altri);
per sempio, si potrebbe usare kwrite lanciandolo da utente normale (come root non si avvia):

$ xhost + && sudo kwrite /usr/share/applications/chromeplus.desktop

comunque, l’importante è creare, quel file, una volta salvato, tempo qualche secondo e nel menù di kde apparirà ChromePlus 8-)

Ultimo passaggio, i plugin:

siccome il pacchetto installato è pensato per openSUSE / Fedora, questo va a cercare i plugin nel percorso di default di uno dei due sistemi

Pardus usa una struttura differente, quindi i plugin non sembrano funzionare;

la soluzione è creare un link simbolico alla cartella dei plugin in modo da creare una posizione fittizia come se fosse la struttura di opensSUSE:

# cd /usr/lib
# ln -s nsbrowser/plugins/ browser-plugins

ora, abbiamo creato un percorso simbolico “usr/lib/browser-plugins” che punta a “usr/lib/nsbrowser/plugins” la cartella reale è la seconda, ma è raggiungibile anche dal link, questo basta a ChromePlus per ritrovare i necessari plugin e funzionare correttamente :)

Chromeplus Screenshot

Qlogic controllerMi è capitato di dover connettere ad un server con openSUSE 11.2 un’AX150, il collegamento avviane via fibra ottica e ho un controller Qlogic a doppia porta

quindi, dato che anche lAX ha due porte in fibra, ho ben pensato di mettere in piedi una configurazione in failover cosicché il collegamento col server è ridondato….

ma veniamo al sodo:

nell’AX dall’interfaccia web Navisphere abilitiamo le connessioni dal nostro server, poi dentro opensuse occorre creare e “farcire” il file /etc/multipath.conf

ecco cosa inserire:

##
## This is a template multipath-tools configuration file
## Uncomment the lines relevent to your environment
##
defaults {

udev_dir              /dev
polling_interval      10
selector              “round-robin 0″
path_grouping_policy  multibus
getuid_callout        “/lib/udev/scsi_id –whitelisted –device=/dev/%n”
prio_callout          “mpath_prio_emc /dev/%n”
path_checker          emc_clariion
path_grouping_policy  failover
failback              immediate
user_friendly_names   yes

}
blacklist {

# ho aggiunto sda alla blacklist in quanto il disco di sistema
devnode “^(sda|ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*”
devnode “^hd[a-z][[0-9]*]”

}
multipaths {
multipath {

wwid                  600601608B861C00BC43DC9DC74BEF11
alias                 SambaShare
}

multipath {

wwid                  600601608B861C00BC43DC9DC74BEF11
alias                 Backup
}

}

una volta fatto ciò, occorre mettere in avvio il demone del multipath (anche da yast) col seguente comando:

# chkconfig multipathd on

riavviando poi il demone del multipath dovremmo poter vedere  i device nella nostra macchina:

# rcmultipathd restart

# multipath -l
mpathc (3600601608b861c002ab72276714cef11) dm-1 DGC,RAID 5
size=652G features=’1 queue_if_no_path’ hwhandler=’1 emc’ wp=rw
`-+- policy=’round-robin 0′ prio=-2 status=active
|- 1:0:0:1 sdc 8:32 active undef running
`- 2:0:0:1 sde 8:64 active undef running
mpatha (3600601608b861c00bc43dc9dc74bef11) dm-0 DGC,RAID 5
size=690G features=’1 queue_if_no_path’ hwhandler=’1 emc’ wp=rw
`-+- policy=’round-robin 0′ prio=-2 status=active
|- 1:0:0:0 sdb 8:16 active undef running
`- 2:0:0:0 sdd 8:48 active undef running

quando nel sistema vedremo una situazione del genere, dentro /dev/mapper troveremo i nostri device:

# ls -la /dev/mapper/
totale 0
drwxr-xr-x  2 root root     100 21 apr 18:23 .
drwxr-xr-x 15 root root    4520 21 apr 18:23 ..
crw-rw—-  1 root root  10, 58 21 apr 15:18 control
brw-r—–  1 root disk 253,  0 21 apr 15:18 mpatha
brw-r—–  1 root disk 253,  1 21 apr 15:18 mpathc

NB

se abbiamo appena creato i virtual disk dentro l’AX, nel sistema i device non appariranno MAI finché l’AX non ha finito al 100% l’operazione

finché il virtual disk starà nello stato di inizializzazione non viene passato alcun device alla macchina (questo, anche se potrebbe far pensare che il multipath non funzioni, è del tutto normale c’è solo da attendere

quando l’AX avrà finito il suo lavoro, allora riavviando il server, dentro di esso magicamente appariranno i nuovi device



A seguito di un aggiornamento di Asterisk e qui sono stato stupido per non aver prima fatto un backup :roll: , ricordate bambini, il backup è una cosa importante, più delle forbici dalla punta arrotondata!

Insomma, mi sono ritrovato con il mio centralino casalingo che non effettuava più chiamate uscenti da nessun account VOIP;

dato che prima funzionava, poi ha smesso, 2+2=3,5… la colpa è dell’aggiornamento!

Quindi, armato di pazienza e anche di tempo, perché ho perso 4 o 5 giorni dietro al problema bestemmiofero, sono giunto a riscrivere una configurazione funzionante anche nell’ultima relase di asterisk…

vado qui ad illustrare:

sip.conf   pre-aggiornamento sip.conf post-aggiornamento
[general]
bindport=5060
context=incoming
udpbindaddr=0.0.0.0
tcpenable=no
tcpbindaddr=0.0.0.0
disallow=all
allow=ulaw
qualify=yes
language=it
dtmfmode=info
localnet=172.16.10.0/24
rtptimeout=60
rtpholdtimeout=300

;messagenet
register => 5xxxxxx:YYYYYYYY@sip.messagenet.it:5061
/messagenet

;chepnet
register => 6969xxxxxx:YYYYYYYY@sip.cheapnet.it
/cheapnet

[cheapnet]
type=peer
defaultuser=6969xxxxxx
fromuser=6969xxxxxx
secret=YYYYYYYY
host=sip.cheapnet.it
port=5060
insecure=port,invite
context=incoming
nat=yes
srvlookup=yes
canreinvite=no
disallow=all
allow=gsm
allow=ulaw
allow=alaw
allow=g726
allow=ilbc

[messagenet]
type=peer
defaultuser=5xxxxxx
fromuser=5xxxxxx
secret=YYYYYYYY
host=sip.messagenet.it
port=5061
insecure=port,invite
context=incoming
nat=yes
srvlookup=yes
canreinvite=no
disallow=all
allow=gsm
allow=ulaw
allow=alaw
allow=g726
allow=ilbc

[general]
bindport=5060
context=incoming
udpbindaddr=0.0.0.0
tcpenable=no
tcpbindaddr=0.0.0.0
disallow=all
allow=ulaw
language=it
dtmfmode=info
localnet=172.16.10.0/24
rtptimeout=60
rtpholdtimeout=300

;messagenet
register => 5xxxxxx:YYYYYYYY@sip.messagenet.it:5061
/messagenet

;chepnet
register => 6969xxxxxx:YYYYYYYY@sip.cheapnet.it
/cheapnet

[cheapnet]
type=peer
defaultuser=6969xxxxxx@sip.cheapnet.it
fromuser=6969xxxxxx
secret=YYYYYYYY
host=sip.cheapnet.it
fromdomain=sip.cheapnet.it
outboundproxy=sip.cheapnet.it
realm=sip.cheapnet.it
port=5060
regseconds=60
insecure=port,invite
context=incoming
qualify=yes
nat=yes
srvlookup=yes
canreinvite=no
directmedia=no
disallow=all
allow=gsm
allow=ulaw
allow=alaw
allow=g726
allow=ilbc

[messagenet]
type=peer
defaultuser=5xxxxxx@sip.messagenet.it
fromuser=5xxxxxx
secret=YYYYYYYY
host=sip.messagenet.it
fromdomain=sip.messagenet.it
outboundproxy=sip.messagenet.it
realm=sip.messagenet.it
port=5061
regseconds=60
insecure=port,invite
context=incoming
qualify=yes
nat=yes
srvlookup=yes
canreinvite=no
directmedia=no
disallow=all
allow=gsm
allow=ulaw
allow=alaw
allow=g726
allow=ilbc

per completezza questo è quanto serve dentro extensions.conf affinché quanto scritto sopra funzioni:

[incoming]

exten => cheapnet,1,Dial(SIP/INTERNO)
exten => messagenet,1,Dial(SIP/INTERNO)

[outgoing]

exten => _53.,1,Dial(SIP/${EXTEN}@messagenet)
exten => _XXX.,1,Macro(dial-failover,SIP/${EXTEN}@messagenet,SIP/${EXTEN}@cheapnet)

[macro-dial-failover]

exten => s,1,Dial(${ARG1})
exten => s,2,Goto(s-${DIALSTATUS},1)
exten => s-CONGESTION,1,Dial(${ARG2})

TunnelAppena installato Tunnelblick sul mac:

che bello che bello! Openvpn facile!

metto il file di configurazione dentro la cartella da lui suggeritami, permesso tutto come vuole lui e provo ad avviare la connessione…..

parte la rotellina arcobaleno e rimane lì spavaldamente bloccato senza segni di vita, tanto da averlo dovuto uccidere con kill -9 :-|

dopo un discreto impazzire, grazie anche al mo amico “AndydnA”, sono giunto alla difficile per quanto stupida soluzione:

da bravo linuxiano nel file di configurazione della mia VPN ho scritto:

log /var/log/openvpn/VPN_zazu.log

che c’è di strano? Voi direte…

beh, la cartella “openvpn” dentro /var/log” non esiste!!!!! Tunnelblick non può loggare dove gli abbiamo indicato e in barba al mondo, invece di segnalarlo si pianta!

soluzione:

mkdir /var/log/openvpn

d’ora in poi potrete fruire di tutte le VPN che vi pare e piace. ;-)

WordPress SEO fine-tune by Meta SEO Pack from Poradnik Webmastera