Linux 上的 Microsoft Teams:网页版、PWA 还是 Pake 窗口
微软的系统要求页没有给 Linux 列原生 Teams 客户端,写的是 Linux 用户可以用 Teams 网页版和作为渐进式网页应用(PWA)的 Teams。要开会打电话,就用 Edge 或 Chrome 安装 PWA。用 Pake 给 Teams 网站打一个包,能得到一个带托盘图标的聊天窗口,但它跑在 WebKitGTK 上,不在微软列出的浏览器名单里,而且在 Linux 上 Pake 不处理摄像头和麦克风的权限请求,WebKitGTK 默认会拒绝。
微软怎么说
微软的系统要求页里有一节专讲 Linux,全文就是 Linux 用户可以使用 Teams 网页版和作为 PWA 的 Teams。它同时列出 Teams 网页版支持 Edge、Chrome 和 Firefox,版本是最新的三个,系统覆盖 Windows、macOS 和 Linux。截至 2026-10-19,这个页面标注的日期是 2026 年 7 月,上面没有任何 Linux 下载。
PWA 页面说,网页版 Teams 可以在 Edge 或 Chrome 里安装为 PWA,由浏览器托管,仍然在浏览器的沙盒里运行,并把登录时自动启动和固定到任务栏或程序坞列为好处。
网页版做不到什么
微软的网页版前提条件页说 Teams 网页版与桌面客户端功能接近对等,随后列出缺的东西,分别是多个账号和租户同时在线及其通知、聊天和频道的弹出窗口,以及除背景模糊以外的虚拟形象和视频背景。更长的功能清单还有分组讨论室管理、空间音频、语音隔离、高保真音乐模式、演示者模式和给予或接管屏幕共享控制,并写明会议里画廊视图在 Edge 和 Chrome 里最多九个,在 Firefox 和 Safari 里最多四个。
这些都不是 Linux 独有的,是网页版在所有系统上的样子,所以 Pake 窗口有同样的缺口,可能还更多。
怎么选
| 任务 | 更合适的选择 | 原因 |
|---|---|---|
| 参加或主持通话和会议 | Edge 或 Chrome 的 PWA,或在这两个浏览器里打开网站 | 微软点名的是这些浏览器,画廊上限和策略说明也是针对它们写的 |
| 聊天、频道、文件 | PWA 或 Pake 窗口 | 窗口可以小一些 |
| 同一个网页会话里同时登录多个租户 | 两者都不支持 | 独立浏览器配置或多份 Pake 应用是另一种做法 |
| 习惯用 Firefox | 在 Firefox 里打开 Teams 网站 | PWA 安装只有 Edge 或 Chrome |
优先试 PWA。Edge 里,微软的帮助页给的路径是 Settings and more、More tools、Apps、Install this site as an app,装好的应用会出现在 edge://apps,这一页没有提到 Linux,所以要自己确认你的 Edge 有没有这个入口。Chrome 里,Google 的帮助写的是 More、Cast, save, and share、Install page as app...。先打开 teams.microsoft.com 并登录,再安装。
打一个 Pake 窗口
Pake CLI 用系统的网页视图给网站套窗口,Linux 上是 WebKitGTK,不是 Chromium。需要 Node.js 20.9 或更高、Rust 1.85 或更高,以及发行版的 WebKitGTK 开发包,CLI FAQ 列了清单,入门指南讲其余部分,各种包格式在 Linux 上的 ChatGPT 和 Claude 里讲得更细。
npm install -g pake-cli
pake https://teams.microsoft.com --name Teams --width 1280 --height 800 --show-system-tray --hide-on-close --targets deb
--name Teams 在 Linux 上会变成 teams。--show-system-tray 加托盘图标,--hide-on-close 让关闭窗口时应用继续运行,Linux 上默认是关的,--targets 选 deb、rpm、appimage 或 zst。装构建出来的文件,比如 sudo apt install ./teams.deb。
2026-10-19 时,不带浏览器 user agent 访问 teams.microsoft.com 的请求会被重定向到 /v2/unsupported-browser,所以 Teams 确实会看客户端自称是什么。不加 --user-agent 时,Linux 上的 Pake 应用报的是一个 Safari 风格的字符串,而微软只在 macOS 上列了 Safari。如果你看到不支持的浏览器页面,就用 --user-agent 传一个当前的 Linux 版 Chrome 或 Edge 字符串再打包一次,做法见 User Agent 那篇,它只改网站被告知的内容,不改引擎。
窗口在底下怎么运作
Linux 上的 Pake 应用是一个 Tauri 外壳,用 WebKitGTK 画页面,所以引擎就是你的发行版带的那个版本。Teams 网页版是一个一整天都开着的大页面,FAQ 说 Pake 应用占用的内存来自引擎和页面。Pake 还会替换页面的 Notification API 并把权限报成已授权,把提醒交给桌面的通知服务,见通知那篇。原生桥只授予配置的那个源,而登录会把窗口带到别的微软地址,Pake 认得 login.microsoftonline.com 是登录地址并让它留在窗口里,但如果登录后 Teams 停在另一个源上,提醒就没了,所以要再测一次提醒还会不会来。
开会之前先测通话
通话、屏幕共享和摄像头取决于 WebKitGTK 是否给页面放行。Pake 的 CLI 文档只在 macOS 上提供摄像头和麦克风选项(--camera、--microphone)。在 Pake CLI 3.17.6(Tauri 2.10.2、wry 0.54.2)里,Pake 和它底下的 Tauri、wry 都不处理 WebKitGTK 的权限请求,而 WebKitGTK 的参考文档写明,没人处理的摄像头或麦克风请求默认会被拒绝。所以在 Linux 的 Pake 窗口里,麦克风和摄像头大概率会被拒,正式会议之前先这样确认:
- 和同事或第二个账号加入一场测试会议。
- 确认能听到对方,对方能听到你,摄像头指示灯会亮。
- 先共享一个窗口,再共享整个屏幕,Wayland 上的屏幕捕获走桌面的 portal,各桌面环境表现不一。
- 窗口隐藏时让别人给你发消息,测试托盘和提醒。
任何一步失败,通话就用 PWA 或 Edge、Chrome 里的网站,Pake 窗口只留给聊天,Linux 上没有哪个 Pake 选项能改变媒体权限。
出问题的时候
- 登录时跳到了浏览器。应用认为是外部的链接会在浏览器里打开,
--safe-domain能让可信域名留在窗口里,但这个列表会替换 Pake 默认的同站规则,所以要把 Teams 自己的域名也写上,比如--safe-domain microsoft.com,microsoftonline.com,登录链接怎么分流见登录排查。 - Wayland 下按钮点不动或打字没反应。FAQ 针对这种情况给的是
PAKE_LINUX_WEBKIT_SAFE_MODE=0 ./teams.AppImage,强制走 WebKit 原生渲染,要是这样启动后窗口一片空白,再换成=1,把保守的渲染参数开回来。 - 在 Arch 或 Fedora 上 AppImage 找不到
WebKitNetworkProcess。Arch 上用--targets zst打包,或者用 Pake 的 Docker 镜像。 - 每次启动都要重新登录。检查是不是加了
--incognito。
常见问题
Linux 上有 Teams 官方应用吗
现在没有,微软的系统要求页给 Linux 列的是 Teams 网页版和 PWA。
Firefox 能用吗
微软列出了包括 Linux 在内的 Firefox 上的 Teams 网页版,会议里的画廊上限更小,PWA 这条路只有 Edge 或 Chrome。
微软支持 Pake 窗口吗
微软的名单里是 Edge、Chrome、Firefox 和 Safari,基于 WebKitGTK 的窗口不在其中,所以通话当作未经测试,用名单里的浏览器。
