Ubuntu24使用Wine运行Windows程序安装微信
零、前言摘要
最近大家都知道的,我在学嵌入式相关的内容,这样就不可避免的要用到Linux系统,之前是使用的虚拟机来着,但是虚拟机用着毕竟还是没得真机好用,恰好我有两台电脑,故在其中一台上安装了Ubuntu系统。那既然是真实设备,就不可避免的要做一些开发以外的工作,例如文档处理、交流沟通等……,但是很多软件只提供Windows版本,没得对应的Linux版,或者说Linux版不好用,所以有在Ubuntu上运行Windows应用的这个需求。第一个能想到的思路是使用虚拟机,但是虚拟机用来聊天?处理文档?怎么想都不太方便吧!简单思考后想到第二个方案,使用Wine技术,很久之前听说过Linux中有一个Windows应用兼容层,叫Wine,它不是虚拟机,能在Linux中运行Windows程序!好东西,想尝试,故本文介绍并探讨在Linux(Ubuntu 24)中如何使用Wine,并尝试用它安装并运行一个Windows版的微信。
壹、软件介绍
这里对接下来要用到的一些软件进行介绍,以明白其作用。
1. Wine
核心软件,用于运行Windows程序。
Wine (“Wine Is Not an Emulator” 的首字母缩写)是一个能够在多种 POSIX-compliant 操作系统(诸如 Linux,macOS 及 BSD 等)上运行 Windows 应用的兼容层。Wine 不是像虚拟机或者模拟器一样模仿内部的 Windows 逻辑,而是将 Windows API 调用翻译成为动态的 POSIX 调用,免除了性能和其他一些行为的内存占用,让你能够干净地整合 Windows 应用到你的桌面。
2. dirmngr
基础软件,用于https协议,一般自带有。
dirmngr的主要作用是管理GPG密钥。 它负责公钥和私钥的存储、验证和管理,确保密钥的安全性和完整性。
3. ca-certificates
基础软件,用于https协议,一般自带有。
ca-certificates是一个包含受信任的根证书的软件包,这些根证书用于验证SSL/TLS证书链的开始,确保与服务器通信的安全。简单来说,当你通过HTTPS访问网站时,浏览器会检查网站的SSL证书是否有效。这个证书是由一个受信任的证书颁发机构(CA)签发的。ca-certificates包含了这些受信任的CA的证书,使得系统能够验证SSL证书的合法性。
4. curl
工具软件,用于下载服务器文件。
cURL是一个利用URL语法在命令行下工作的文件传输工具,1997年首次发行。它支持文件上传和下载,所以是综合传输工具,但按传统,习惯称cURL为下载工具。cURL还包含了用于程序开发的libcurl。
5. software-properties-common
基础软件,用于管理软件源,一般自带有。
software-properties-common是一个软件包,它提供了一个公共的软件源配置工具,可以用于添加、删除和管理软件源。它是Ubuntu和Debian等Linux发行版中常用的软件包之一。
6. apt-transport-https
基础软件,让旧版apt能够访问https协议的存储库,Ubuntu新版系统可以不需要。
apt-transport-https包为apt添加了 https 支持。要新增一个使用 https 的存储库,首先就得先安装此包。
7. Winetricks
Winetricks 是一个辅助脚本,可以帮助你轻松安装和管理 Windows 应用程序和库,从而优化 Wine 的使用体验。
8. 微信
应用软件,有社交或其他的功能,最终要安装的软件。
微信(WeChat)是腾讯公司于2011年1月21日推出的一个为智能终端提供即时通讯服务的免费应用程序,由腾讯广州研发中心产品团队打造。微信支持跨通信运营商、跨操作系统平台通过网络快速发送免费(需消耗少量网络流量)语音短信、视频、图片和文字,同时,也可以使用通过共享流媒体内容的资料和基于位置的社交插件“摇一摇”、“朋友圈”、“公众平台”、“语音记事本”等服务插件。
贰、安装Wine
接下来介绍如何在Linux(Ubuntu24)上安装Wine,大致分为三步:环境配置、软件安装和软件配置。
一、环境配置
1. 软件镜像源
由于各种原因,Ubuntu默认的软件源速度很慢,故需要更换成国内的镜像软件源,更换方法可以参考如下链接:
- 【Ubuntu】Ubuntu 24 配置镜像源:https://www.cnblogs.com/minuhy/p/18387749
- ubuntu镜像_ubuntu下载地址_ubuntu安装教程-阿里巴巴开源镜像站:https://developer.aliyun.com/mirror/ubuntu
2. 软件更新
这步主要是更新软件包列表,升级软件根据自己的情况选择是否升级,但是推荐升级。
(1)更新软件包列表:
sudo apt update
(2)升级软件:
sudo apt upgrade
3. 安装依赖
这步主要安装软件介绍中的工具软件和基础软件,新版Linux系统(Ubuntu24)已包含必要的基础软件,只需要安装(3)工具软件即可,工具软件后续使用Linux也会有很多用得到的地方的。
(1)dirmngr、ca-certificates和software-properties-common一般已自带,可以使用dpkg -l | grep 软件名
查看是否已安装,若未安装,可执行以下命令以安装dirmngr、ca-certificates和software-properties-common:
sudo apt install dirmngr ca-certificates software-properties-common
(2)apt-transport-https可以让旧版apt支持https协议,使用apt --version
命令可以查询apt的版本号,版本大于1.5就可以不需要安装,否则执行以下命令以安装apt-transport-https:
sudo apt install apt-transport-https
(3)curl是用于下载的工具软件,一般不自带,若未安装,执行以下命令以安装curl:
sudo apt install curl
4. 配置系统架构
执行如下命令以启用 32 位系统架构支持,增强对游戏和应用程序的兼容性:
sudo dpkg --add-architecture i386
5. 添加Wine软件源仓库
Wine的软件源需要手动添加一下。
(1)下载和添加Wine软件源的GPG密钥,后面连接到软件源时需要用到(确保软件源是受信任的)。
- 创建目录,这个目录用来保存软件源密钥:
sudo mkdir -pm755 /etc/apt/keyrings
- 下载密钥到新创建的目录中:
sudo wget -O /etc/apt/keyrings/winehq-archive.key https://dl.winehq.org/wine-builds/winehq.key
- 如果提示超时,可以使用vi编辑器写入文件:
sudo vi /etc/apt/keyrings/winehq-archive.key
- winehq-archive.key的内容(可能会变,以https://dl.winehq.org/wine-builds/winehq.key的为准,wget下载不来可以尝试在浏览器中下载):
-----BEGIN PGP PUBLIC KEY BLOCK-----
mQGNBFwOmrgBDAC9FZW3dFpew1hwDaqRfdQQ1ABcmOYu1NKZHwYjd+bGvcR2LRGe
R5dfRqG1Uc/5r6CPCMvnWxFprymkqKEADn8eFn+aCnPx03HrhA+lNEbciPfTHylt
NTTuRua7YpJIgEOjhXUbxXxnvF8fhUf5NJpJg6H6fPQARUW+5M//BlVgwn2jhzlW
U+uwgeJthhiuTXkls9Yo3EoJzmkUih+ABZgvaiBpr7GZRw9GO1aucITct0YDNTVX
KA6el78/udi5GZSCKT94yY9ArN4W6NiOFCLV7MU5d6qMjwGFhfg46NBv9nqpGinK
3NDjqCevKouhtKl2J+nr3Ju3Spzuv6Iex7tsOqt+XdZCoY+8+dy3G5zbJwBYsMiS
rTNF55PHtBH1S0QK5OoN2UR1ie/aURAyAFEMhTzvFB2B2v7C0IKIOmYMEG+DPMs9
FQs/vZ1UnAQgWk02ZiPryoHfjFO80+XYMrdWN+RSo5q9ODClloaKXjqI/aWLGirm
KXw2R8tz31go3NMAEQEAAbQnV2luZUhRIHBhY2thZ2VzIDx3aW5lLWRldmVsQHdp
bmVocS5vcmc+iQHOBBMBCgA4AhsDBQsJCAcCBhUKCQgLAgQWAgMBAh4BAheAFiEE
1D9kAUU2nFHXht3qdvGiD/mHZy8FAlwOmyUACgkQdvGiD/mHZy/zkwv7B+nKFlDY
Bzz/7j0gqIODbs5FRZRtuf/IuPP3vZdWlNfAW/VyaLtVLJCM/mmaf/O6/gJ+D+E9
BBoSmHdHzBBOQHIj5IbRedynNcHT5qXsdBeU2ZPR50sdE+jmukvw3Wa5JijoDgUu
LGLGtU48Z3JsBXQ54OlnTZXQ2SMFhRUa10JANXSJQ+QY2Wo2Pi2+MEAHcrd71A2S
0mT2DQSSBQ92c6WPfUpOSBawd8P0ipT7rVFNLJh8HVQGyEWxPl8ecDEHoVfG2rdV
D0ADbNLx9031UUwpUicO6vW/2Ec7c3VNG1cpOtyNTw/lEgvsXOh3GQs/DvFvMy/h
QzaeF3Qq6cAPlKuxieJe4lLYFBTmCAT4iB1J8oeFs4G7ScfZH4+4NBe3VGoeCD/M
Wl+qxntAroblxiFuqtPJg+NKZYWBzkptJNhnrBxcBnRinGZLw2k/GR/qPMgsR2L4
cP+OUuka+R2gp9oDVTZTyMowz+ROIxnEijF50pkj2VBFRB02rfiMp7q6iQIzBBAB
CgAdFiEE2iNXmnTUrZr50/lFzvrI6q8XUZ0FAlwOm3AACgkQzvrI6q8XUZ3KKg/+
MD8CgvLiHEX90fXQ23RZQRm2J21w3gxdIen/N8yJVIbK7NIgYhgWfGWsGQedtM7D
hMwUlDSRb4rWy9vrXBaiZoF3+nK9AcLvPChkZz28U59Jft6/l0gVrykey/ERU7EV
w1Ie1eRu0tRSXsKvMZyQH8897iHZ7uqoJgyk8U8CvSW+V80yqLB2M8Tk8ECZq34f
HqUIGs4Wo0UZh0vV4+dEQHBh1BYpmmWl+UPf7nzNwFWXu/EpjVhkExRqTnkEJ+Ai
OxbtrRn6ETKzpV4DjyifqQF639bMIem7DRRf+mkcrAXetvWkUkE76e3E9KLvETCZ
l4SBfgqSZs2vNngmpX6Qnoh883aFo5ZgVN3v6uTS+LgTwMt/XlnDQ7+Zw+ehCZ2R
CO21Y9Kbw6ZEWls/8srZdCQ2LxnyeyQeIzsLnqT/waGjQj35i4exzYeWpojVDb3r
tvvOALYGVlSYqZXIALTx2/tHXKLHyrn1C0VgHRnl+hwv7U49f7RvfQXpx47YQN/C
PWrpbG69wlKuJptr+olbyoKAWfl+UzoO8vLMo5njWQNAoAwh1H8aFUVNyhtbkRuq
l0kpy1Cmcq8uo6taK9lvYp8jak7eV8lHSSiGUKTAovNTwfZG2JboGV4/qLDUKvpa
lPp2xVpF9MzA8VlXTOzLpSyIVxZnPTpL+xR5P9WQjMS5AY0EXA6auAEMAMReKL89
0z0SL+/i/geB/agfG/k6AXiG2a9kVWeIjAqFwHKl9W/DTNvOqCDgAt51oiHGRRjt
1Xm3XZD4p+GM1uZWn9qIFL49Gt5x94TqdrsKTVCJr0Kazn2mKQc7aja0zac+WtZG
OFn7KbniuAcwtC780cyikfmmExLI1/Vjg+NiMlMtZfpK6FIW+ulPiDQPdzIhVppx
w9/KlR2Fvh4TbzDsUqkFQSSAFdQ65BWgvzLpZHdKO/ILpDkThLbipjtvbBv/pHKM
O/NFTNoYkJ3cNW/kfcynwV+4AcKwdRz2A3Mez+g5TKFYPZROIbayOo01yTMLfz2p
jcqki/t4PACtwFOhkAs+MYPPyZDUkTFcEJQCPDstkAgmJWI3K2qELtDOLQyps3WY
Mfp+mntOdc8bKjFTMcCEk1zcm14K4Oms+w6dw2UnYsX1FAYYhPm8HUYwE4kP8M+D
9HGLMjLqqF/kanlCFZs5Avx3mDSAx6zS8vtNdGh+64oDNk4x4A2j8GTUuQARAQAB
iQG2BBgBCgAgAhsMFiEE1D9kAUU2nFHXht3qdvGiD/mHZy8FAmZxp3IACgkQdvGi
D/mHZy+Ahgv/RTvTSZ2aBjq3Rgvx4ntjb5UDMcXa2gEzacdNll34c4gExMp20mnQ
nLy8YRAiSoXG8QILrnEG4e3pwNogaBxPR42dA9u17jlH1pRS6k8g9vx2DtC/Atv/
x8D/E0KF1ovHS7GeWlRgNlRqRB5YvC4/4e8pU2BtM/mpe4paor8KoRyE31Hcy99y
nTcH2eAstZLXUgu7suNSwUXGvm8fho2E+Fg7Ll+d51VInwOssBVzs2JlfwFvhpQU
G8lN4sOftHpOQUnGTKrb7zY40Tf29ibWBNA695qnnD2QyTlumf47HWf8E0hIwg0T
2oJUyKJgu6B/xSqv0tLI+Qs8uIEyOUNVWNsSnPbs/W5HJ3yOLiGtmVIomPc59YfB
kJ5wQjXSCyfESCMnJbrkH/B7drciRmIFT93+ApEvrNvmiQUrVWU64fZQx68HBj2m
sdE07ElnwPBqDnMdqBfzozPTpEpbO7aVRT15gjOggf9Mbf0XCpsrAWs2Pgfxo9MU
uNBEXR+VjRvm
=NUWj
-----END PGP PUBLIC KEY BLOCK-----
(2)添加Wine的仓库到软件源列表中,不同版本系统添加方式不同:
- Ubuntu 24.04
sudo wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/ubuntu/dists/noble/winehq-noble.sources
- Ubuntu 23.10
sudo wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/ubuntu/dists/mantic/winehq-mantic.sources
- Ubuntu 22.04或Linux Mint 21.x
sudo wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/ubuntu/dists/jammy/winehq-jammy.sources
- Ubuntu 20.04或Linux Mint 20.x
sudo wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/ubuntu/dists/focal/winehq-focal.sources
注意
如果以上方式添加失败,可以选择手动添加;如果添加后下载软件比较慢,可以选择使用国内的镜像源。
- 内容(需要注意的有URIs、Suites和Signed-By。URIs是软件仓库地址,选择国内镜像源时需要更改;Suites是版本代号,不同版本的系统不同,这里noble是24.04的,另外三个:23.10是mantic、22.04是jammy、20.04是focal,大家根据自己的系统版本选择对应的代号;Signed-By是刚刚的密钥地址,如果按照刚刚的位置保存密钥的不需要更改,反之需要改到对应位置):
Types: deb
URIs: https://dl.winehq.org/wine-builds/ubuntu
Suites: noble
Components: main
Architectures: amd64 i386
Signed-By: /etc/apt/keyrings/winehq-archive.key
- 国内镜像源(修改时放到内容的URIs中,选择一个即可):
https://mirrors.cernet.edu.cn/wine-builds/ubuntu/ #校园网联合镜像站
https://mirrors.tuna.tsinghua.edu.cn/wine-builds/ubuntu/ #清华大学开源软件镜像站
- 手动添加(使用如下命令打开vi编辑器,写入自己修改过的内容,其中noble是24.04的版本代号,建议按照自己的系统版本更改一下,24.04的版本不需要更改。这里noble是24.04的,另外三个:23.10是mantic、22.04是jammy、20.04是focal):
sudo vi /etc/apt/sources.list.d/winehq-noble.sources
- 最终我的(Ubuntu24.04)写入
/etc/apt/sources.list.d/winehq-noble.sources
的内容如下,供参考:
Types: deb
URIs: https://mirrors.tuna.tsinghua.edu.cn/wine-builds/ubuntu/
Suites: noble
Components: main
Architectures: amd64 i386
Signed-By: /etc/apt/keyrings/winehq-archive.key
(3)更新软件包列表
sudo apt update
二、软件安装
(1)根据自己的需求,安装对应版本的Wine,有三个版本,稳定版、预览版和开发版,推荐选择的优先级为稳定版>预览版>开发版:
- 稳定版(没有实验性的功能,三个版本中是最稳定的,推荐新手使用,但是最近稳定版似乎被下架了,提示无法定位软件包,可以选用其他两个版本):
sudo apt install --install-recommends winehq-stable
- 预览版(功能和稳定性介于原稳定版和开发版之间):
sudo apt install --install-recommends winehq-staging
- 开发版(包含最新功能,但可能不稳定,适合开发者或高级用户):
sudo apt install --install-recommends winehq-devel
(2)检查版本信息,确保Wine安装成功(写博文时:2024.9.5,最新版本为):
wine --version
(3)安装Wine的辅助工具Winetricks:
sudo apt install winetricks
三、软件配置
软件配置是可选的,如果不配置也能运行一部分Windows程序,但是有的Windows程序运行时需要用到一些运行库,没有配置这些库就可能导致Windows程序运行不起来。
(1)配置Wine环境
- 初始化wine环境,使用以下命令安装wine-mono组件来支持.NET应用(如果没有弹出窗口,可以使用
rm -rf ~/.wine/
删除Wine的配置再重试。Wine Mono安装器如果下载非常慢或者下载失败,可以点取消,然后手动安装):
winecfg
- 手动安装wine-mono:
打开清华大学开源软件镜像站wine-mono目录:https://mirrors.tuna.tsinghua.edu.cn/winehq/wine/wine-mono/,找到最新版wine-mono,下载其msi
格式的安装包:
下载好后切换到安装包所在目录,执行如下命令以安装wine-mono:
wine start /i wine-mono-9.3.0-x86.msi
- 手动安装wine-gecko
打开清华大学开源软件镜像站wine-gecko目录:https://mirrors.tuna.tsinghua.edu.cn/winehq/wine/wine-gecko/,找到最新版wine-gecko(非rc版),下载其msi
格式的安装包(需要下两个,32位x86的和64位x86_64的):
下载好后切换到安装包所在目录,执行如下命令以安装wine-gecko:
wine start /i wine-gecko-2.47.4-x86.msi
wine start /i wine-gecko-2.47.4-x86_64.msi
- 完成安装之后使用Winetricks检查wine-mono和wine-gecko是否安装成功,执行如下命令,然后依次选择
选择默认的wine容器
->运行卸载程序
,在弹出的窗口中如果发现了wine-mono和wine-gecko,则说明wine-mono和wine-gecko安装成功。:
winetricks
(2)使用Winetricks安装必要的Windows组件和字体等,一些Windows应用需要这些组件和字体才能正常使用:
- 安装 VC++ 运行库
winetricks vcrun2022
- 安装常用字体,包括中文字体(如果因为网络问题失败,可以打开使用
winetricks
命令打开winetricks界面,然后依次选择选择默认的wine容器
->安装字体
,手动安装字体,allfonts、corefonts、cjkfonts、fakechinese和wenquanyi等):
winetricks allfonts corefonts cjkfonts
- 安装DirectX提升兼容性和游戏性能(如果下载失败,也可以手动下载并运行安装,d3dx9和第d3dx10:https://files.holarse-linuxgaming.de/mirrors/microsoft/directx_Jun2010_redist.exe):
winetricks d3dx9 d3dx10
叁、使用Wine运行Windows程序(微信)
- 下载微信Windows版安装包:https://pc.weixin.qq.com/。
- 右键点击刚刚下载好的微信安装包,选择打开方式,选择使用Wine Windows Program Loader打开。
- 按照安装程序指引把微信安装好。
- 安装完成后,即可正常使用微信,目前大部分功能都能正常使用,但是有很多小问题。
肆、管理 Wine 环境
1. 管理应用程序环境
Wine 使用前缀(Prefix)来隔离不同的应用程序环境。默认情况下,主前缀路径为~/.wine。如果需要创建一个新的自定义环境,可以使用以下命令:
WINEPREFIX=~/.custom_wine_prefix winecfg
将~/.custom_wine_prefix
替换为要使用的目录。执行命令后,会创建一个新的 Wine 环境,并自动打开Wine 配置界面。
2. 配置 32 位应用支持
Wine 默认支持 64 位 Windows 应用。如果要运行 32 位应用程序,可以通过以下命令设置一个新的 32 位环境:
WINEARCH=win32 WINEPREFIX=~/.wine32 winecfg
此命令会创建一个专门用于 32 位应用程序的 Wine 前缀。
3. 配置中文支持
要创建一个支持中文的 Wine 前缀,请带上LC_ALL=zh_CN.UTF-8
参数:
WINEPREFIX=/home/billyfu/wine_prefix LC_ALL=zh_CN.UTF-8 winecfg
4. 浏览Wine应用程序数据库
Wine 应用程序数据库 (AppDB) 提供了各种应用程序的兼容性信息和优化配置建议,类似于应用商店。你可以访问 Wine AppDB 了解更多详细信息,以及其他用户分享的经验,地址:https://appdb.winehq.org/
5. 移除Wine
如果不再需要Wine了,可以按以下步骤来卸载Wine:
(1) 根据之前你自己安装的版本,卸载对应版本的Wine:
- 卸载稳定版
sudo apt remove winehq-stable
- 卸载预发布版
sudo apt remove winehq-staging
- 卸载开发版
sudo apt remove winehq-devel
(2)删除Wine软件源:
sudo rm /etc/apt/sources.list.d/winehq*
(3)删除软件源密钥:
sudo rm /etc/apt/keyrings/winehq*
伍、参考资料
- Ubuntu:如何安装和使用 Wine 9,轻松运行 Windows 应用:https://www.sysgeek.cn/ubuntu-wine/
- Wine 9.0:前沿技术与 Windows 应用的完美结合:https://www.sysgeek.cn/wine-9-0/
- Ubuntu WineHQ Repository:https://wiki.winehq.org/Ubuntu
- software-properties-common - CSDN文库:https://wenku.csdn.net/answer/0da96eaf406301aab7dcc2bfbe3b4358
- curl(文件传输工具)-百度百科:https://baike.baidu.com/item/curl/10098606
- 微信,是一个生活方式:https://weixin.qq.com/
- 微信(腾讯公司的通讯服务应用程序)-百度百科https://baike.baidu.com/item/%E5%BE%AE%E4%BF%A1/3905974
- ubuntu下通过wine安装windows软件(以微信和Adobe Acrobat Pro为例):https://zhuanlan.zhihu.com/p/136328910
- 详解在 Ubuntu 从外部存储库安装软件包 | Linux 中国:https://zhuanlan.zhihu.com/p/587739573
- Wine Mono 和 Wine Gecko 组件:https://winegame.net/games/wine-mono-wine-gecko/
- [wine5.0] wine5.0安装wine-mono、wine-gecko具体步骤:https://blog.csdn.net/cxrshiz7890/article/details/106042837/
- Winetricks:https://gitlab.winehq.org/wine/wine/-/wikis/Winetricks