在 Linux 上運(yùn)行你最喜歡的 Windows 應(yīng)用程序
WINE 是一個(gè)開(kāi)源項(xiàng)目,它可以協(xié)助很多 Windows 應(yīng)用程序在 Linux 上運(yùn)行,就好像它們是原生程序一樣。
在 2021 年,有很多比以往更喜歡 Linux 的原因。在這系列中,我將分享使用 Linux 的 21 種原因。這里是如何使用 WINE 來(lái)實(shí)現(xiàn)從 Windows 到 Linux 的無(wú)縫切換。
你有只能在 Windows 上運(yùn)行的應(yīng)用程序嗎?那一個(gè)應(yīng)用程序阻礙你切換到 Linux 的唯一因素嗎?如果是這樣的話,你將會(huì)很高興知道 WINE,這是一個(gè)開(kāi)源項(xiàng)目,它幾乎重新發(fā)明了關(guān)鍵的 Windows 庫(kù),使為 Windows 編譯的應(yīng)用程序可以在 Linux 上運(yùn)行。
WINE 代表著“Wine Is Not an Emulator” ,它指的是驅(qū)動(dòng)這項(xiàng)技術(shù)的代碼。開(kāi)源開(kāi)發(fā)者從 1993 年就開(kāi)始致力將應(yīng)用程序的任何傳入 Windows API 調(diào)用翻譯為 POSIX 調(diào)用。
這是一個(gè)令人十分驚訝的編程壯舉,尤其是考慮到這個(gè)項(xiàng)目是獨(dú)立運(yùn)行的,沒(méi)有來(lái)自微軟的幫助(至少可以這樣說(shuō)),但是也有局限性。一個(gè)應(yīng)用程序偏離 Windows API 的 “內(nèi)核” 越遠(yuǎn),WINE 就越不能預(yù)期應(yīng)用程序的請(qǐng)求。有一些供應(yīng)商可以彌補(bǔ)這一點(diǎn),尤其是 Codeweavers 和 Valve Software。在需要翻譯應(yīng)用程序的制作者和翻譯的人們及公司之間沒(méi)有協(xié)調(diào)配合,因此,比如說(shuō)一個(gè)更新的軟件作品和從 WINE 總部 獲得完美適配狀態(tài)之間可能會(huì)有一些時(shí)間上的滯后。
然而,如果你想在 Linux 上運(yùn)行一個(gè)著名的 Windows 應(yīng)用程序,WINE 可能已經(jīng)為它準(zhǔn)備好了可能性。
安裝 WINE
你可以從你的 Linux 發(fā)行版的軟件包存儲(chǔ)庫(kù)中安裝 WINE 。在 Fedora、CentOS Stream 或 RHEL 系統(tǒng)上:
$ sudo dnf install wine
在 Debian、Linux Mint、Elementary 及相似的系統(tǒng)上:
$ sudo apt install wine
WINE 不是一個(gè)你自己?jiǎn)?dòng)的應(yīng)用程序。當(dāng)啟動(dòng)一個(gè) Windows 應(yīng)用程序時(shí),它是一個(gè)被調(diào)用的后端。你與 WINE 的第一次交互很可能就發(fā)生在你啟動(dòng)一個(gè) Windows 應(yīng)用程序的安裝程序時(shí)。
安裝一個(gè)應(yīng)用程序
TinyCAD 是一個(gè)極好的用于設(shè)計(jì)電路的開(kāi)源應(yīng)用程序,但是它僅在 Windows 上可用。雖然它是一個(gè)小型的應(yīng)用程序,但是它確實(shí)包含一些 .NET 組件,因此應(yīng)該能對(duì) WINE 進(jìn)行一些壓力測(cè)試。
首先,下載 TinyCAD 的安裝程序。Windows 安裝程序通常都是這樣,它是一個(gè) .exe
文件。在下載后,雙擊文件來(lái)啟動(dòng)它。
TinyCAD 的 WINE 安裝向?qū)?/em>
像你在 Windows 上一樣逐步完成安裝程序。通常最好接受默認(rèn)選項(xiàng),尤其是與 WINE 有關(guān)的地方。WINE 環(huán)境基本上是獨(dú)立的,隱藏在你的硬盤(pán)驅(qū)動(dòng)器上的一個(gè) drive_c
目錄中,作為 Windows 應(yīng)用程序使用的一個(gè)文件系統(tǒng)的仿真根目錄。
WINE TinyCAD 目標(biāo)驅(qū)動(dòng)器
安裝完成后,應(yīng)用程序通常會(huì)為你提供啟動(dòng)機(jī)會(huì)。如果你正準(zhǔn)備測(cè)試一下它的話,啟動(dòng)應(yīng)用程序。
啟動(dòng) Windows 應(yīng)用程序
除了在安裝后的第一次啟動(dòng)外,在正常情況下,你啟動(dòng)一個(gè) WINE 應(yīng)用程序的方式與你啟動(dòng)一個(gè)本地 Linux 應(yīng)用程序相同。不管你使用應(yīng)用程序菜單、活動(dòng)屏幕或者只是在運(yùn)行器中輸入應(yīng)用程序的名稱,在 WINE 中運(yùn)行的桌面 Windows 應(yīng)用程序都會(huì)被視為在 Linux 上的本地應(yīng)用程序。
通過(guò) WINE 的支持來(lái)運(yùn)行 TinyCAD
當(dāng) WINE 失敗時(shí)
我在 WINE 中的大多數(shù)應(yīng)用程序,包括 TinyCAD ,都能如期運(yùn)行。不過(guò),也會(huì)有例外。在這些情況下,你可以等幾個(gè)月來(lái)查看 WINE 開(kāi)發(fā)者 (或者,如果是一款游戲,就等候 Valve Software)是否進(jìn)行追加修補(bǔ),或者你可以聯(lián)系一個(gè)像 Codeweavers 這樣的供應(yīng)商來(lái)查看他們是否出售對(duì)你所需要的應(yīng)用程序的服務(wù)支持。
WINE 是種欺騙,但它用于正道
一些 Linux 用戶覺(jué)得:如果你使用 WINE 的話,你就是在“欺騙” Linux。它可能會(huì)讓人有這種感覺(jué),但是 WINE 是一個(gè)開(kāi)源項(xiàng)目,它使用戶能夠切換到 Linux ,并且仍然能夠運(yùn)行工作或愛(ài)好所需的應(yīng)用程序。如果 WINE 解決了你的問(wèn)題,讓你使用 Linux,那就使用它,并擁抱 Linux 的靈活性。