news 2026/9/14 7:16:43

如何在 Debian 12 上为 WinApps 安装 FreeRDP 3 依赖?

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
如何在 Debian 12 上为 WinApps 安装 FreeRDP 3 依赖?

如何在 Debian 12 上为 WinApps 安装 FreeRDP 3 依赖?

【免费下载链接】winappsRun Windows apps such as Microsoft Office/Adobe in Linux (Ubuntu/Fedora) and GNOME/KDE as if they were a part of the native OS, including Nautilus integration. Hard fork of https://github.com/Fmstrat/winapps/项目地址: https://gitcode.com/GitHub_Trending/wina/winapps

WinApps 通过 FreeRDP 把 Windows 应用渲染到 Linux 桌面,因此它的安装脚本要求主机上已安装 FreeRDP 3 或更高版本(见 README.md),否则安装会在依赖检查阶段终止。本文只覆盖 Debian 12(bookworm)上“安装 FreeRDP 3 依赖”这一步:启用所需仓库、安装依赖包,并给出两种文档明确给出的验证方式,确认 FreeRDP 就绪后即可继续后续安装步骤。

准备条件

  • 主机为 Debian 12(bookworm),操作时可以使用sudo
  • 按 README.md 的说法,WinApps 要求 FreeRDP 主版本 3 或更高,且“the newer, the better”。
  • WinApps 安装流程的顺序是:创建 Windows 虚拟机 → 安装依赖 → 创建配置文件 → 测试 FreeRDP → 运行安装器。本文对应其中的“安装依赖”,不包含虚拟机创建(Docker/Podman 见 docs/docker.md,libvirt 见 docs/libvirt.md)。

先启用 backports 仓库(Debian 12 专属要求)

README 对 Debian 12 有一条专门说明:在 Debian 12("bookworm")上,必须先启用backports仓库,freerdp3-x11包才能被安装(README 指向 Debian 官方 backports 说明)。请按 Debian 官方说明启用 backports,然后更新软件包索引,使apt能够检索到freerdp3-x11

安装依赖包

README.md 的 Step 2 给出了 Debian/Ubuntu 的完整依赖命令:

sudo apt install -y curl dialog freerdp3-x11 git iproute2 libnotify-bin netcat-openbsd

其中freerdp3-x11是 FreeRDP 3 本体,其余包(curldialoggitiproute2libnotify-binnetcat-openbsd)同样是安装脚本必需项。安装脚本 setup.sh 在启动时会逐项检查gitcurldialognotify-send(libnotify)、nc(netcat)以及 FreeRDP 3,缺任何一项都会报错退出,所以建议按文档给出的整条命令安装,而不是只装 FreeRDP。

验证一:确认安装脚本能识别到 FreeRDP 3

setup.sh 中 FreeRDP 的检查逻辑是固定的:

  1. 依次探测xfreerdpxfreerdp3,以及 Flatpak 应用com.freerdp.FreeRDP
  2. 对找到的命令执行--version,从首行提取主版本号;
  3. 主版本号必须>= 3才算通过。

如果 FreeRDP 3 未被识别,脚本会输出ERROR: MISSING DEPENDENCIES,并提示Please install 'FreeRDP' version 3 to proceed.,同时为 Debian/Ubuntu 系系统给出建议命令sudo apt install freerdp3-x11(见 setup.sh)。因此这一步的判读标准是:运行 WinApps 安装器后,依赖检查不再报 FreeRDP 缺失。若仍报错,说明 backports 未生效或freerdp3-x11未装上,回到上一节检查。

另外注意:FreeRDP 命令名可能因系统而异(例如xfreerdpxfreerdp3)。如果你的系统上命令名不在这两个之内,可以在 WinApps 配置文件的FREERDP_COMMAND项中显式指定正确命令(README “Configuration Options Explained” 一节)。

验证二:用 RDP 连接测试确认 FreeRDP 可用(需 Windows 虚拟机已开机)

README 的 Step 4 给出了最直接的验证方式:直接用 FreeRDP 连接 Windows。把下面命令中/u:/p:/v:的值替换为~/.config/winapps/winapps.conf中实际配置的账号、密码与地址:

