Firefox 3: ottimizzare il DB ( Linux e Mac )

Come ha già detto Gioxx è possibile ottimizzare i DataBase SQLite usati da Firefox 3.x per avere un avvio piu’ veloce del browser.

Gioxx ha descritto su come farlo in Windows, io vi mostrerò come farlo su Mac e Linux.

Per prima cosa chiudete firefox, non deve assolutamente essere in esecuzione!
Ora potete aprire un Terminale ed entrare nel vostro profilo:

Linux: ~/.mozilla/firefox/xxxxxxxx.default/
Mac: ~/Library/Application Support/Firefox/Profiles/xxxxxxxx.default/

Switch@bimbo:~$ cd Library/Application\ Support/Firefox/Profiles/xxxxxxxx.default/

Switch@bimbo:~/Library/Application Support/Firefox/Profiles/xxxxxxxx.default$ ls -lah *.sqlite
-rw-r–r–@ 1 Switch  staff   7,0K 19 Mag  2008 content-prefs.sqlite
-rw-r–r–@ 1 Switch  staff   511K 16 Lug 08:49 cookies.sqlite
-rw-r–r–@ 1 Switch  staff   203K 15 Lug 22:14 downloads.sqlite
-rw-r–r–@ 1 Switch  staff   3,0K  3 Lug 21:09 dta_queue.sqlite
-rw-r–r–@ 1 Switch  staff   119K 15 Lug 22:02 formhistory.sqlite
-rw-r–r–@ 1 Switch  staff   2,0K 11 Giu 10:22 permissions.sqlite
-rw-r–r–@ 1 Switch  staff    17M 16 Lug 08:45 places.sqlite
-rw-r–r–@ 1 Switch  staff   2,0K 29 Mar  2008 search.sqlite
-rw-r–r–@ 1 Switch  staff    70K 16 Lug 08:07 signons.sqlite
-rw-r–r–@ 1 Switch  staff   4,0M 15 Giu  2008 urlclassifier2.sqlite
-rw-r–r–@ 1 Switch  staff   2,0K 18 Ott  2008 webappsstore.sqlite

Ora useremo il comando VACUUM di sqlite3 per ottimizzare il db

Switch@bimbo:~/Library/Application Support/Firefox/Profiles/xxxxxxxx.default$ for F in *.sqlite; do sqlite3 $F “VACUUM”; done

Switch@bimbo:~/Library/Application Support/Firefox/Profiles/xxxxxxxx.default$ ls -lah *.sqlite
-rw-r–r–@ 1 Switch  staff   7,0K 16 Lug 08:58 content-prefs.sqlite
-rw-r–r–@ 1 Switch  staff   373K 16 Lug 08:58 cookies.sqlite
-rw-r–r–@ 1 Switch  staff   157K 16 Lug 08:58 downloads.sqlite
-rw-r–r–@ 1 Switch  staff   3,0K 16 Lug 08:58 dta_queue.sqlite
-rw-r–r–@ 1 Switch  staff    47K 16 Lug 08:58 formhistory.sqlite
-rw-r–r–@ 1 Switch  staff   2,0K 16 Lug 08:58 permissions.sqlite
-rw-r–r–@ 1 Switch  staff   6,5M 16 Lug 08:58 places.sqlite
-rw-r–r–@ 1 Switch  staff   2,0K 16 Lug 08:58 search.sqlite
-rw-r–r–@ 1 Switch  staff    69K 16 Lug 08:58 signons.sqlite
-rw-r–r–@ 1 Switch  staff   2,7M 16 Lug 08:58 urlclassifier2.sqlite
-rw-r–r–@ 1 Switch  staff   2,0K 16 Lug 08:58 webappsstore.sqlite

L’esempio è su un Mac ma è esattamente uguale a Linux, cambia solo il percorso del profilo.

In alcune distribuzioni Linux, sqlite3, non è presente per cui dovete scaricarlo dai repository ufficiali della vostra distro.

Come potete notare il DB piu’ “ciccione” di 17MB è stato compresso fino a 6,5MB per cui piu’ del 50%!

Linux Day 2008

Anche quest’anno partecipo al Linux e come al solito per motivi di tempo/voglia non ho preparato nessun talk.

Ieri sera insiemi agli altri ragazzi del RavennaLUG abbiamo organizzato la sala e oggi abbiamo aperto le porte al pubblico.

