UbuntuでWineをインストールおよび設定する方法
この記事では、Ubuntu で Wine をインストールして Windows 互換アプリを実行する方法を説明します。
About Wine
Wine はフリーかつオープン ソースのソフトウェアで、Linux、macOS、Android (experimental support) で Microsoft Windows互換プログラムおよびゲームを実行できるようにするものです。 Wineは20年以上前から開発されており、アプリケーションの互換性は最初のリリースからかなり改善されています。 エミュレーターと誤解されることが多い。 しかし、WindowsのAPIコールをリアルタイムでPOSIXコールに変換し、Windowsとほぼ同じパフォーマンス(場合によってはそれ以上)を提供する互換性レイヤーに過ぎない。 Wine は “Wine Is Not an Emulator” の略です。
Installing Wine in Ubuntu
Wine パッケージはデフォルトで Ubuntu リポジトリに含まれています。 しかし、それらは常に最新で、最新のリリースと同等であるとは限りません。 そのため、wine チームが提供する公式 Ubuntu PPA から wine パッケージをインストールすることをお勧めします。 Ubuntu 19.10の場合:
$ sudo apt update
Ubuntu 18.10 の場合:
以下のコマンドを続けて実行してください。04:
$ sudo apt update
以下のいずれかのコマンドを実行すれば、wine安定版、開発版、ステージングビルドをインストールすることができるようになりました。
$ sudo apt install winehq-devel
$ sudo apt install winehq-staging
Different Between Wine Builds
wine 公式リポジトリでは「stable」「devel」「staging」という3種類のビルドが提供されています。 安定版ビルドは、その名前が示すように、最新の安定版ワインを提供し、開発版ビルドは、開発中の最先端バージョンです。 ステージングビルドには、いくつかの機能のテストや互換性の問題の修正を目的とした実験的なパッチが多く含まれています。
WINEARCH
Wine をインストールした後、WINEARCH 環境変数を使って、wine プレフィックスのための正しいアーキテクチャを定義することができます。 デフォルトでは、すべてのワイン・アプリは 64 ビット環境にインストールされます。
- WINEARCH=win32
- WINEARCH=win64
なお、WINEARCH は新しいプレフィックスを作成するときに 1 回だけ使用します (以下で説明します)。
WINEPREFIX 機能を理解する
WINEPREFIX は、Windows アプリケーション、システム ライブラリ、および設定ファイルを単一のディレクトリに閉じ込めることによって分離およびコンテナ化できる wine の非常に便利な機能です。 好きなだけ接頭辞を作成でき、それぞれは別々に扱われます。
Wine を使用してインストールおよび実行する Windows アプリケーションまたはゲームごとに別々の接頭辞を作成したい Linux ユーザーは少なくありません。 多くの場合、Windows アプリケーションのインストールには、サード パーティのライブラリやツールキットのインストールが必要です。 アプリに別々のプレフィックスを使用することで、互換性が向上し、競合が少なくなり、ファイルシステムがきれいになります。
上のコマンドは、WINEPREFIX 変数に指定したプレフィックス パスで “file.exe” を実行します。 パスが存在しない場合は、新しいディレクトリが自動的に作成されます。
Using Using WINEARCH and WINEPREFIX Together to Run a Windows App
WINEARCH とカスタム WINEPREFIX を組み合わせて、プレフィックスに正しくアーキテクチャを指定することが可能です。
Filesystem Layout of a Wine Prefix
すべての Wine プリフィクス、デフォルトまたはカスタムには、すべてのシステムライブラリやアプリが “C” ドライブにインストールされている典型的な Windows ファイルシステムを表す多くのファイルやフォルダの情報が含まれています。 これらの接頭辞は、Wine オープンソースプロジェクトの一部である多数のライブラリを含んでいます。 以下のスクリーンショットを見れば、ディレクトリのレイアウトがわかるでしょう。
Wine を使用して “.exe” または “.msi” インストーラーを実行すると、アプリは “drive_c” の “Program Files” にインストールされます(カスタムパスを提供しない場合)。
Winecfg
“winecfg” コマンドを実行することにより、wine prefix の多くの設定と動作を変更することができます。 設定の中には、ディスプレイの設定、外部ドライブの設定、オーディオの設定などがあります。
winecfg を起動するには、次のコマンドのいずれかを実行します:
$ WINEPREFIX=/path/to/prefix winecfg
Wine コントロール パネル
“Wine control panel” も wine に含まれていて、ゲームパッドやその他の便利な設定を微調整できる、便利なユーティリティです。
winecontrol は以下のコマンドのいずれかを使用して実行できます:
$ WINEPREFIX=/path/to/prefix wine control
Winetricksは wine と同梱の便利なツールで、GUI インターフェースから多くのサード パーティ製ライブラリやアプリケーションをインストールすることが可能です。 また、wineprefix の設定を変更し、保守作業を行うこともできます。 winetricks の GUI は他の典型的な GTK や Qt Linux アプリケーションほど直感的ではありませんが、仕事はきちんとこなせます。
Ubuntu に winetricks をインストールするには、次のコマンドを実行します:
これで、次のコマンドのいずれかを使用して winetricks を実行することができます。
$ WINEPREFIX=/path/to/prefix winetricks
Winetricks にも素晴らしいコマンドライン インターフェイスがあります。
Wine で “Lnk” ファイルを実行する
これまで、上記の例では、”.NET Framework” を実行する方法について説明してきました。exe” ファイルを Wine を使用して実行する方法を説明しました。 しかし、Windows の一部のアプリケーションには “.lnk” ファイルが付属しており、これは実行バイナリへのショートカットにいくつかの特別なカスタマイズやパラメータを加えたものに過ぎません。
Wine を使用して “.lnk” ファイルを実行するには、次の形式のいずれかを使用してコマンドを実行する必要があります。lnk
$ WINEPREFIX=/path/to/prefix wine start /path/to/file.lnk
ワインで “Bat” ファイルを実行する
Bat ファイルは bash 風スクリプトファイルで、Windows でコマンドプロンプトまたはインタープリタを使って実行することができるものです。 Wine には、コマンドプロンプトを起動して “.bat” ファイルを実行するために使用できる “wineconsole” ユーティリティが含まれています。
$ WINEPREFIX=/path/to/prefix wineconsole /path/to/file.bat
上に示したコマンド インタープリタは、Windows と互換性のあるすべての主要コマンドをサポートしています。
結論
Wine は Linux で多数の Windows アプリを実行でき、二つのプラットフォームの間の橋渡しができます。 いくつかの人気のあるアプリはまだ Wine で動作しませんが、全体的な互換性はかなり向上しています。 最近、Valve は、Steam を使用して Linux 上で Windows ゲームを実行するための互換性レイヤー「Proton」を発表しました。 ProtonはWineをベースにしており、追加機能、QOLアップデート、互換性パッチが付属しています。