Skip to content

9.7 Web 浏览器

本节介绍了如何在 FreeBSD 系统上安装和配置一些流行的 web 浏览器。

9.7.1 火狐浏览器

Firefox 是一款开源浏览器,具有符合标准的 HTML 渲染引擎、标签页浏览、弹出阻止、扩展功能、增强的安全性等特点。Firefox 基于 Mozilla 代码库。

9.7.1.1 安装最新版本的火狐浏览器

  • 使用 pkg 安装:
sh
# pkg install firefox
  • 或者使用 Ports:
sh
# cd /usr/ports/www/firefox
# make install clean

9.7.1.2 安装火狐浏览器扩展支持版本 (ESR)

  • 使用 pkg 安装:
sh
# pkg install firefox-esr
  • 或者使用 Ports:
sh
# cd /usr/ports/www/firefox-esr/
# make install clean

9.7.2 Chromium

Chromium 是一个开源浏览器项目,旨在提供更安全、更快速、更稳定的 web 浏览体验。Chromium 具有标签页浏览、弹出阻止、扩展支持等功能。Chromium 是 Google Chrome 浏览器的开源基石。

Chromium 不同于 Chrome,但是在 FreeBSD 中 Chromium 的启动命令为 chrome

  • 使用 pkg 安装 Chromium
sh
# pkg install chromium
  • 或者使用 Ports 安装 Chromium
sh
# cd /usr/ports/www/chromium
# make install clean

警告

要编译 Chromium,需要至少 8 GB 内存(Release 构建),或等量的交换分区与内存之和。若启用 LTO 优化则需 16 GB,若启用 Debug 构建则需 32 GB。Chromium 仅支持 amd64 和 aarch64 架构。

9.7.3 ungoogled-chromium

部分项目认为目前移除的组件仍不够彻底,因此提供了 Port www/ungoogled-chromium。该软件移除了更多与谷歌相关的不透明组件。

  • 使用 pkg 安装 ungoogled-chromium
sh
# pkg install ungoogled-chromium
  • 或者使用 Ports 安装 ungoogled-chromium
sh
# cd /usr/ports/www/ungoogled-chromium
# make install clean

9.7.4 Chrome(Linux 兼容层)

  • 使用 pkg 安装 Chrome
sh
# pkg install linux-chrome
  • 或者使用 Ports 安装 Chrome
sh
# cd /usr/ports/www/linux-chrome/
# make install clean

9.7.5 附录:让 Chromium 使用 Google 账号同步

作为开源项目,Chromium 与 Google Chrome 的关系类似于 AOSP 与 Pixel UI 的关系。Chromium 无法直接从 Google Chrome 的在线插件商店下载安装插件,只能手动从本地安装 crx(同步启用后可自动同步浏览器插件)。Chromium 也不自带 Google 翻译插件等功能。更多差异可参见:The Chromium Project. Chromium Browser vs Google Chrome[EB/OL]. [2026-03-26]. https://chromium.googlesource.com/chromium/src/+/master/docs/chromium_browser_vs_google_chrome.md. 该文档比较了 Chromium 与 Google Chrome 在功能和授权上的差异。

Chromium 并非 Google Chrome,前者是 The Chromium Project 在 BSD 3-Clause "New" or "Revised" License 下发布的开源与自由软件,后者是 Google LLC 的专有软件。该许可证允许自由使用、修改与再分发。

Chromium 89 版本发布后,Chromium 删除了之前自带的与 Chrome 相同的登录 Google 账号的默认 API。该公告说明了 Chromium 移除同步 API 的原因与影响。

在开始获取 token 之前,需要先加入以下两个 Google 邮件列表:

加入邮件列表

由于仅需 Chrome Google API 的访问权限,必须关闭这两个邮件列表的消息通知(即“不接收电子邮件”),否则将收到大量邮件通知。

关闭邮件通知

邮件列表设置

加入 Google browser sign-in test account 群组后,会看到“您无权访问此内容”等提示,此属正常现象,无需担心。

join-mail-list-for-google-api-error2

在浏览器中打开 谷歌云控制台网站

注意

登录控制台时使用的谷歌账户必须与之前加入邮件列表的账户一致。

谷歌云控制台首页

点击左上角的“My First Project”,然后在弹出窗口的右上角选择“新建项目”即可。

新建项目选项

项目名称可自行填写,组织保持默认设置。

填写项目信息

点击左上角的“My First Project”,然后在弹出窗口中选择刚才创建的项目(此处为 google-sync)。

选择项目

点击上图中的“API 和服务”,再点击“+ 启用 API 和服务”

启用 API 和服务

搜索“chrome-sync”找到下列内容。

搜索 Chrome Sync

点击启用“Chrome Sync API”

启用 Chrome Sync API

之后会在已启用的 API 和服务列表中显示下列状态

已启用 API 列表

选择“OAuth 权限请求页面”:

OAuth 权限页面

创建外部应用:

创建外部应用

填写应用信息

应用信息填写

应用详细信息

创建后如图:

应用创建完成

点击“客户端”,创建 OAuth 客户端 ID,应用类型为“桌面应用”:

创建 OAuth 客户端

创建后如图:

OAuth 客户端创建

点击创建的“桌面客户端 1”

查看客户端详情

获取以下凭据(此为示例,必须自行生成):

  • 客户端 ID 502882456359-okloi0a7k6vjodss69so97tmqmv0jjj5.apps.googleusercontent.com
  • 客户端密钥 GoCSPX-iKHEKZmP4w_zdq0Z8nwOqz6SF2_M

返回“API 和服务”,点击“+ 创建凭据”,再点击“API 密钥”。

创建 API 密钥

即可获得一个 API 密钥(此为示例,读者必须自行生成):AIzaSyDVpYvJQUn9HTjAiD89y3xBDOG3oaxV5_E

API 密钥生成

打开凭据概览:

凭据概览

编辑 ~/.profile 文件,加入:

sh
export GOOGLE_API_KEY=AIzaSyDVpYvJQUn9HTjAiD89y3xBDOG3oaxV5_E  # 这里填 API 密钥
export GOOGLE_DEFAULT_CLIENT_ID=502882456359-okloi0a7k6vjodss69so97tmqmv0jjj5.apps.googleusercontent.com  # 这里填客户端 ID
export GOOGLE_DEFAULT_CLIENT_SECRET=GoCSPX-iKHEKZmP4w_zdq0Z8nwOqz6SF2_M  # 这里填客户端密钥

注意

本节仅在默认 shell sh 和 KDE 6 下测试通过。其他环境下的配置欢迎提交反馈。

重启系统,再启动 Chromium。

点击“开启同步功能”:

开启同步功能

输入账户:

输入账户

输入账户密码:

输入密码

登录确认

查看同步情况:

同步状态

9.7.5.1 参考文献

9.7.6 故障排除与未竟事宜

9.7.6.1 解决 Chromium 出现未知错误导致占用大量系统资源的问题

将参数添加到启动图标中(图标为文本文件):

sh
chrome --disk-cache-size=0 --disable-gpu