Una cosa che mi rende abbastanza entusiasta è il vedere delle facce nuove mentre ciò che mi mette un po’ di angoscia è la scarsa partecipazione all’evento nonostante la grande pubblicità fatta.

Spero vivamente che l’affluenza ai vari eventi sparsi per l’italia sia maggiore di quella ricevuta qua da noi.

Nella stanza ci sono 10 laptop, 5 dei quali montano *ubuntu, 3 sono Mac, 1 xp e 1 Fedora.

Linux sarà mai pronto per il desktop? L’utente lo vuole?

Arabia

Sono ad Al Khobar per lavoro.. :-)

Ma perchè direte voi..non ce ne sono dei sistemisti linux in Arabia?? Certo che ce ne sono..ma vogliono solo il meglio!

Il mio compito?? Cluster linux con schede di rete in bonding (mode: active-backup) , firewall, terminatore vpn (openswan), proxy (squid), VMware server e posta (Lotus Domino).

Il cluster è formato da un server fisico e uno virtuale su un Windows 2003 STD r2 anch’esso in cluster con una vm sul server linux :)

Quando torno vi parlerò..sempre che ne abbia tempo e voglia…dell’Arabia.. :P

Inviare e ricevere la posta di GMail con Mutt

Questa piccola guida vi aiuterà a configurare Mutt e tutto quello che ci va dietro per ricevere e inviare la posta di GMail.

I software che ci servono sono i seguenti:

  • Mutt
  • Fetchmail
  • Procmail
  • nbsmtp (se avete un altro MTA vi consiglio di compilarlo) -> Qua i sorgenti.

Lettura della posta:

per ogni utente locale che intende utilizzare la posta di GMail occorre mettere i file di configurazione nella sua home..i file sono prelevabili da qui.

Il file .procmailrc basta copiarlo senza introdurre modifiche per gli altri non è così:

In Mutt .muttrc bisogna cambiare alcune cosine:

  • realname -> il nome dell'utente es: Omar
  • from -> la mail dell'utente es: utente@gmail.com
  • e lo spoolfile -> di solito /var/spool/mail/username
  • se avete un'altro MTA commentate la riga relativa (Non fatelo se intendete usare nbsmtp)-> #set sendmail="/usr/local/bin/nbsmtp"

In .fetchmailrc c'è da mettere utente e password di gmail e l'user che usa la posta

Diamo il seguente comando: chmod 600 ~/.fetchmailrc

Ora basta eseguire mutt e siamo pronti a leggere la nostra posta, per fare il fetch delle nuove mail basta premere shift + g e successivamente Invio.

Inviare la posta:

Scaricate nbsmtp e poi eseguire i seguenti comandi:

  1. tar xvofz nbsmtp_1.00.orig.tar.gz
  2. cd nbsmtp-1.00./configure –enable-ssl
  3. make
  4. su -c "make install"

ora modificate .nbsmtprc con i dati relativi al vostro account di GMail.

A questo punto se scrivete una mail con Mutt verrà data in pasto a nbsmtp che la gira all'smtp di GMail che la invierà :) 

Script Perl

Per lavoro ho dovuto fare uno script in perl per lockare gli utenti che non si collegano su un server da piu' di 60 giorni ($maxdays). Questo script non fa altro che memorizzare in un array (@ll) l'output ripulito del comando `lastlog` il contenuto dell'array viene diviso per ottenere utente e data dell'ultimo login, la data viene rielaborata per avere un formato utile a fare la differenza con la data corrente e se il risultato è maggiore o uguale a 60 locka l'utente [system("usermod -L $user")]

Per fare la differenza fra le date ho utilizzato due metodi (due script che fanno la stessa cosa in modi diversi):

  1. Date::Calc qw(Delta_Days) => Download
  2. una sub con un algoritmo => Download

Questi scripts li reputo abbastanza inutili..ma sono stati commissionati per "salvaguardare la sicurezza" di un server esposto..bah..almeno ho imparato un po' di perl.. :D

Commenti, critiche e consigli sono ben accetti.. :-)

Un po’ di me


Omar on Twitter Omar on Facebook Omar on LinkedIn

Eventi


    RomagnaCamp

Qualche foto da Flickr

Calendar

February 2012
M T W T F S S
« Jul    
 12345
6789101112
13141516171819
20212223242526
272829