
當您從以下位置安裝 Firefox 時 Mozilla 在 Ubuntu 上的官方軟體倉庫 如果卸載 Snap 版本,理論上一切都應該保持不變。但許多用戶都遇到了同樣的問題:重新啟動系統或安裝更新後, Firefox 以 Snap 格式重新面世 就好像什麼都沒發生過一樣。如果這種情況發生過好幾次,那並不是因為你的操作有誤:這是 Ubuntu 在 APT 和軟體包優先權配置不正確時的預設行為。
本文將逐步介紹如何 在 Ubuntu 上從 Mozilla 官方 APT 軟體來源安裝 Firefox。如何徹底卸載 Snap 軟體包,更重要的是,如何防止系統在未來的更新中重新安裝它。最終目標是讓您獲得一個與系統完美整合的 Firefox .deb 軟體包,並尊重諸如以下方面的設定: 遊標主題、GTK 主題和外觀而且無需每天重新安裝 Snap。
為什麼 Ubuntu 堅持要以 Snap 格式安裝 Firefox?
從 Ubuntu 22.04 LTS 開始,Canonical 就對…做出了堅定承諾。 適用於桌面應用程式的 Snap 包Firefox 就是最明顯的例子之一。在這些版本中,來自官方 Ubuntu 軟體倉庫的 Firefox 軟體包基本上就是一個 空過渡包 它會直接安裝 Firefox Snap 套件。所以,即使你看到的是一個普通的 .deb 文件,實際上執行的是 Snap 套件。
這意味著如果您從其他來源(例如, 官方 Mozilla 軟體倉庫而且,一旦有更新或系統認為需要「修復」依賴項,你就不會立即更改 APT 的優先順序。 從 Ubuntu 重新安裝 Firefox 軟體包。隨之而來的是 Snap。這就是為什麼每次系統重新啟動或完全更新後,你都會看到 Snap 格式的 Firefox 的原因。
此外,許多用戶注意到 Firefox Snap 存在一些令人困擾的副作用,例如: 自訂圖示主題或遊標出現問題與某些桌面主題的兼容性較差,啟動速度稍慢,以及一些奇怪的權限問題。這就是為什麼越來越多的人更喜歡… 使用傳統的 Firefox .deb 文件可以從 Mozilla Team PPA 獲取,或更直接、更簡潔地從官方 Mozilla APT 儲存庫獲取。
在 Ubuntu 上使用 Firefox .deb 的選項
在 Ubuntu 系統中,你有兩個主要路徑可以實現這一點。 Firefox 的 .deb 格式 無需依賴 Snap。兩者都可行,但重要的是要了解它們各自的功能,以避免混淆可能導致後續衝突的配置。
第一個選擇是 使用 PPA“mozillateam” (LP-PPA-mozillateam)。多年來,這款 PPA 一直是最新版 Firefox 的首選來源,以及 ESR 和 Thunderbird 版本 以 .deb 格式提供。它支援快速更新,通常比 Ubuntu 軟體倉庫更新更快,並且與系統整合度很高。但是,如果您使用它,則必須設定 APT 優先級,以防止 Ubuntu Firefox(使用 Snap)再次偷偷安裝。
第二個選擇,也是更新且強烈推薦的,是添加 Mozilla 的官方 APT 倉庫 (packages.mozilla.org)。透過這種方法,Firefox 直接從 Mozilla 獲取,無需中間商,格式為 .deb,您可以配置 APT 來… 始終偏愛這種來源 與其他任何 Firefox 軟體包倉庫相比,這個倉庫都更勝一籌。此外,Mozilla 官方文件已將此倉庫指定為在 Ubuntu 和其他基於 Debian 的發行版上安裝 Firefox 的首選方式。
首先:清理 Firefox Snap 及其任何殘留檔案。
在開始從官方 Mozilla 軟體倉庫安裝之前,必須先了解以下幾點: 徹底清除 Firefox Snap 的所有痕跡 此外,如果您使用了 Mozilla Team PPA,也請清理該 PPA 及其優先權規則。此清理操作可防止軟體套件來源衝突,避免出現不同版本混雜的混亂局面。
如果您目前已從以下管道安裝了 Firefox: 官方 Ubuntu Snap第一步是從終端中徹底卸載它。為此,請打開控制台並運行:
sudo snap 刪除火狐
在某些情況下,新增清除選項是個好主意,這樣Snap管理的資料和設定也會被刪除,因此可以使用Snap。 snap remove –purge firefox 如果您想對 Snap 包裝及其殘留物進行更徹底的清潔。
在 Ubuntu 22.04 及更高版本中,除了 Snap 之外,您可能還會安裝以下軟體: 火狐過渡包 從 APT 中移除它,它實際上只是 Snap 的容器。要移除它並阻止 APT 使用它作為橋接器重新安裝 Snap,請運行:
sudo apt remove --autoremove firefox
如果系統提示沒有可移除的內容,那就沒問題;這表示該軟體包已不再安裝。重要的是要確保… 請確保沒有指向 Snap 來源的 Ubuntu Firefox .deb 檔案。因為這正是未來更新中重新啟用 Snap 軟體包安裝的方法。
如果您之前使用過 Mozilla Team PPA,如何停用它?
如果您之前有過 從 mozillateam PPA 安裝的 Firefox最好在切換到官方 Mozilla 軟體倉庫之前先把所有東西都整理好。雖然可以同時維護兩個軟體倉庫,但這可能會導致 APT 的優先順序和版本資訊混亂,所以最簡潔的方法是只選擇一個。
若要從系統中移除 mozillateam PPA,請在終端機中執行以下命令,該命令會移除該軟體來源:
sudo add-apt-repository -r ppa:mozillateam/ppa
除了 PPA 本身之外,您可能還有一個 APT 首選項文件,其中將此儲存庫列為優先來源。它通常位於 /etc/apt/preferences.d/mozilla-firefox 或類似的名稱。若要徹底刪除而不留痕跡,您可以執行以下操作:
sudo rm -rf /etc/apt/preferences.d/mozilla-firefox
一些教程還建議創建一個類似這樣的文件。 /etc/apt/preferences.d/99mozillateamppa如果您有同名文件,請檢查其內容;如果您不再需要依賴 mozillateam PPA,請將其刪除。這將移除任何可能幹擾 Mozilla 官方軟體來源的過時規則。
從 Mozilla 官方 APT 軟體來源安裝 Firefox
現在舊的Snap和PPA都已清除,是時候… 新增官方 Mozilla 軟體來源 以 .deb 格式安裝 Firefox。此方法在 Ubuntu 24.04 LTS 以及與現代 APT 相容的早期版本上均可完美運作。
建立 APT 金鑰目錄(如果該目錄不存在)。
APT 儲存庫簽署金鑰通常儲存在 /etc/apt/trusted.gpg.d雖然有些教程建議建立一個專門的目錄來存放外部提供者金鑰,但如果該目錄已經存在,則無需執行任何操作;否則,您可以使用以下命令建立它:
sudo mkdir -p /etc/apt/trusted.gpg.d
這一步驟保證您將擁有一個 存放 Mozilla 簽章金鑰的合適位置這對於 APT 信任從新儲存庫下載的軟體包至關重要。
從 Mozilla 程式碼庫匯入簽章金鑰
下一步是添加 Mozilla APT 倉庫的官方 GPG 金鑰此金鑰可用於驗證下載的軟體包是否確實來自 Mozilla,且未被竄改。您可以使用終端機中的 wget 命令來完成此操作,如下所示:
wget -q https://packages.mozilla.org/apt/repo-signing-key.gpg -O- | sudo tee /etc/apt/trusted.gpg.d/packages.mozilla.org.asc > /dev/null
如果您的系統沒有 wget 已安裝您可以先透過簡單的方式添加它。 須藤 apt 安裝 wget金鑰導入後,APT 將能夠驗證來自 packages.mozilla.org 的軟體包,而不會顯示未知簽章警告。
將 Mozilla APT 軟體來源加入到軟體來源清單中
鑰匙安裝完畢後,現在是時候進行整合了。 Mozilla軟體包倉庫 追溯軟體的原始來源。您可以透過兩種方式完成此操作:透過「程式和更新」的圖形介面,或直接在終端機中編輯檔案。
如果您更喜歡圖形介面,請開啟“程序和更新前往“其他軟體”選項卡,然後按一下“新增”。在文字方塊中,輸入儲存庫中的以下完整程式碼行,然後儲存變更:
deb https://packages.mozilla.org/apt mozilla main
如果你想透過終端機來完成,你也可以建立一個新檔案。 /etc/apt/sources.list.d 把那一行程式碼加入文字檔案中,例如使用你常用的文字編輯器。重要的是,APT 知道來源檔案的存在。 https://packages.mozilla.org/apt 包含“mozilla main”部分。
配置 APT 以優先使用 Mozilla 軟體來源並阻止 Snap 應用。
防止 Firefox Snap 重新安裝的關鍵在於: 正確配置 APT 優先級僅僅添加 Mozilla 軟體倉庫是不夠的;你必須告訴系統始終優先使用該軟體倉庫獲取 Firefox,並且拒絕來自 Ubuntu 軟體倉庫的、指向 Snap 的 Firefox 軟體包。
為了可靠地實現這一點,建議在以下位置建立一個首選項檔案: /etc/apt/preferences.d 這包括兩個模組:一個模組賦予 packages.mozilla.org 最高優先權,另一個模組賦予 Ubuntu Firefox 最低優先權。您可以使用 `echo` 和 `tee` 命令在一條命令中完成此操作,無需逐行複製,如下所示:
echo 'Package: * Pin: origin packages.mozilla.org Pin-Priority: 1000 Package: firefox* Pin: release o=Ubuntu Pin-Priority: -1' | sudo tee /etc/apt/preferences.d/mozilla
第一個方框表示: 任何源自 packages.mozilla.org 的軟體包 它的優先順序為 1000,實際上這意味著 APT 總是優先選擇它,而不是其他具有相同軟體包版本的來源。第二個配置區塊告訴 APT,名稱以 firefox 開頭且來自 [此處應填寫來源] 的軟體包。 Ubuntu存儲庫 它們的優先順序為 -1,這意味著它們不應該自動安裝。
這樣一來,你就能一舉兩得: 請確保從 Mozilla 官方軟體倉庫安裝並更新 Firefox。 同時,您還可以阻止 Ubuntu 在執行常規系統升級時重新插入其與 Snap 相關的過渡軟體包。
更新索引並從 Mozilla 安裝 Firefox
新增軟體來源並調整首選項後,現在可以指示 APT 更新可用軟體包列表,然後從 [此處應填寫安裝來源名稱] 全新安裝 Firefox。 packages.mozilla.org為確保沒有殘留物,您可以事先進行少量清潔。
首先,請使用以下命令刪除可能殘留的任何先前 Firefox .deb 安裝套件及其 APT 翻譯:
sudo apt purge firefox sudo apt purge firefox-locale-es sudo apt autoremove
這樣可以確保瀏覽器和先前來源(Ubuntu 或 PPA)關聯的西班牙語語言套件都被刪除。您的個人 Firefox 資料(設定檔、書籤、密碼)通常儲存在您的… 使用者目錄所以通常情況下,在清理軟體包時不會丟失它們,但為了以防萬一,最好還是備份一下。
現在更新軟體包信息,並將任何待處理的更新應用到其他元件,以便在安裝新版 Firefox 之前完成所有同步:
sudo apt update sudo apt upgrade
完成這些步驟後,您就可以安裝瀏覽器,如果您願意的話,還可以安裝… 西班牙語本地化包 直接從 Mozilla 官方倉庫下載。運行:
sudo apt install firefox sudo apt install firefox-l10n-es-es
如果 APT 首選項配置正確,APT 將選擇 來自 packages.mozilla.org 的 Firefox 不再使用其他任何可用版本。從現在起,未來的 Firefox 更新將來自 Mozilla 軟體倉庫,不再使用 Ubuntu Snap。
另一種方法:使用特定置頂的 Mozilla 團隊 PPA。
如果您希望繼續使用 PPA Mozilla 團隊 除了官方的 Mozilla 軟體來源之外,您還可以使用更新後的 Firefox .deb 文件,以防止系統回退到 Ubuntu Snap 版本。這是一種略有不同的方法,但對於已經依賴該 PPA 或同時使用該 PPA 安裝 Thunderbird 的用戶來說同樣有效。
若要新增此 PPA,請開啟終端機並執行以下命令,該命令會將來源新增至您的系統並更新索引:
sudo add-apt-repository ppa:mozillateam/ppa -y
添加完成後,最好刷新軟體倉庫並安裝一些基本更新,以確保所有內容都與新的 PPA 版本保持一致。您可以使用以下命令執行此操作:
sudo apt update sudo apt upgrade
如果您的系統需要,您也可以使用 sudo apt全面升級 雖然可以進行更深層的更改,但建議事先進行審查,以免影響 Firefox 或 Thunderbird 以外的其他關鍵軟體包。
若要強制 APT 始終使用此 PPA 中的 Firefox 並阻止 Ubuntu 版本,請建立一個類似於 Mozilla 軟體來源的首選項文件,但指向 LP-PPA-mozillateam。例如,您可以使用 nano 編輯器執行下列操作:
須藤奈米 /etc/apt/preferences.d/99mozillateamppa
在該檔案中通常使用兩個程式碼區塊:一個用於強制使用 Mozilla Team PPA,另一個用於阻止從 Ubuntu 軟體倉庫安裝 Firefox。一個典型的例子是:
軟體包:firefox* 版本號:release o=LP-PPA-mozillateam 版本號優先權:501 軟體包:firefox* 版本號:release o=Ubuntu 版本號優先權:-1
第一個代碼區塊告訴APT, 來自 mozillateam PPA 的 Firefox 它必須優先於官方軟體倉庫。第二個規則明確阻止了 Ubuntu Firefox 軟體包,該軟體包通常會重定向到 Snap 版本。這可以防止系統在執行常規更新時嘗試回溯到該過渡軟體包。
要從這個 PPA 安裝西班牙文版的 Firefox,通常需要使用一個指定對應來源的指令,這樣就不會搞錯正在使用的軟體倉庫。例如:
sudo apt install -t 'o=LP-PPA-mozillateam' firefox firefox-locale-es
此後,Firefox 會隨著 PPA 團隊上傳的新版本自動更新,通常速度很快。這種方法已在多個發行版上測試過,例如: Ubuntu 和 Kubuntu 22.04 或 22.10許多使用者也用它來取得 Thunderbird 和 Firefox ESR 的 .deb 格式版本。
使用 Firefox .deb 套件相比 Snap 套件的優勢
除了儲存庫和優先順序的技術方面之外,許多用戶還在尋找… 使用 Firefox .deb 而不是 Snap 出於整合和流暢性的考量。一個非常特殊的例子是那些想要保留或正確應用的人。 自訂遊標主題這一點在 Snap 中可能不會得到同樣的尊重,正是因為這種類型的軟體包固有的隔離性。
.deb 軟體包通常與以下系統整合得更好: 桌面主題、圖示、系統設置 以及其他元件,因為它們共享相同的庫環境和典型的分發路徑。此外,在使用系統擴展或外部整合時,它們的啟動速度往往更快,行為也更可預測。
相較之下,Snap 在隔離性、打包依賴項以及跨多個發行版提供相同應用程式的便利性方面具有優勢,但實際上,就目前的情況而言, 他們尚未完全說服社區的大部分成員。 Ubuntu 桌面用戶普遍使用 Firefox Snap。因此,人們希望用 Mozilla 或 Mozilla 團隊直接維護的傳統 .deb 檔案取代 Firefox Snap 也就不足為奇了。
按照以上所有步驟,從完全移除 Snap 到配置 APT 具有適當的優先權和儲存庫在 Ubuntu 上,您可以保持 Firefox .deb 套件功能齊全且始終保持最新,而無需每次關機或接受更新時系統都重新安裝 Snap 套件。關鍵在於清理舊的來源,正確設定版本固定,並選擇您是否偏好… Mozilla 官方倉庫或 mozillateam PPA這樣一來,無論哪種情況,你都可以避免使用強制使用 Snap 的 Ubuntu 過渡套件。