はじめに
仮想マシンに構築していた自分用の環境を壊してしまったため、再構築しました。
その時のメモです。
主な設定
今回設定した開発用の環境は次の通りです。
- 仮想化ソフトウェアとしてVirtualBoxを使用
- 仮想マシンのOSは、Q4OSを使用
- 以下のソフトウェアをインストール
ソフトウェア | 用途 |
---|---|
VirtualBox Guestos Addin | シームレスモードを使用するため(後述) |
ClamAV + ClamTK | ウィルス対策ソフト |
VSCode | コーディング用 |
pyenv | 複数バージョンpython管理用 |
VirtualBox
VirtualBoxはOracleの製品で、無償で利用できます。
※ただし、Extension Packを商用利用する場合は、有償契約が必要です。
Windows版がありますが、私はホストOSにLinuxMintを使用していますので、Linux版をインストールしました。VirtualBoxのインストールは簡単にできましたが、VirtualBoxの起動で少し躓きました。
VirtualBox起動時のvboxdrvのドライバ読み込みに失敗
ハードウェアのセキュアブート機能により、安全でないドライバの読み込みを拒否されている
解決策
mokutilを使用して、セキュアブートの署名鍵を追加し、その鍵でvboxdrvを署名します。
以下ホストOSで実行
sudo apt-get install mokutil
openssl req -new -x509 -newkey rsa:2048 -keyout MOK.priv -outform DER -out MOK.der -nodes -days 36500 -subj "/CN=VirtualBox/"
sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n vboxdrv)
sudo mokutil --import MOK.der
パスワードを求められる
再起動後に、特殊なBoot画面になるので、「Enroll MOK」を選択する。
Q4OS
最近気に入っているLinuxのディストリビューションです。非力なマシンでも軽快に動作します。また、Windowsライクなデスクトップなので、初心者でも取っ付きやすいと思います。
こちらのサイトから、Q4OS Aquarius, Plasma, liveバージョンのISOファイルをダウンロードしました。
インストール手順(一部)
一部インストール手順を記載しておきます。
名前を入れて、タイプをLinux、バージョンをDebian(64-bit)を選択し、次へ
左メニュー「システム」→プロセッサで、CPUの下図やVT-xを有効化などお好みで
左メニュー「ストレージ」→光学ドライブに、ダウンロードしたISOファイルをセットします。
「Q4OS 5 Aquarius Plasma Live」を選択してエンター
仮想マシンのデスクトップの「Install Q4OS」から仮想ハードディスクへインストールをします。
後はウィザードに従ってインストールします。
シームレスモード
今回VirtualBoxにした理由は、シームレスモードが使用したかったからです。シームレスモードを使用するには、VirtualBox Guestos Addin をインストールします。
シームレスモードでは、ホストOSのデスクトップと、ゲストOSのデスクトップが融合したような状態になります。下図は、ゲストOSのVSCodeとメモ帳のウィンドウが、ホストOSのブラウザとオフィスのウィンドウの間に入り込んでいます。
ゲストOSのアプリをホストOSのアプリであるかのように利用できるので、画面の切り替えが少なく、操作性の向上が期待できます。
その他の設定やインストールしたソフトウェア
ファイアウォール
OSにデフォルトのファイアウォールアプリがインストールされていますので、有効にしておきます。
ClamAVとClamTK
ClamAVは、オープンソースのウィルス対策ソフトです。LinuxはWindowsと比べるとウィルス感染リスクは格段に下がりますが、念のためインストールします。
sudo apt install clamav
sudo apt intall clamtk
初期のままだと定義ファイルのアップデートに失敗します。
解決方法は、以下のブログを参考にさせていただきました。
続けて以下を実行します。
sudo rm /var/log/clamav/freshclam.log
sudo touch /var/log/clamav/freshclam.log
sudo chown clamav:clamav /var/log/clamav/freshclam.log
sudo nano /etc/logrotate.d/clamav-freshclam
「create 640 clamav adm」の行を「create 640 clamav clamav」に変更します。
アップデートを実行します。
sudo freshclam
pyenv
複数のPythonを管理するために使用します。以前の環境では、これを使用せずに直接Pythonの追加や削除を行ってしまったため、OSが破壊されてしまいました。
ほとんど以下のサイトの手順を参考にしてインストールしました。
しかし、Pythonをインストール使用とするとエラーとなり、いろいろ調べるとさらに追加のモジュールが必要でした。
sudo apt install build-essential curl libbz2-dev libffi-dev liblzma-dev libncursesw5-dev libreadline-dev libsqlite3-dev libssl-dev libxml2-dev libxmlsec1-dev llvm make tk-dev wget xz-utils zlib1g-dev
まとめ
VirtualBoxにQ4OSをインストールし、自分用の環境の仮想マシンを設定できました。また、今回試したかったシームレスモードも体感することができました。仮想マシンを使ってみようと思った方の参考になれば幸いです。