EurekaMoments

This is my studying logs about Autonomous driving, Machine learning technologies and etc.

VirtualBoxとGoogle ドライブで環境の引継ぎや再構築が簡単な仕組みを作った

目次

背景・目的

使っているPCを新しいものに交換したり、
訳あって別のPCを一時的に使う事になった
際に面倒なのは、インストールされた各種
ツールやローカルで保存しているファイル
などを含めた環境の引継ぎです。
引き継ぐものが大量にあったり、ちゃんと
整理されていなかったりすると、引継ぎ中
にうっかり消してしまったり、引継ぎ忘れ
たままPCを処分してしまうなんて事もある
でしょう。また、引継ぎが無事に終わって
も、そこから元通りに環境を構築し直す事
も非常に面倒です。
そこで、今流行りのクラウドや仮想環境と
いった技術を利用して、環境やデータの
引継ぎや再構築が楽にできる仕組みを作って
みたので紹介します。

必要なデータはGoogle ドライブで管理

まずは、今までローカルに保存してきた
データ、そして今後保存していくであろう
データは、従来のローカルフォルダなどで
なく、クラウドで管理するようにします。

自分はGoogle ドライブをインストールして、
全てのデータをクラウドに保管し、それを
ローカルからアクセスできるようにしました。
Google ドライブのインストール方法は下記を
参照ください。

google.tku.ac.jp

今まではUSBやハードディスクを使って
データを移していましたが、これにより
そんな手間がなくなり、移行先のPCで
Google ドライブをインストールすれば
いいだけになります。

Google ドライブの容量追加

自分は今は無料のプランで利用している
ので15GBの容量しかありませんが、今後は
こちらの有料プランにアップグレードして
更に大容量のデータ管理をしていく事になる
かもしれません。

f:id:sy4310:20200208123647p:plain

VirtualBoxのインストール

次はVirtualBoxをインストールして、仮想環境を
構築します。それぞれが好みのOSをインストール
すればいいのですが、まずは最も良く使うWindows
10をゲストOSとして構築します。

イメージファイルの入手

まずはこちらの手順に従ってWindows10のイメージ
ファイルを公式サイトからダウンロードします。

pc-karuma.net

Windows10をゲストOSとしてインストール

次に、入手したイメージファイルを使って、
Windows10をVirtualBox内にインストールします。

www.archlinux.site

共有フォルダの設定

Google ドライブをインストールすると、こちらの
ようにユーザフォルダの直下にGoogle ドライブの
フォルダが自動的に作成されます。

f:id:sy4310:20200208155041p:plain

このフォルダ、あるいはその中に作った作業用
フォルダなどを共有フォルダとして指定すれば、
ゲストOSからアクセスする事ができます。

f:id:sy4310:20200208155311p:plain

自分はこちらのようにGoogleドライブのフォルダ
内に作業フォルダを作成し、プログラムのソース
コードやデータ類は全てここに置くようにして
います。

f:id:sy4310:20200208160900p:plain

ゲストOS側では、この共有フォルダはZドライブ
として認識されます。

f:id:sy4310:20200208160200p:plain

プログラミング用エディタのインストール

ここまでの作業が完了していれば、あとは
各自でお好みのプログラミング用エディタを
インストールしてやれば、そこから上記の
共有フォルダを開いてコーディングし、
ターミナルから同フォルダにアクセスして
コマンド実行なんて事が通常通りに行えます。

f:id:sy4310:20200208161128p:plain

外部USBデバイスを認識させる

OSがインストールできれば、次はどんどん
必要なツールをインストールしていけばよい
のですが、そのためにCD/DVDドライブの
ようなUSBデバイスを接続しなければならない
時があります。
VirtualBoxでのゲストOSは、普通にインス
トールしただけだとホストOS側に接続された
USBデバイスを認識してくれません。
なので、こちらの記事で紹介されているような
拡張パックのインストールと設定を行い、認識
してくれるようにする必要があります。

pc-karuma.net

www.howtoforge.com

VirtualBox 仮想PCにCD/DVD/BDドライブを認識させる: 現役SEの電子録

構築した仮想環境のエクスポート

もろもろのインストールが終わったら、
最後に出来上がった仮想環境をこちらの記事
にあるような手順でエクスポートします。
これにより仮想環境はovaファイルという
形式で保存され、これを他の人が自分の
VirtualBoxからインポートすれば、簡単に
同じ環境を構築する事が出来ます。

pc-karuma.net

その他の参考資料

今回の仮想環境とは直接関係ないですが、
環境構築という目的で最近はこれらの記事
も参考にしました。

画面全体をキャプチャして、画像や動画で
保存したい時に役立ちました。仮想環境で
あるゲストOS側でこれを行うと、ホスト
側のビデオフォルダに保存されるので
共有が便利です。
https://www.pasoble.jp/windows/10/screen-capture.html

ハード面での環境構築の一つとして
キーボードを快適なものにする事は重要
です。自分はこちらを使うようになって
から、タイピング時の手の負担が軽減
されて快適に作業が出来ています。

ただし、こちらは英語キーボードなので、
繋いで使うだけでは日本語入力時のキー
配置がおかしくなり戸惑います。
その際は、こちらの記事にあるような
設定をホスト側、ゲスト側のOS上で
それぞれ行うと、正常なキー配置で
日本語入力が出来るようになります。
hamachan.info

やってみた感想

今後、もし別のPCへの開発環境の引っ越し
なんて事をする時は、こちらの手順を
踏めばいいだけになったので、大分簡略化
できたと思います。

  1. Googleドライブのインストールと同期
  2. VirtualBoxのインストール
  3. 共有フォルダの設定
  4. 仮想環境のovaファイルのインポート

ただし、そこまで気にする事ではないですが、
全体的な動きは若干もっさりしていて、起動や
終了に時間がかかります。
その辺りを解決できる仮想化の手段がDocker
らしいので、次はDockerで同じような環境を
構築する事にトライしてみて、VirtualBox版
との違いを見てみるつもりです。