Home > Beagle, GNU/Linux, Guide pratiche GNU/Linux > Beagle, ovvero la ricerca desktop al massimo livello

Beagle, ovvero la ricerca desktop al massimo livello

beagle-logoSpesso ci troviamo nell’esigenza di cercare dei file sul nostro hard disk non solo in base al nome ma al contenuto. In questi casi ci vengono in soccorso i programmi di ricerca desktop. Più o meno tutti funzionano allo stesso modo: un demone indicizza i file che possono essere rintracciati attraverso un’apposita interfaccia.

Per GNU/Linux esistono diverse possibilità, in particolare per GNOME la “guerra” è tra Tracker (adottato da Ubuntu) e Beagle (adottato da Suse).

Ora, senza fare polemica, ma Tracker non funziona, è troppo instabile e povero di feature. Quindi diciamo che la scelta in realtà è solo una, ma, per fortuna, è molto buona. Oddio potremmo usare anche altri motori, come Google Desktop (proprietario) o Recoll (libero) ma male si adattano al desktop GNOME.

Quindi bando alle ciance, ricordandovi prima che se non volete usare apt-get da terminale potete usare comodamente synaptic da grafica..

Prima di tutto liberiamoci di tracker:

sudo apt-get autoremove tracker tracker-search-tool libtracker-gtk tracker-utils libdeskbar-tracker

Be’ in realtà basta fermarsi a tracker, il resto dei pacchetti dovrebbe venire eliminato con l’autoremove.

Ora per farla pulita eliminiamo le voci riguardanti tracker anche da sistema > preferenze > programmi di avvio (ma non è indispensabile farlo).

Quindi riavviamo la sessione (facciamo cioè logout e login) così tracker non sarà più in esecuzione.

Il wiki di Beagle suggerisce di attivare una caratteristica del file system ext3 (ed ext4) che sono gli attributi estesi (user_xattr). In sostanza serve per fare in modo che Beagle possa “segnare” i file già indicizzati. Non è indispensabile ma migliora le performance. Procediamo:

sudo gedit /etc/fstab

Individuiamo la nostra partizione home e aggiungiamo l’opzione. Ad esempio:

UUID=... /home ext3 relatime,user_xattr 1 2

Se non abbiamo una partizione home separata allora la nostra partizione root “/” è quella da modificare. In sostanza basta aggiungere user_xattr nella colonna delle opzioni. Attenzione a non mettere spazi dopo la virgola.

Salviamo e chiudiamo.
Se abbiamo la home separata ora basta un bel:

sudo mount -o remount /home

Altrimenti tocca riavviare.

Fatto ciò, installiamo Beagle:

sudo apt-get install beagle

Ora bisogna scegliere di installare dei pacchetti aggiuntivi, a seconda delle nostre esigenze.

Se usiamo Evolution: beagle-backend-evolution
Per Thunderbird invece: thunderbird-beagle

Ora configuriamo Beagle:

beagle-settings

Comparirà l’interfaccia di configurazione. Per uno strano motivo non viene messa nel menu, dobbiamo farlo a mano.

Io ho messo queste:

Schermata-Preferenze di ricerca

Schermata-Preferenze di ricerca-1

Qui come notate ho tolto la selezione alla cartella Home dell’utente e ho messo in indicizzazione solo le cartelle che davvero mi interessano, vale a dire Documenti, Musica, Immagini, ecc.

Nella tab “risorse dati” selezionate i programmi che vi interessano. Io ho EvolutionDataServer, Files, NautilusMetadata e Pidgin. Come vedrete la scelta è davvero molto ampia, c’è praticamente di tutto, compresi liferea, opera e le pagine man. Purtroppo le mail di Evolution non vengono indicizzate a causa di un cambiamento nel backend di evolution stesso, ma poco male, tanto Evolution ha la sua ricerca.

Della tab successiva parleremo nella prossima puntata.

Controlliamo infine che siano state aggiunte le voci in sistema > preferenze > applicazioni di avvio. Le voci sono:

Beagle Search Daemon (comando: beagled --replace)
Beagle Search Tool (comando: beagle-search --icon)

Ultimo passo, se volgiamo fare un’indicizzazione veloce di quel che abbiamo già sull’hard disk, alleniamo il cane (Beagle…).

export BEAGLE_EXERCISE_THE_DOG=1
beagled &

e lasciamolo fare. Volendo stoppare il tutto però non chiudiamo il terminale ma diamo:

beagle-shutdown

Be’, ora non resta che riavviare la sessione. Nella traybar avremo il nostro bello strumento di ricerca.

Nella prossima puntata vedremo come usare alcune funzioni avanzate di Beagle: l’indicizzazione delle pagine web visitate (stupendo), la ricerca via web, il beagle file system (su quest’ultima feature c’è da farsi le seghe tanto è figa), e la sintassi avanzata delle query.

Ed ora le solite Domande e Risposte:

Beagle usa Mono! Io sono contro Mono!

Io no.

Ma Beagle usando Mono sarà per forza più lento di Tracker!

