如何安装和使用Wine,以便在Linux上运行Windows应用程序
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何安装和使用Wine,以便在Linux上运行Windows应用程序相关的知识,希望对你有一定的参考价值。
早在上世纪90年代中期至2000年代初,Linux还是一款初露峥嵘的操作系统,存在严重缺乏实用应用程序的问题。这个问题在商务界来得尤其严重――在商务界,Windows桌面应用程序决定着生产力的高低。为了克服这个软肋,Linux社区开发了一种名为Wine的兼容层。这个名称最初代表Wine Is Not an Emulator(葡萄酒不是模拟器,因为每个人都把这个工具误以为是Windows模拟器)。现在名称简称Wine。实际上,Wine的功能就是让Windows应用程序可以在Linux平台上运行。它并不完美,支持的应用程序也很有限。如果你想要记事本(Notepad)、计算器(Calculator)和纸牌游戏(Solitaire),你就随时可以使用了。
但是随后出现了值得关注的东西。随着时间的推移,越来越多的应用程序得到支持,直到Wine后来成为许多用户和企业(尤其还有Linux游戏玩家)的一款必不可少的工具。迄今为止,有数千款全面得到支持的应用程序如今可以在Wine上运行(查看应用程序数据库,即可参阅完整列表),而且这份列表越来越长。诚然,Wine的工作主要侧重于游戏,但是你仍会找到相当丰富的生产力应用程序可以使用。
你可能会想,由于使用这类工具很复杂,Wine安装和使用起来会很复杂。这种假设是不成立的。实际上,Wine的开发人员不遗余力地让兼容层尽可能易于使用。这到底意味着什么呢?为了更容易阐明这个问题,不妨看看安装Wine,然后使用该工具安装并运行Windows应用程序的过程。
我将在基本操作系统( Elementary OS)Freya上演示这个过程,并安装最新版本的Wine。
安装
如果你在运行Ubuntu衍生版,会在Software Center(软件中心)中找到Wine。不过,那个版本很可能过时了。正由于如此,我们应该避免提供的“默认”版本。为此,我们必须添加官方的Wine软件库。这可以通过两种方法来实现,通过命令行或通过GUI。由于我们的目的是运行Windows应用程序,不妨使用GUI方法。
具体方法如下:
1. 点击Applications(应用程序)菜单。
2. 输入software。
3. 点击Software & Updates(软件和更新)。
4. 点击Other Software(其他软件)选项卡。
5. 点击Add(添加)。
6.在APT行部分输入ppa:ubuntu-wine/ppa(见图2)。
7. 点击Add Source(添加来源)。
8. 输入你的sudo密码。
9. 点击Authenticate(验证)。
10. 点击Close(关闭)。
11. 出现提示后,点击Reload(重新装入)。
12. 打开Software Center(软件中心)。
13. 搜索Wine。
14. 点击Wine项,然后点击Install(安装)。
15. 让安装完成。
图2:添加必要的PPA(个人程序包存档),以便安装最新版本的Wine
就是这样。Wine现在已准备好帮助你安装和运行Windows应用程序了。不过切记:不是每个应用程序都能正常运行。大多数会,但是如果你期望将内部的专有解决方案安装并运行起来,可能会碰到几个障碍。
安装和运行应用程序
不妨安装一个非常受编程人员欢迎的记事本:Notepad++。你需要从不包括第三方应用程序安装选项的位置下载文件(这可能会导致应用程序安装失败)。为了保险起见,从Filehippo()下载Notepad++安装程序。你会在Downloads目录下找到Notepad的.exe文件。右击该文件,选择Open in Wine Windows Program Loader(使用Wine Windows程序装载器打开,图3)。
图3:使用Wine运行Notepad++ .msi文件
首次运行后,~/.wine的Wine配置会被更新。这可能要花点时间,具体取决于系统的运行速度。让这个过程完成,然后再熟悉不过的Windows安装向导就会启动,逐步完成安装Notepad++的过程。
点击Next(下一步),逐步完成安装过程。第二个屏幕弹出来后(见图4),你会注意到很不像Linux的Folder路径。
图4:非常不像Linux的文件夹路径
Linux不像Windows那样含有C驱动器。这有什么不对吗?没什么不对。如果你看一下~/.wine文件夹,就会注意到一个名为drive_c的文件夹。该文件夹里面有三个熟悉的子文件夹:
•Program Files
•users
•windows.
正如你预料的那样,这就是你的C驱动器。也就是说,让Folder路径在安装过程中保持原状。
你最终会进入到安装过程的Choose Components(选择组件)部分(图5)。你在这里可以选择安装选项。如果你的那种桌面环境允许桌面图标(而这是你启用应用程序的首选方法),可能应该选择Create Shortcut on Desktop(在桌面上创建快捷方式,那样就更容易启动刚安装的应用程序――这方面稍后会有更多介绍)。
图5:为Notepad++安装选择安装组件
安装完成后会显示Finish(完成)屏幕。让Run Notepad(运行记事本)方框处于被勾选的状态,点击Finish(完成)。Notepad++就会运行(图1)。
如果你不添加应用程序图标到桌面,当你想再次运行该软件时,会出现什么情况?这是很容易让用户犯难的一个问题。还记得Program Files子目录吗?如果你大胆进入到该文件夹,就会看到Notepad++的文件夹,里面含有notepad++.exe文件。你猜会怎么样?右击该文件,选择Open in Wine Windows Program Loader(使用Wine Windows程序装载器打开),Notepad++就会运行。
Notepad++这个简单的例子表明了Wine的工作原理。如果你深入探究更复杂的应用程序,结果可能不一样。最明智的做法就是回到Wine应用程序数据库,找到你想要安装的那个应用程序,点击它,检查应用程序的当前状态。你会发现每个应用程序列出了测试的Wine版本、是否可以安装、是否可以运行,并给出了评级。评级包括如下:
白金级(Platinum):直接就可以无缝运行的应用程序。
黄金级(Gold):进行一些必要的改动后才能运行的应用程序。
白银级(Silver):运行时会出现小问题的应用程序,但并不影响使用。
你还会发现有些应用程序被列为垃圾(Garbage),这意味着它们没法安装及/或没法运行。
如果你有一个Windows应用程序根本就没有对应的Linux应用程序,别担心――Wine可以帮助你。尽管不是每个Windows应用程序都可以在Wine下运行,但是确实能运行的应用程序数量确实非常多。而考虑到我们如今所做的几乎一切任务都在Web浏览器里面处理,所以只要得到Wine的一点帮助,应该能够满足你在应用程序方面的各个要求。 参考技术A Wine是Wine Is Not an Emulator(Wine不是模拟器)的缩写,其实是一个转换层(或程序装入器),能够在Linux及与POSIX兼容的其他类似操作系统上运行Windows应用程序。
一. 安装Wine
在Ubuntu上:
1. 打开Applications(应用程序)>Ubuntu Software Center(Unbuntu软件中心),打开Ubuntu软件中心。
2. 然后点击Edit(编辑)>Software Sources(软件源)。选择Other Software(其他软件)选项卡,点击Add(添加)。然后输入下列apt行:ppa:ubuntu-wine/ppa
3. 从左边的Get Software(取得软件)部分中选择“PPA for Ubuntu Wine Team”,然后选择Microsoft Windows Compatibility Layer(Development files) – wine1.3-dev。点击Install(安装)。这会安装最新的Wine软件包,包括开发库。
提示:卸载现有的Wine软件包,以确保最大的兼容性。另外,如果想干净安装,可以删除Wine用户目录,为此可以从主目录中使用命令rm -r -v .wine。
二. 安装Wine支持包
现在,需要安装非开源(但免费)的支持包。这包括微软Core Fonts、Visual C++运行时环境等软件包。
安装Cabextract:需要该软件包来解压缩微软.cab文件。
$ sudo apt-get install cabextract
下载winetricks脚本:
现在需要下载一个很棒的脚本,名为winetricks,它会自动下载和安装必要的支持包。
$ wget http://winetricks.org/winetricks
现在输入下列命令,安装必要的支持包:
$ sh winetricks corefonts Tahoma
提示:可以不用任何命令行参数来运行winetricks,那样就能从漂亮的GUI界面选择需要安装的软件包。
如何在 Ubuntu 22.04 上安装 最新版本Wine
过渡到 Linux 的用户的担忧之一是他们是否可以在 Linux 上运行自己喜欢的应用程序。这些范围可以从 Windows 游戏和简单的应用程序软件。值得庆幸的是,Wine 允许用户在 Linux/Unix 系统上运行和执行 Windows 程序。
Wine (“Wine Is Not an Emulator” 的首字母缩写)是一个能够在多种 POSIX-compliant 操作系统(诸如 Linux,macOS 及 BSD 等)上运行 Windows 应用的兼容层。Wine 不是像虚拟机或者模拟器一样模仿内部的 Windows 逻辑,而是將 Windows API 调用翻译成为动态的 POSIX 调用,免除了性能和其他一些行为的内存占用,让你能够干净地集合 Windows 应用到你的桌面。
Wine 的最新stable版本是Wine 7.0.1 Released,于 2022 年 11月 8 日发布。它提供了大量与主要领域接壤的增强功能,例如:
- PE 格式的较新核心模块
- 文本控制台升级
- WineD3D 的 Vulkan 后端
- DirectShow 和媒体基金会支持。
- 桌面集成
- 密码学
- 互联网和网络
- 图形、字体和文本
- 视频和音频
- 桌面集成
- 开发工具
在本指南中,我们将介绍如何在 Ubuntu 22.04 上安装最新稳定版本 Wine。
官网地址:WineHQ - Run Windows applications on Linux, BSD, Solaris and macOS
第 1 步:更新系统
首先,确保通过运行以下命令更新包列表:
$ sudo apt update
第 2 步:启用 32 位架构
您需要在 64 位系统上启用32 位体系结构才能运行 32 位 Windows 应用程序。
运行以下命令以启用 32 位架构:
$ sudo dpkg --add-architecture i386
启用 32 位架构
此命令不返回任何输出。
第 3 步:下载并添加 Wine 存储库密钥
更新系统后,下一步是下载存储库密钥并将其添加到 gpg 密钥环文件中。使用 sudo apt-key list 列出您信任的密钥。
以下命令添加 wine 存储库密钥:
$ wget -qO - https://dl.winehq.org/wine-builds/winehq.key | sudo apt-key add -
第 4 步:添加 Wine 存储库
添加存储库密钥后,继续并在您的 Ubuntu 系统上启用 Wine 存储库,如下所示:
$ sudo apt-add-repository "deb https://dl.winehq.org/wine-builds/ubuntu/ $(cat /etc/os-release | grep UBUNTU_CODENAME | cut -d '=' -f 2) main"
第 5 步:在 Ubuntu 22.04上安装最新版本 Wine
添加 Wine 存储库后,我们将更进一步,添加 OBS 存储库。和之前一样,我们将首先添加 GPG 密钥,如下所示:
$ wget -qO - https://download.opensuse.org/repositories/Emulators:/Wine:/Debian/xUbuntu_22.04/Release.key | sudo apt-key add -
导入wine-OBS的GPG密钥
接下来,我们将添加 Wine-OBS 存储库,如下所示:
$ sudo echo "deb Index of /repositories/Emulators:/Wine:/Debian/xUbuntu_22.04 ./" | sudo tee /etc/apt/sources.list.d/wine-obs.list
添加 wine-OBS 存储库,最后,要在 Ubuntu 22.04 上安装 Wine ,请在所示命令中使用 APT 包管理器:
$ sudo apt update
$ sudo apt install --install-recommends winehq-stable
此命令将下载一系列包、库、依赖项和驱动程序。就我而言,总下载内存大小超过 1G。
安装后,验证您机器上安装的 wine 版本。
$ wine --version
wine-7.0.1
输出确认我们已经安装了 Wine 7.0.1。
以上命令可以总结为:
$ sudo dpkg --add-architecture i386 && sudo wget -qO - https://dl.winehq.org/wine-builds/winehq.key | sudo apt-key add - && sudo apt-add-repository "deb https://dl.winehq.org/wine-builds/ubuntu/ $(cat /etc/os-release | grep UBUNTU_CODENAME | cut -d '=' -f 2) main" && sudo wget -qO - https://download.opensuse.org/repositories/Emulators:/Wine:/Debian/xUbuntu_22.04/Release.key | sudo apt-key add - && sudo echo "deb https://download.opensuse.org/repositories/Emulators:/Wine:/Debian/xUbuntu_22.04/ ./" | sudo tee /etc/apt/sources.list.d/wine-obs.list && sudo apt update && sudo apt install --install-recommends winehq-stable
第 6 步:使用 Wine 安装 .exe 程序
Wine 可以直接从终端启动,如下所示:
$ wine
要在使用 wine 软件时获得帮助:
$ wine --help
现在让我们安装一个 Windows 应用程序,在本例中是 Notepad++,它是一个代码编辑器。从 Github 存储库下载 .exe 文件,如下所示。
$ wget https://github.com/notepad-plus-plus/notepad-plus-plus/releases/download/v8.4.7/npp.8.4.7.Installer.x64.exe
然后使用 wine 运行应用程序以安装您下载的 .exe 应用程序。
$ wine npp.8.4.7.Installer.x64.exe
Wine 创建一个配置文件并将其放在主目录中~/.wine。
要使 .NET 应用程序正常工作,您需要安装Wine Mono 安装程序。
install-wine-mono-package
下载大约需要 3 分钟左右才能完成。
install-wine-mono-package
最终,Notepad ++ 安装程序将如图所示弹出(此处易7.8.8版本为例)。只需单击“下一步”并接受默认值。
您可以使用以下命令从终端启动记事本:
$ wine notepad++
结论
当您想在 Linux 环境中运行仅适用于 Windows 的应用程序时,Wine 会派上用场。希望您现在可以在 Ubuntu 22.04 上安装 Wine 并运行 Windows 应用程序。
以上是关于如何安装和使用Wine,以便在Linux上运行Windows应用程序的主要内容,如果未能解决你的问题,请参考以下文章