Parallels Desktop
関連記事
Parallels Desktop は macOS のハイパーバイザであり、様々なオペレーティングシステムを"仮想マシン" (ゲスト) としてホストシステムにインストールすることができます。これによって複数のマシンを物理的に管理する手間が省けます。仮想化に関する詳しい説明は Wikipedia を見て下さい。
目次
Arch をゲストとしてインストール
Parallels Desktop は最初から Linux ゲストをサポートしていますが、公式にサポートしている Linux ディストリビューションは限られます。Arch Linux はその中に含まれていません。つまり、メーカーによる Parallels Tools のインストールのテストは行われておらず、Arch の下で動作させるには手動でいくつか設定が必要になります。Parallels Tools を使わないときは、新しい仮想マシンを作成するときに "other linux" を選択して、後は実際のマシンにインストールする時と同じようにインストールすることができます。
Parallels Tools
概要
ホストのオペレーティングシステムとゲストのオペレーティングシステムの相互運用性を増すために、Parallels は "Parallels tools" という名前のパッケージを提供しており、カーネルモジュールとユーザースペースユーティリティが含まれています。Parallels Tools の特徴は Parallels Tools Overview に記載があります。
この記事ではこのツールをフルに活用して、Xorg の設定まで行います。ヘッドレスサーバーの場合、X に関連するセクションはスキップできます。
parallel tools のバージョンを表記するときは <Parallels.Version>.<Tools Version> という形式を使います。例えば: 9.0.24237.1028877 は Parallels バージョン 9.0.24237 + tools バージョン 1028877 を意味します。
必要なカーネルと Xorg のバージョン
場合によって tools インストーラで使われているバイナリが Arch リポジトリに入っている最新の Xorg やカーネルに対応していない可能性があります。
バージョンと必要なソフトウェアの対応:
- 9.0.24229.991745 は 3.13.8 (もしくは 3.13.y) (3.14 では黒画面が表示されシステムがフリーズします) と xorg 1.15.y 以下を必要とします。
- 9.0.24237.1028877 は Arch の 3.14.15-1-lts (新しいバージョンでも動作するかもしれません) と xorg 1.15.y 以下で動作します。
- 11.0.0.31193 は Arch 4.1.6-1 と xorg 1.17.2-4 で動作します。
- 12.1.0.41489 は最新の Arch 4.8.7-1 と Xorg 1.18.4 で動作します。インストールスクリプト (
cdrom//Parallels Tools//install
) の PATH ステートメントを削除して、カーネルブートパラメータにiomem=relaxed
を追加すする必要があります。
古いカーネルや Xorg を取得する方法:
- linux 3.13.8 は Arch Linux Archive から取得できます。
- linux 3.14.15 は現在の linux-lts なので、インストールして grub の設定を再生成するだけで OK です。
- xorg 1.15.y は AMD Catalyst に書かれている方法で取得できます。
/etc/pacman.conf
のリポジトリ設定 (3.13.8):
[core] #Include = /etc/pacman.d/mirrorlist SigLevel = PackageRequired Server = http://seblu.net/a/arm/2014/04/09/$repo/os/$arch [extra] #Include = /etc/pacman.d/mirrorlist SigLevel = PackageRequired Server = http://seblu.net/a/arm/2014/04/09/$repo/os/$arch
(arch のインストールでロールバックマシンを使うのではなく) カーネルをダウングレードする場合、次を実行:
# pacman -Syy
# pacman -S linux
Xorg の設定
Parallels tools インストーラは Xorg の設定についても管理するので、Xorg の記事に書かれている手順に従って適切なパッケージをインストールしてください。xf86-video-vesa ビデオドライバを使う必要があります:
# pacman -S xf86-video-vesa
依存パッケージの準備
インストールスクリプトは init スクリプトを /etc/init.d/
から探そうとするので、存在しない場合インストールが失敗します。Arch は systemd を使っているため、systemd の scripts ディレクトリへのシンボリックリンクを作成して def_sysconfdir 変数を設定してください:
# ln -sf /usr/lib/systemd/scripts/ /etc/init.d
# export def_sysconfdir=/etc/init.d
また、インストールスクリプトは /etc/X11/xorg.conf
ファイルも使用します。空のファイルを作成することで、インストーラによって自動的に設定が行われます:
# touch /etc/X11/xorg.conf
そして、ビルドに必要な標準ユーティリティと python2、カーネルヘッダをインストールしてください:
# pacman -S base-devel python2 linux-headers
Parallels のバージョンによっては、linux-headers
の代わりに linux-lts-headers
をインストールする必要があります。
最後に、python 2 の一時的なシンボリックリンクを作成してください。インストールが完了したらリンクは削除してください。
# ln -sf /usr/bin/python2 /usr/local/bin/python
Parallels tools のインストール
"Virtual Machine" メニューから "install Parallels Tools" を選択してください。Parallels Tools は cd イメージ上にあり、そこから仮想マシンに接続されます。最初にイメージをマウントする必要があります:
# mount /dev/cdrom /mnt/cdrom
それから以下のようにインストールスクリプトを使って Parallels tools のインストールに進みます:
# cd /mnt/cdrom
# ./install
Systemd の設定
Parallels tools デーモンはブート時に起動しないため、以下のようにサービスファイルを作成してください:
/usr/lib/systemd/system/parallels-tools.service
[Unit] Description=Parallels Tools [Service] Type=oneshot ExecStart=/usr/lib/systemd/scripts/prltoolsd start ExecStop=/usr/lib/systemd/scripts/prltoolsd stop RemainAfterExit=yes [Install] WantedBy=multi-user.target
そしてサービスを有効化してください:
# systemctl enable parallels-tools.service
これで、システムを再起動すると Parallels tools がインストールされ動作し始めます。
Tools の使用
フォルダの共有
ホスト側で "virtual machine > configuration > sharing" からゲストと共有するフォルダを指定することができます。設定したら以下のように共有フォルダをマウントします:
# mount -t prl_fs name_of_share /mnt/name_of_share
Dynamic Display Resolution
prlcc
という便利なツールが存在します。ウィンドウのサイズを変更したときに (ゲストの) ディスプレイの解像度を自動的に変更します。このツールを実行していないと、ウィンドウの中身が伸び縮みしてしまいます。prlcc は基本的に自動的に実行され、バックグラウンドで動作します。動作しない場合、以下を実行してください (もしくは /etc/X11/xinit/xinitrc.d/90-prlcc
のように設定ファイルに記述してください):
$ prlcc &
インストール後
通常、linux カーネルや Xorg などのシステムパッケージをアップデートすると Parallels tools が破壊されてしまう可能性があり、そうなると再インストールが必要になります。ときどき、tools が新しいパッケージに未対応で動作を停止するので、そのような場合、新しくインストールしたパッケージをロールバックして、Parallels が新しい製品をリリースするのを待ってから (それによって互換性の問題が解決されたら) ゲストのアップデートをしてください。