Invece no. Diversi test mostrano che Beagle è più veloce nell’indicizzazione e occupa molto meno la CPU. Tracker pare essere più veloce nella fase di ricerca, ma parliamo comunque di secondi o frazioni.

Eh ma a me adesso la sta occupando molto!

Dipende dal file che incontra, questo problema si risolve con il tempo, quando il programma ha finito di indicizzare tutti i file per la prima volta, poi sta buono buono lì e non rompe le scatole.

Ogni tanto mi crasha…

Può capitare che crashi l’icona quando cambi le impostazioni. In tal caso premi alt+f2 e dai come comando beagle-search --icon

Ma io mi trovo bene con Tracker

Ok.

Quali sono i vantaggi rispetto a Tracker?

Beagle è molto più stabile e paradossalmente occupa meno CPU. Indicizza molte più dati di vario genere (note di Tomboy, calendario di Evolution, contatti, feed rss, ecc.) mentre Tracker è limitato solo ai file e alle conversazioni di Pidgin. Inoltre Beagle ha alcune feature avanzate che spiegherò nel prossimo post che fanno la differenza. Infine la sintassi delle query di Beagle è più flessibile (lo vedremo nella prossima puntata) e ad esempio permette di cercare solo in una certa directory o solo i file con una certa proprietà, ecc.

E gli svantaggi?

Tracker ha lo stemming (ricerca per parole simili, ad esempio “casa” e “case”) in molte le lingue, mentre Beagle solo per l’inglese. Beagle ha la ricerca limitata ai primi 200 risultati.

Microsoft con Mono sta invadendo anche Linux!!! Maledetti bastardi!!!