xfreerdp3 /u:"MyWindowsUser" /p:"MyWindowsPassword" /v:127.0.0.1:3389 /cert:tofu # Or, if you are using Podman podman unshare --rootless-netns xfreerdp3 /u:"MyWindowsUser" /p:"MyWindowsPassword" /v:127.0.0.1:3389 /cert:tofu # Or, if you installed FreeRDP using Flatpak flatpak run --command=xfreerdp com.freerdp.FreeRDP /u:"MyWindowsUser" /p:"MyWindowsPassword" /v:127.0.0.1:3389 /cert:tofu

成功判据来自文档:Windows 桌面在 FreeRDP 窗口中显示出来,即配置成功、RDP TLS 证书已在 Linux 主机上登记;若终端提示证书确认,选择永久接受。

如果终端出现类似WARNING: CERTIFICATE NAME MISMATCH!WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!的输出(以下为文档示例),则是旧的 RDP TLS 证书干扰了连接:

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: CERTIFICATE NAME MISMATCH! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ The hostname used for this connection (192.168.122.2:3389) does not match the name given in the certificate: Common Name (CN): RDPWindows ...

处理方法:删除~/.config/freerdp/server/下对应的旧证书,命名格式为<Windows-VM-IPv4-Address>_<RDP-Port>.pem(例如127.0.0.1_3389.pem),然后重试连接。若你还用 FreeRDP 连接其他机器,只删除与当前 Windows 虚拟机相关的证书;找不到相关证书则无需操作。

可选分支:发行版源里没有 FreeRDP 3 时

按 README 的说明,如果发行版源中拿不到 FreeRDP 3,可以按 FreeRDP 官方编译指南从源码编译,或改用 Homebrew、Nix 等第三方包管理器获取。Flatpak(Flathub 的com.freerdp.FreeRDP)也可行,但 README 明确表示不推荐,因为可能引发沙箱相关问题;如果选择 Flatpak,需要额外执行一次:

sudo flatpak override --filesystem=home com.freerdp.FreeRDP

该命令放开 Flatpak 内 FreeRDP 对home目录的访问,是+home-drive挂载生效的前提。

接下来

依赖就绪并通过验证后,按 README.md 继续 Step 3 与 Step 5:创建~/.config/winapps/winapps.conf(设置RDP_USERRDP_PASSRDP_IPWAFLAVOR等,其中RDP_USER/RDP_PASS必须是完整的 Windows 账户与密码,且配置完成后按文档建议收紧文件权限),最后运行 WinApps 安装器完成应用扫描与安装。

【免费下载链接】winappsRun Windows apps such as Microsoft Office/Adobe in Linux (Ubuntu/Fedora) and GNOME/KDE as if they were a part of the native OS, including Nautilus integration. Hard fork of https://github.com/Fmstrat/winapps/项目地址: https://gitcode.com/GitHub_Trending/wina/winapps

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/14 7:16:26

OpenClaw+腾讯云,广告营销Agent落地的完整实践

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/14 7:14:32

AWS CLI 实战:apigateway get-deployments 命令详解与部署列表查询

AWS CLI 实战&#xff1a;apigateway get-deployments 命令详解与部署列表查询 【免费下载链接】aws-cli Universal Command Line Interface for Amazon Web Services 项目地址: https://gitcode.com/GitHub_Trending/aw/aws-cli 导读 aws apigateway get-deployments …

作者头像 李华
网站建设 2026/9/14 7:12:14

Kafka-UI 完整上手:三步部署,5 分钟打开集群监控面板

Kafka-UI 完整上手&#xff1a;三步部署&#xff0c;5 分钟打开集群监控面板 【免费下载链接】kafka-ui Open-Source Web UI for Apache Kafka Management 项目地址: https://gitcode.com/GitHub_Trending/ka/kafka-ui 你刚接了一个 Kafka 集群&#xff0c;却只能靠命令…

作者头像 李华
网站建设 2026/9/14 7:11:23

ToF相机技术全解:从测距原理到工业应用落地

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华