close

我31版的Firefox用很久了,最近因為FB的標記有點問題,想換成最新版40,不過套件還好,除了貼上前往是開新分頁這個功能失效外,其它還行,但FB跑起來有點慢,所以還是用回31版。在升級時遇到一個問題,帳密儲存檔其中之一的signons.sqlite,在新版沒有了,改成logins.json來儲存。找不到直接轉換的方式,還想把檔案改名呢!當然,也有幾個套件是可以把帳密匯出再由新版匯入,不過我在外國網站找到一個用內建功能轉換帳密的方式,教給大家。

我是用免裝版的,所以以下的資料夾都以免裝版為主,安裝版的資料夾位置請自行搜尋網友的教學,謝謝。

首先,下載Firefox最新的免安裝版,解壓後開啟瀏覽器,自己把要設定的地方設好,就把它關掉。

到舊版的FirefoxPortable\Data\profile資料夾中,把裡面的signons.sqlite和key3.db二個檔複製到新版的FirefoxPortable\Data\profile資料夾中。

複製過程因為key3.db新舊版都有,它會問你要取代嗎?就按要取代,怕的話,你也可以先把新版的key3.db先複製下來,再做取代的動作。

好了之後,開啟新版瀏覽器,在網址列打about:config,按碓定進入。在搜尋條,也就是上方很像網址列的地方,複製這個signon.importedFromSqlite,按enter讓它搜尋,找到後按一下那個項目選取,然後在它上面按右鍵,選下方的重置,讓它成為預設值。這裡的作用應該是,因為新版是用logins.json來儲存帳密,所以在這裡把舊版的signons.sqlite叫出來成為預設值,讓系統暫時改成讀取signons.sqlite的資料。

好了就關閉瀏覽器,然後先備份logins.json,好了就把新版預設的logins.json刪除,只留備份。

再來重開新版瀏覽器,這時瀏覽器會去讀取舊版signons.sqlite裡的資料,把它全寫入系統自動產生的新的logins.json檔中。你可以一開啟瀏覽器,就到工具/選項/安全中,查看是否帳密資料都回來了,再來做下面的動作。

這邊做的應該只是確認不會有兩個資料庫同時在運作。在網址列中打上about:config確定後搜尋,找到signon.importedFromSqlite,在上面按二下,把值由true改成false就可以了。此時已確認舊版資料檔沒有在運作,接著關閉瀏覽器,然後把新版中留下來的舊版signons.sqlite檔刪除即可。

用寫的寫很多,用圖比較簡單,有點懶,文字解釋應該很清楚了,若有疑問或不會用的話,歡迎留言詢問,謝謝大家。

更新:2018.9.29 最新版的Firefox改用key4.db,方法一樣,不過因為新版內建一個key4.db,所以要先把它刪掉,複製key3.db和logins.json過去,在做about:config的那幾個動作即可。如果你是舊版的,則複製key3.db和signons.sqlite過去。新舊版都一樣,讀取舊資料後,會自動生成一個key4.db,把資料寫入。

2020.4.26 昨天要用Firefox 75版,發現它的signon.importedFromSqlite只有true或false可選,按右鍵無法作用,也就是重置功能被鎖起來了,所以如果你用的版本重置功能已經鎖住的話,就無法使用這個方法,目前我沒找到其它的方式匯入帳密,只能手動升級了。


 

arrow
arrow
    全站熱搜

    ppg2x 發表在 痞客邦 留言(0) 人氣()