Sì d’accordo, stai calmo però, non agitarti…

  1. Criss
    21 giugno 2009 alle 9:08

    Purtroppo non ho mai apprezzato quei programmi li, provai beagle hai tempi della 10.3 ma dopo un po mi resi conto che non lo usavo e che mi portava via un sacco di memoria, adesso con la 11.1 ho provato nepomuk+strigi stessa cosa di prima. Più che altro se cerco qualcosa sò dove andarla a trovare quindi la ricerca non mi serve!

  2. 21 giugno 2009 alle 9:24

    Secondo me il vero svantaggio di beagle è che non è più molto sviluppato per mancanza di tempo di Debajyoti Bera, praticamente l’unico sviluppatore costante da un po’ vedi ( http://mail.gnome.org/archives/dashboard-hackers/2009-January/msg00005.html ) il che già inizia a causare casini con evolution ( http://mail.gnome.org/archives/dashboard-hackers/2009-March/msg00000.html )

    E’ un peccato perché ho sempre usato beagle e non mi sono mai trovato molto bene con le alternative

    • 21 giugno 2009 alle 16:15

      Sì è vero, beagle va un po’ a rilento, ma pure tracker, per dire, non ha risolto ancora quel problema con evolution….
      Spero che Novell ci metta una pezza.

  3. iNoLogo
    21 giugno 2009 alle 15:18

    lo stemming lo ritengo fondamentale..è una grossa mancanza di beagle..sai se lo includeranno prima o poi? o magari è gia incluso in una versione di sviluppo?

    • 21 giugno 2009 alle 16:10

      Lo stemming c’è già… l’ho pure scritto.

      • 22 giugno 2009 alle 2:24

        non hai detto che è limitato alla lingua inglese?

      • 22 giugno 2009 alle 3:31

        @neff: sì, ma tu hai scritto come se non ci fosse affatto.
        Comunque nella prossima puntata spiego come usare i criteri di ricerca avanzati che in parte sopperiscono al problema.

  4. Criss
    21 giugno 2009 alle 18:55

    Secondo me è se proprio dovessi scegliere uno di questi programmi sceglierei l’accoppiata nepomuk strigi è vero che è ancora acido come progetto ma avrà tempo di crescere!

  5. 21 giugno 2009 alle 19:26

    Ancora è una beta speriamo bene in un suo sviluppo!

  6. Barra
    21 giugno 2009 alle 20:41

    Per gnome3 mi sembra cmq che si sia scelto tracker come strumento predefinito, integrandolo in zeithgeist e gnome-shell. A questo punto penso che questo tools possa considerarsi ‘morto’, tracker sarà ripreso, ampliato e potenziato a breve, risolvendo gli EVIDENTISSIMI limiti di questo programma.

    • ombra85
      21 giugno 2009 alle 21:55

      Beh per la ricerca c’è anche gnome-do che anche molte altre cose, ed è velocissimo.

    • ombra85
      21 giugno 2009 alle 21:55

      Beh per la ricerca c’è anche gnome-do che ha anche molte altre cose, ed è velocissimo.

      • Barra
        21 giugno 2009 alle 22:13

        DO non si appoggia a tracker per la ricerca in file e simili? inoltre ora sto usando l’ultima versione prelevata dal ramo di sviluppo (0.8.1.2 bzr r1216) e non ci sono plugin….

  7. 21 giugno 2009 alle 22:18

    che io sappia si appoggia a locate.

  8. telperion
    22 giugno 2009 alle 19:54

    Io uso da tempo recoll, interfaccia in qt è ricerche avanzate mirate a specifiche cartelle, massima configurabilità veloce e preciso. Provatelo.

    • ombra85
      22 giugno 2009 alle 21:47

      Barra: ti serve il pacchetto con i plugins di gnome-do.

      Non penso usi locate perchè c’è un plugin locate che ti permette di usare locate in gnome-do.

      Il plugin che intendo io è files and folders.

    • 22 giugno 2009 alle 23:43

      Ma assolutamente non integrato con gnome. Peraltro provai ad attivarlo come demone per l’indicizzazione continua (altrimenti ogni volta devi indicizzare a mano). Fu una pessima idea…

      • ombra85
        22 giugno 2009 alle 23:58

        Ti riferisci a recoll o a gnome-do?

      • telperion
        23 giugno 2009 alle 14:37

        Vero ma l’indicizzazione a mano, esclusa la prima, dura pochi secondi, quindi il sistema è assolutamente non caricato dall’indicizzazione, la ricerca poi è favolosa raggiungendo una granularità che in tracker te la sogni, in baegle non so mai provato.
        Io lo trovo un ottimo compromesso tra “peso” (zero) e qualità delle ricerche.

        • 23 giugno 2009 alle 18:36

          Eh ma poi una volta trovato il risultato spesso non puoi manco aprirlo con l’applicazione giusta.

          • telperion
            29 giugno 2009 alle 1:17

            Basta mettere un po di righe nel file
            ~/.recoll/mimeview
            tipo

            application/x-fsdirectory = nautilus %f
            image/jpeg = gthumb %f
            image/png = eog %f

  9. Barra
    23 giugno 2009 alle 11:15

    @ombra85
    Non funzinano, compilati e installati ma la mia versione di do continua a non vederli!

  10. Barra
    23 giugno 2009 alle 11:18

    mi autorispondo (sorry x la rottura):

    http://do.davebsd.com/wiki/index.php?title=Installing_Do

    qui ci sono le istruzioni per compilare l’ultima versione di do (e i suoi plugin) dai sorgenti.

  11. Fiero_alleaten
    23 giugno 2009 alle 13:39

    Beh, comunque anche Tracker può indicizzare svariate forme di dati per mezzo delle sue estensioni (tra cui, ad esempio, proprio il citato Tomboy), no? Magari con i giusti plugin si possono anche ottenere ricerche simili🙂.

    • 23 giugno 2009 alle 18:35

      No. Tracker indicizza solo file e messaggi di pidgin.

      • Fiero_alleaten
        25 giugno 2009 alle 18:34

        Mh, hai ragione, mi sono confuso con Deskbar. Deskbar permette di aggiungere anche le note e altri plugin alla ricerca, nonché la possibilità di cercare con Beagle e Tracker. In sostanza però l’accoppiata di default Tracker-Deskbar di Ubuntu non mi sembra malissimo. Ci sono dei vantaggi nell’usare Beagle? Con tutte quelle funzioni duplicate poi deskbar diventerebbe abbastanza inutile. Che ne pensi?

        • 25 giugno 2009 alle 19:17

          segui i prossimi post su beagle (anche l’ultimo lo troverai interessante)

          • fiero_alleaten
            26 giugno 2009 alle 1:06

            Ok, ti farò sapere😛. Ho visto che ne hai pubblicato un altro sull’argomento, coi feed dovrei rimanere aggiornato su eventuali altri articoli😉

  12. Tzor
    6 agosto 2009 alle 0:24

    Mi sapete dire esattamente dove vengono salvate le indicizzazioni dei file e delle pagine web? All’interno della directory .beagle nella home?

  13. vaquerito
    22 febbraio 2010 alle 15:49

    seguo tracker, beagle e compagnia bella (recoll, pinot) quasi dagli esordi. tracker in particolare l’ho compilato svn dopo svn prima e git dopo git poi, ma risolvevano un bug e ne veniva fuori un altro. Beagle è stato l’unico con cui sono riuscito ad avere un setup client/server (beagle che gira sul server di casa e dal tuo pc lo puoi interrogare). Da un po di tempo pero’ la situazione mi sembra cambiata. Beagle l’ho tolto per via della pesantezza (parere personale) e di mono (parere personale) e ho riprovato la serie 7.x di tracker e mi sembra tutt’altra storia, magari stavolta è quella buona, aspetto un rilascio stabile ufficiale.

  14. rockerrabbit
    4 marzo 2010 alle 18:38

    A me l’icona crasha sempre…cioè all’avvio non c’è, anche se fra le applicazioni all’avvio c’è anche il comando “beagle-search –icon”…è strano il doppio visto che nella vecchia installazione (ho cambiato recentemente harddisk) tutto funzionasse perfettamente…sapete aiutarmi?

  1. 6 luglio 2009 alle 10:30

Lascia un commento

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...

%d blogger cliccano Mi Piace per questo: