Line 9: |
Line 9: |
| == Migrazione delle password da Seamonkey 1.1.x a 2.0.x == | | == Migrazione delle password da Seamonkey 1.1.x a 2.0.x == |
| | | |
− | Una delle funzioni che ritengo pi<nowiki>ù</nowiki> utili di '''Seamonkey''', il web browser integrato con un client e-mail, un editor Html ed un programma di Chat della fondazione Mozilla, <nowiki>è</nowiki> la possibilit<nowiki>à</nowiki> di '''memorizzare le password''' con cui si accede ai siti consentendone l'uso mediante la digitazione di una '''singola "Master Password"'''. Chiunque come me abbia la necessit<nowiki>à</nowiki> di accedere a numerosi siti che richiedano di autenticarsi per operare comprender<nowiki>à</nowiki> la comodit<nowiki>à</nowiki> di amministrare una singola password piuttosto che alcune decine. Recentemente ho eseguito un '''upgrade di Seamonkey''' dalla versione 1.1.8 alla pi<nowiki>ù</nowiki> nuova 2.0.4 contestualmente all'aggiornamento della versione di Slackware da 13.0 a 13.1. Al termine della procedura di aggiornamento mi sono purtroppo accorto di un problema relativo alle password salvate: le stesse non erano state importate dal vecchio profilo al nuovo. Ad ogni avvio Seamonkey lamentava un'incongruenza inerente la configurazione del sistema crittografico e disabilitava il modulo di autenticazione. | + | Una delle funzioni che ritengo più utili di '''Seamonkey''', il web browser integrato con un client e-mail, un editor Html ed un programma di Chat della fondazione Mozilla, è la possibilità di '''memorizzare le password''' con cui si accede ai siti consentendone l'uso mediante la digitazione di una '''singola "Master Password"'''. Chiunque come me abbia la necessità di accedere a numerosi siti che richiedano di autenticarsi per operare comprenderà la comodità di amministrare una singola password piuttosto che alcune decine. Recentemente ho eseguito un '''upgrade di Seamonkey''' dalla versione 1.1.8 alla più nuova 2.0.4 contestualmente all'aggiornamento della versione di Slackware da 13.0 a 13.1. Al termine della procedura di aggiornamento mi sono purtroppo accorto di un problema relativo alle password salvate: le stesse non erano state importate dal vecchio profilo al nuovo. Ad ogni avvio Seamonkey lamentava un'incongruenza inerente la configurazione del sistema crittografico e disabilitava il modulo di autenticazione. |
| | | |
− | Riconfigurare decine di password non era un'opzione e mi sono pertanto adoperato per rieseguire l'importazione manualmente. Nel seguito dell'articolo esporr<nowiki>ò</nowiki> la metodologia adoperata per '''importare manualmente le password dalla versione 1.1.8 alla 2.0.4 di Seamonkey'''. | + | Riconfigurare decine di password non era un'opzione e mi sono pertanto adoperato per rieseguire l'importazione manualmente. Nel seguito dell'articolo esporrò la metodologia adoperata per '''importare manualmente le password dalla versione 1.1.8 alla 2.0.4 di Seamonkey'''. |
| | | |
| | | |
| == Un problema noto == | | == Un problema noto == |
| | | |
− | Non sono sicuramente il primo n<nowiki>è</nowiki> l'ultimo ad imbattersi nel problema. Una ricerca su Google ha evidenziato alcune segnalazioni su Bugzilla per le versioni alpha di Seamonkey 2.0: [https://bugzilla.mozilla.org/show_bug.cgi?id=482443 bugzilla.mozilla.org]. Il problema sembrava chiuso, ma sui forum alcuni lamentavano gli stessi sintomi per le successive versioni stabili: [http://forums.mozillazine.org/viewtopic.php?f=40&t=1562745&start=30 forums.mozillazine.org] | + | Non sono sicuramente il primo nè l'ultimo ad imbattersi nel problema. Una ricerca su Google ha evidenziato alcune segnalazioni su Bugzilla per le versioni alpha di Seamonkey 2.0: [https://bugzilla.mozilla.org/show_bug.cgi?id=482443 bugzilla.mozilla.org]. Il problema sembrava chiuso, ma sui forum alcuni lamentavano gli stessi sintomi per le successive versioni stabili: [http://forums.mozillazine.org/viewtopic.php?f=40&t=1562745&start=30 forums.mozillazine.org] |
| | | |
| Ho seguito le procedure consigliate, rimosso la nuova versione, reinstallato la 1.1.8 e rieseguito l'aggiornamento, ma l'importazione delle password non sembrava funzionare comunque. Data la delicatezza dei dati ho quindi deciso di non ricorrere a strumenti automatici, ma di procedere manualmente. | | Ho seguito le procedure consigliate, rimosso la nuova versione, reinstallato la 1.1.8 e rieseguito l'aggiornamento, ma l'importazione delle password non sembrava funzionare comunque. Data la delicatezza dei dati ho quindi deciso di non ricorrere a strumenti automatici, ma di procedere manualmente. |
| | | |
− | Il primo passo <nowiki>è</nowiki> consistito nello studiare le metodologie con cui sono immagazzinate le informazioni per le versioni 1.x e la 2.x di Seamonkey. | + | Il primo passo è consistito nello studiare le metodologie con cui sono immagazzinate le informazioni per le versioni 1.x e la 2.x di Seamonkey. |
− | Le informazioni riportate nei link elencati di seguito hanno fatto un p<nowiki>ò</nowiki> di luce circa le password in Seamonkey 1.x. Il resto lo ho dedotto procedendo mediante tentativi. | + | Le informazioni riportate nei link elencati di seguito hanno fatto un pò di luce circa le password in Seamonkey 1.x. Il resto lo ho dedotto procedendo mediante tentativi. |
| http://kb.mozillazine.org/Transferring_data_to_a_new_profile_-_SeaMonkey | | http://kb.mozillazine.org/Transferring_data_to_a_new_profile_-_SeaMonkey |
| http://seamonkey.ilias.ca/profilefaq/#transferring_passwords | | http://seamonkey.ilias.ca/profilefaq/#transferring_passwords |
Line 29: |
Line 29: |
| == Password in Seamonkey 1.1.x == | | == Password in Seamonkey 1.1.x == |
| | | |
− | Le informazioni inerenti le password sono salvate in un file avente estensione ''*.s'' nella versione 1.1.8 di Seamonkey. Nel caso in cui si facesse ricorso ad una '''Masterkey''', cio<nowiki>è</nowiki> ad una password principale, la medesima e l'identificatore delle altre sono memorizzati nel file ''key3.db'' come il precedente contenuto nel profilo dell'utente. | + | Le informazioni inerenti le password sono salvate in un file avente estensione ''*.s'' nella versione 1.1.8 di Seamonkey. Nel caso in cui si facesse ricorso ad una '''Masterkey''', cioè ad una password principale, la medesima e l'identificatore delle altre sono memorizzati nel file ''key3.db'' come il precedente contenuto nel profilo dell'utente. |
| | | |
| Nel mio caso i file contenenti le informazioni erano: | | Nel mio caso i file contenenti le informazioni erano: |
Line 74: |
Line 74: |
| == Password in Seamonkey 2.0.x == | | == Password in Seamonkey 2.0.x == |
| | | |
− | La codifica delle password e la ritenzione di informazioni quali cookie, history, downloads ed altro ancora sono cambiati completamente nella versione 2.0.x di Seamonkey rispetto alla 1.1.x. E' stato introdotto l'uso di '''sqlite''' per rendere '''omogenea la codifica delle informazioni'''. [http://www.sqlite.org Sqlite] <nowiki>è</nowiki> una libreria che implementa un motore di database SQL privo di un server dedicato. I vecchi file di testo sono stati perci<nowiki>ò</nowiki> sostituiti dai nuovi ''cookies.sqlite'', ''downloads.sqlite'', ''formhistory.sqlite'', ''permissions.sqlite'', ''places.sqlite'', '''signons.sqlite''' e ''urlbarhistory.sqlite''. Il file signons.sqlite contiene le password e sostituisce il vecchio file avente estensione *.s. La gestione delle password avviene tramite la coppia di file '''signons.sqlite''' e '''key3.db''' nella nuova versione di Seamonkey. | + | La codifica delle password e la ritenzione di informazioni quali cookie, history, downloads ed altro ancora sono cambiati completamente nella versione 2.0.x di Seamonkey rispetto alla 1.1.x. E' stato introdotto l'uso di '''sqlite''' per rendere '''omogenea la codifica delle informazioni'''. [http://www.sqlite.org Sqlite] è una libreria che implementa un motore di database SQL privo di un server dedicato. I vecchi file di testo sono stati perciò sostituiti dai nuovi ''cookies.sqlite'', ''downloads.sqlite'', ''formhistory.sqlite'', ''permissions.sqlite'', ''places.sqlite'', '''signons.sqlite''' e ''urlbarhistory.sqlite''. Il file signons.sqlite contiene le password e sostituisce il vecchio file avente estensione *.s. La gestione delle password avviene tramite la coppia di file '''signons.sqlite''' e '''key3.db''' nella nuova versione di Seamonkey. |
| | | |
− | Per studiare il formato di signons.sqlite <nowiki>è</nowiki> necessario un client SQL in grado di interpretare i file aventi estensione *.sqlite ed una certa dimestichezza con il linguaggio SQL. Per quanto riguarda il primo punto, Slackware 13.1 <nowiki>è</nowiki> equipaggiata con il pacchetto sqlite-3.6.23.1-<''arch''>-1 che contiene sia le librerie necessarie per creare file di database che un interprete in grado di manipolare i dati. Il programma client <nowiki>è</nowiki> ''sqlite3'' attraverso cui studieremo il formato del file contenente le password. | + | Per studiare il formato di signons.sqlite è necessario un client SQL in grado di interpretare i file aventi estensione *.sqlite ed una certa dimestichezza con il linguaggio SQL. Per quanto riguarda il primo punto, Slackware 13.1 è equipaggiata con il pacchetto sqlite-3.6.23.1-<''arch''>-1 che contiene sia le librerie necessarie per creare file di database che un interprete in grado di manipolare i dati. Il programma client è ''sqlite3'' attraverso cui studieremo il formato del file contenente le password. |
| bash-4.1$ sqlite3 signons.sqlite | | bash-4.1$ sqlite3 signons.sqlite |
| SQLite version 3.6.23.1 | | SQLite version 3.6.23.1 |
Line 92: |
Line 92: |
| CREATE INDEX moz_logins_hostname_index ON moz_logins(hostname); | | CREATE INDEX moz_logins_hostname_index ON moz_logins(hostname); |
| | | |
− | Il comando ''.schema'' fa si che il client renda '''la struttura del database''' e l''''elenco delle tabelle'''. Nel caso del database signons.sqlite le tabelle contenute sono 2: moz_disabledHosts e moz_logins; la seconda <nowiki>è</nowiki> quella di nostro interesse. | + | Il comando ''.schema'' fa si che il client renda '''la struttura del database''' e l''''elenco delle tabelle'''. Nel caso del database signons.sqlite le tabelle contenute sono 2: moz_disabledHosts e moz_logins; la seconda è quella di nostro interesse. |
| | | |
| Analizziamo il contenuto della tabella '''moz_logins''' mediante il comando ''.dump'' che esporta un elenco di istruzioni SQL il cui scopo consiste nel creare un back-up completo dei dati e della struttura tabellare. | | Analizziamo il contenuto della tabella '''moz_logins''' mediante il comando ''.dump'' che esporta un elenco di istruzioni SQL il cui scopo consiste nel creare un back-up completo dei dati e della struttura tabellare. |
Line 117: |
Line 117: |
| COMMIT; | | COMMIT; |
| | | |
− | La tabella ''moz_logins'' <nowiki>è</nowiki> costituita da 10 colonne. In dettaglio: | + | La tabella ''moz_logins'' è costituita da 10 colonne. In dettaglio: |
| ''id'' - E' un identificatore univoco. Un numero maggiore di 0 che viene incrementato sequenzialmente salvando | | ''id'' - E' un identificatore univoco. Un numero maggiore di 0 che viene incrementato sequenzialmente salvando |
| una nuova password. | | una nuova password. |
| ''hostname'' - E' l'indirizzo del sito di cui si vuole memorizzare la password. | | ''hostname'' - E' l'indirizzo del sito di cui si vuole memorizzare la password. |
− | ''httpRealm'' - Non <nowiki>è</nowiki> mai stato popolato nelle mie prove. Negli esempi di sopra ha sempre il valore NULL che | + | ''httpRealm'' - Non è mai stato popolato nelle mie prove. Negli esempi di sopra ha sempre il valore NULL che |
| corrisponde ad un campo di database non inizializzato. | | corrisponde ad un campo di database non inizializzato. |
| ''formSubmitURL'' - E' l'indirizzo della maschera. Di solito coincide con hostname. | | ''formSubmitURL'' - E' l'indirizzo della maschera. Di solito coincide con hostname. |
| ''usernameField'' - E' il campo della maschera in cui deve essere inserito il nome utente. | | ''usernameField'' - E' il campo della maschera in cui deve essere inserito il nome utente. |
| ''passwordField'' - E' il campo della maschera in cui deve essere inserita la password. | | ''passwordField'' - E' il campo della maschera in cui deve essere inserita la password. |
− | ''encryptedUsername'' - E' il nome dell'utente utilizzato durante l'autenticazione criptato perch<nowiki>è</nowiki> non venga | + | ''encryptedUsername'' - E' il nome dell'utente utilizzato durante l'autenticazione criptato perchè non venga |
| letto da persone non autorizzate. | | letto da persone non autorizzate. |
| ''encryptedPassword'' - E' la password criptata utilizzata per autenticare l'utente. | | ''encryptedPassword'' - E' la password criptata utilizzata per autenticare l'utente. |
Line 135: |
Line 135: |
| == Come eseguire la conversione == | | == Come eseguire la conversione == |
| | | |
− | Prima di procedere si consiglia di eseguire un back-up della directory .mozilla contenuta nella home dell'utente per cui si desideri operare. Il modo pi<nowiki>ù</nowiki> semplice per eseguire una copia <nowiki>è</nowiki> utilizzare il comando tar: | + | Prima di procedere si consiglia di eseguire un back-up della directory .mozilla contenuta nella home dell'utente per cui si desideri operare. Il modo più semplice per eseguire una copia è utilizzare il comando tar: |
| bash-4.1$ tar -jcf mozilla_bck.tar.bz2 .mozilla | | bash-4.1$ tar -jcf mozilla_bck.tar.bz2 .mozilla |
− | In questo modo, nel caso qualcosa vada storto, sar<nowiki>à</nowiki> possibile ripristinare la situazione iniziale rimuovendo la directory nascosta .mozilla e scompattando l'archivio creato: | + | In questo modo, nel caso qualcosa vada storto, sarà possibile ripristinare la situazione iniziale rimuovendo la directory nascosta .mozilla e scompattando l'archivio creato: |
| bash-4.1$ rm -r .mozilla | | bash-4.1$ rm -r .mozilla |
| bash-4.1$ tar -jxf mozilla_bck.tar.bz2 | | bash-4.1$ tar -jxf mozilla_bck.tar.bz2 |
Line 145: |
Line 145: |
| === Trovare le directory contenenti il profilo dell'utente === | | === Trovare le directory contenenti il profilo dell'utente === |
| | | |
− | Avendo sempre usato il solo profilo di default per il mio utente, la directory di interesse sar<nowiki>à</nowiki> /home/twinstar/.mozilla/default/<nome casuale> cio<nowiki>è</nowiki>: /home/twinstar/.mozilla/default/xt5ed1fd.slt/ per la versione 1.1.8 di Seamonkey. Tale directory conterr<nowiki>à</nowiki> i dati da migrare. | + | Avendo sempre usato il solo profilo di default per il mio utente, la directory di interesse sarà /home/twinstar/.mozilla/default/<nome casuale> cioè: /home/twinstar/.mozilla/default/xt5ed1fd.slt/ per la versione 1.1.8 di Seamonkey. Tale directory conterrà i dati da migrare. |
| | | |
− | Avviando Seamonkey versione 2.0.x verr<nowiki>à</nowiki> automaticamente creata la nuova struttura di directory utilizzati per salvare i profili degli utenti: | + | Avviando Seamonkey versione 2.0.x verrà automaticamente creata la nuova struttura di directory utilizzati per salvare i profili degli utenti: |
| .mozilla/seamonkey/<nome casuale>.default/; .mozilla/seamonkey/8i3q7qe7.default/ nel mio caso. In tale directory dovranno essere migrati i dati. I file ivi contenuti inizialmente saranno ovviamente vuoti. | | .mozilla/seamonkey/<nome casuale>.default/; .mozilla/seamonkey/8i3q7qe7.default/ nel mio caso. In tale directory dovranno essere migrati i dati. I file ivi contenuti inizialmente saranno ovviamente vuoti. |
| | | |
| === Configurare Seamonkey 2.0.x === | | === Configurare Seamonkey 2.0.x === |
| | | |
− | Il passo successivo consiste nella configurazione di Seamonkey. Avviato il programma, bisogner<nowiki>à</nowiki> verificare che sia attiva l'impostazione di salvataggio delle password e procedere quindi ad impostare una "'''Master Password'''" uguale a quella utilizzata per la versione 1.1.x del prodotto. | + | Il passo successivo consiste nella configurazione di Seamonkey. Avviato il programma, bisognerà verificare che sia attiva l'impostazione di salvataggio delle password e procedere quindi ad impostare una "'''Master Password'''" uguale a quella utilizzata per la versione 1.1.x del prodotto. |
| | | |
− | Fatto ci<nowiki>ò</nowiki> bisogner<nowiki>à</nowiki> sovrascrivere il file ''key3.db'' contenuto nel profilo della versione 2.0.x con una copia di quello esistente nel profilo della versione precedente. | + | Fatto ciò bisognerà sovrascrivere il file ''key3.db'' contenuto nel profilo della versione 2.0.x con una copia di quello esistente nel profilo della versione precedente. |
| | | |
| A questo punto non resta che convertire le informazioni contenute nel file avente estensione ''*.s'' in istruzioni ''SQL'' da caricare nel database file ''signons.sqlite''. La corrispondenza delle informazioni salvate nei due diversi formati sara': | | A questo punto non resta che convertire le informazioni contenute nel file avente estensione ''*.s'' in istruzioni ''SQL'' da caricare nel database file ''signons.sqlite''. La corrispondenza delle informazioni salvate nei due diversi formati sara': |
| | | |
| ''id'' -> Un qualunque numero intero positivo. Eseguire un incremento per ogni riga. Si parte dal valore piu' | | ''id'' -> Un qualunque numero intero positivo. Eseguire un incremento per ogni riga. Si parte dal valore piu' |
− | alto salvato incrementato di una unita'. Se ad esempio il valore massimo fosse 5. Il primo numero da usare sar<nowiki>à</nowiki> 6. | + | alto salvato incrementato di una unita'. Se ad esempio il valore massimo fosse 5. Il primo numero da usare sarà 6. |
| ''hostname'' -> Corrisponde alla prima riga del file xxxxxxx.s. | | ''hostname'' -> Corrisponde alla prima riga del file xxxxxxx.s. |
| ''httpRealm'' -> Impostare NULL. | | ''httpRealm'' -> Impostare NULL. |
Line 167: |
Line 167: |
| ''encryptedUsername'' -> Corrisponde alla terza riga del file xxxxxxx.s. | | ''encryptedUsername'' -> Corrisponde alla terza riga del file xxxxxxx.s. |
| ''encryptedPassword'' -> Corrisponde alla quinta riga del file xxxxxxx.s. | | ''encryptedPassword'' -> Corrisponde alla quinta riga del file xxxxxxx.s. |
− | ''guid'' -> Se esistesse gi<nowiki>à</nowiki> una password copiarne il valore del campo ''guid'' altrimenti impostare NULL. | + | ''guid'' -> Se esistesse già una password copiarne il valore del campo ''guid'' altrimenti impostare NULL. |
| ''encType'' -> Imporre il valore 1 che sta ad indicare una password criptata. | | ''encType'' -> Imporre il valore 1 che sta ad indicare una password criptata. |
| | | |
| === Le istruzioni SQL === | | === Le istruzioni SQL === |
| | | |
− | A titolo di esempio verr<nowiki>à</nowiki> eseguita la conversione della password relativa al sito http://appdb.winehq.org contenuta nel file 52829682.s. | + | A titolo di esempio verrà eseguita la conversione della password relativa al sito http://appdb.winehq.org contenuta nel file 52829682.s. |
| http://appdb.winehq.org | | http://appdb.winehq.org |
| sUserEmail | | sUserEmail |
Line 183: |
Line 183: |
| 'sUserPassword','MEIEEPgAAAAAAAAAAAAAAAAAAAEwFAYIKoZIhvcNAwcEC...','MDIEEPgAAAAAAAAAAAAAAAAAAAEwFAYIKoZIhvcNAwcEC...', | | 'sUserPassword','MEIEEPgAAAAAAAAAAAAAAAAAAAEwFAYIKoZIhvcNAwcEC...','MDIEEPgAAAAAAAAAAAAAAAAAAAEwFAYIKoZIhvcNAwcEC...', |
| '{c9158a9c-022c-4413-8b40-f843b5c8a5ec}',1); | | '{c9158a9c-022c-4413-8b40-f843b5c8a5ec}',1); |
− | Si noti che '''tutte le stringhe sono state racchiuse tra apici''' come richiesto dal linguaggio SQL per dati testuali. Si noti inoltre l'omissione non casuale dell'asterisco per la riga '''*sUserPassword'''. Per quanto concerne il campo ''guid'' si <nowiki>è</nowiki> utilizzato il valore di una password precedentemente inserita nell'elenco di SEamonkey 2.0.x. L'istruzione <nowiki>è</nowiki> stata terminata con il simbolo ";" come prevede lo standard del linguaggio SQL. | + | Si noti che '''tutte le stringhe sono state racchiuse tra apici''' come richiesto dal linguaggio SQL per dati testuali. Si noti inoltre l'omissione non casuale dell'asterisco per la riga '''*sUserPassword'''. Per quanto concerne il campo ''guid'' si è utilizzato il valore di una password precedentemente inserita nell'elenco di SEamonkey 2.0.x. L'istruzione è stata terminata con il simbolo ";" come prevede lo standard del linguaggio SQL. |
| | | |
− | Per caricare la password sar<nowiki>à</nowiki> necessario digitare l'istruzione nel prompt del programma '''sqlite3''' e premere invio: | + | Per caricare la password sarà necessario digitare l'istruzione nel prompt del programma '''sqlite3''' e premere invio: |
| bash-4.1$ sqlite3 signons.sqlite | | bash-4.1$ sqlite3 signons.sqlite |
| SQLite version 3.6.23.1 | | SQLite version 3.6.23.1 |
Line 194: |
Line 194: |
| '{c9158a9c-022c-4413-8b40-f843b5c8a5ec}',1); | | '{c9158a9c-022c-4413-8b40-f843b5c8a5ec}',1); |
| sqlite> | | sqlite> |
− | La password <nowiki>è</nowiki> stata cos<nowiki>ì</nowiki> migrata e sar<nowiki>à</nowiki> disponibile al successivo avvio di Seamonkey. | + | La password è stata così migrata e sarà disponibile al successivo avvio di Seamonkey. |
| Per chiudere il programma sqlite3 digitare: | | Per chiudere il programma sqlite3 digitare: |
| sqlite> .quit | | sqlite> .quit |
Line 201: |
Line 201: |
| === Note === | | === Note === |
| | | |
− | Se si fosse importato per errore una password <nowiki>è</nowiki> possibile rimuoverla dall'elenco utilizzando l'istruzione: | + | Se si fosse importato per errore una password è possibile rimuoverla dall'elenco utilizzando l'istruzione: |
| sqlite> delete from "moz_logins" where id=<''identificatore della password da eliminare''>; | | sqlite> delete from "moz_logins" where id=<''identificatore della password da eliminare''>; |
| | | |
− | Inserire le password nel file ''signons.sqlite'' non <nowiki>è</nowiki> sufficiente per eseguire l'importazione. E' necessario anche copiare il file ''key3.db'' dal vecchio profilo. Senza tale file le password aggiunte saranno ignorate da Seamonkey. | + | Inserire le password nel file ''signons.sqlite'' non è sufficiente per eseguire l'importazione. E' necessario anche copiare il file ''key3.db'' dal vecchio profilo. Senza tale file le password aggiunte saranno ignorate da Seamonkey. |
| | | |
| E' caldamente consigliato operare a '''programma chiuso''' ed eseguire l'avvio solo a operazione conclusa per verificare il corretto funzionamento del sottosistema di gestione delle password. | | E' caldamente consigliato operare a '''programma chiuso''' ed eseguire l'avvio solo a operazione conclusa per verificare il corretto funzionamento del sottosistema di gestione delle password. |
| | | |
− | La procedura proposta prevede di partire da un'installazione vergine del programma percio', se vi servisse preservare altri dati quali le e-mail o i bookmark, <nowiki>è</nowiki> necessario copiare i medesimi dal vecchio al nuovo profilo dell'utente. | + | La procedura proposta prevede di partire da un'installazione vergine del programma percio', se vi servisse preservare altri dati quali le e-mail o i bookmark, è necessario copiare i medesimi dal vecchio al nuovo profilo dell'utente. |
| | | |
| | | |
| == Conclusione == | | == Conclusione == |
| | | |
− | Nel corso dell'articolo <nowiki>è</nowiki> stato esposto come vengano immagazzinate le password per diverse versioni del programma Seamonkey e come eseguire una migrazione manuale tra major release del prodotto. E' stato inoltre fornito un esempio di conversione di formato per una password. Chi necessitasse migrare molti dati ha due opzioni: | + | Nel corso dell'articolo è stato esposto come vengano immagazzinate le password per diverse versioni del programma Seamonkey e come eseguire una migrazione manuale tra major release del prodotto. E' stato inoltre fornito un esempio di conversione di formato per una password. Chi necessitasse migrare molti dati ha due opzioni: |
| # Convertire le informazioni mediante l'ausilio di un editor di testo. | | # Convertire le informazioni mediante l'ausilio di un editor di testo. |
| # Predisporre uno script che esegua la conversione in automatico producendo un file di testo in linguaggio SQL da utilizzare con sqlite3 od altro client SQL. | | # Predisporre uno script che esegua la conversione in automatico producendo un file di testo in linguaggio SQL da utilizzare con sqlite3 od altro client SQL. |
| | | |
− | In qualunque modo si voglia procedere <nowiki>è</nowiki> sempre consigliato eseguire un back-up della sotto-directory .mozilla prima di qualsiasi altro passo. | + | In qualunque modo si voglia procedere è sempre consigliato eseguire un back-up della sotto-directory .mozilla prima di qualsiasi altro passo. |
| + | |
| + | |
| + | Per commenti, consigli, domande inviate una e-mail all'indirizzo ''studiosg [chiocciola] giustetti [punto] net''. |
| | | |
| | | |