JavaScript勉強会

JavaScriptの学習日記

VagrantとVirtualBoxでWindows10にUbuntuをインストールする方法

「Webプログラミングが面白いほどわかる本」という本を参考にして、Windows10にUbuntu 18.04LTSをインストールしてみました。

 

 

この本は、カラー図解で丁寧に操作手順が説明されており、とても分かりやすい本でした!

 

 

Ubuntuの利用方針

Ubuntuをサーバーにして、Windowsをクライアントにします。

WindowsからUbuntuをリモート操作して利用します。

 

登場するツール

 

 

VirtualBoxの用意

Windows10上でUbuntuを利用するために、まず仮想化ソフトの「VirtualBox」をインストールします。

本書では説明の都合上、バージョン5.1.34が推奨されていましたが、最新のバージョンを使ってみることにします。(不具合があれば5.1.34に戻す)

 

VirtualBoxとは?

VirtualBox」(バーチャルボックス)は、仮想マシンを作るソフトです。

VirtualBox - Wikipedia

Oracle VM VirtualBox (オラクル ブイエム バーチャルボックス)とは、x86仮想化ソフトウェア・パッケージの一つ。現在の開発は米国オラクルが行っている。

既存のオペレーティング・システム(ホストOS)上にアプリケーションの一つとしてインストールされ、この中で追加のオペレーティング・システム(ゲストOS)を実行することができる。

例えば、Microsoft Windowsが「ホストOS」として動作しているマシン上で、Linuxをゲストとすることができる。

 

VirtualBoxインストーラーをダウンロード

Downloads – Oracle VM VirtualBox

VirtualBox 5.2.22 platform packages

Windows hosts

Windows hosts」をクリックして「VirtualBox-5.2.22-126460-Win.exe」というファイルをダウンロードします。

 

古いバージョンを利用したい場合は、以下のURLから取得できます。

Download_Old_Builds – Oracle VM VirtualBox

 

VirtualBoxをインストール

ダウンロードした「VirtualBox-5.2.22-126460-Win.exe」をダブルクリックして、インストールを開始します。

 

  • 設定は、基本的にデフォルト値のままにしておきます。
  • ※デスクトップにショートカットアイコンは作成しないでOK。
    (後で、VirtualBoxVagrant経由で利用するため、ショートカットアイコンは不要なので)

 

 

Vagrantの用意

VirtualBoxは、インストールしたままで使うと、操作が煩雑で面倒です。

VirtualBoxで作る仮想マシンを簡単に操作するツールとして「Vagrant」があります。

 

f:id:jsstudy:20181125125220p:plain

 

Vagrantとは?

Vagrant (ソフトウェア) - Wikipedia

Vagrant(ベイグラント)は、仮想機械を構築するためのソフトウェアである。

仮想機械の提供自体は、VirtualBoxをはじめとする仮想化ソフトウェアが行う。Vagrantは、これらソフトが用意されているのを前提として、仮想機械の設定や立ち上げに特化している。

Vagrant自身はRubyで作成されている。

 

Vagrantインストーラーをダウンロード

本書では説明の都合上、バージョン2.0.0が推奨されていましたが、最新のバージョンを使ってみることにします。(不具合があれば2.0.0に戻す)

 

Download - Vagrant by HashiCorp

Below are the available downloads for the latest version of Vagrant (2.2.1).

Windows 64-bit

 

Windows」の「64bit」をクリックして「vagrant_2.2.1_x86_64.msi」というファイルをダウンロードします。

 

古いバージョンを利用したい場合は、以下のURLから取得できます。

Vagrant Versions | HashiCorp Releases

 

Vagrantをインストール

ダウンロードした「vagrant_2.2.1_x86_64.msi」をダブルクリックして、インストールを開始します。

 

  • 設定は、基本的にデフォルト値のままにしておきます。
  • インストール後にパソコンを再起動します。

 

以上でVirtualBoxVagrantの用意ができました。

次はVagrantを使ってVirtualBoxを操作し、VirtualBox上にUbuntuを用意します。

 

 

Ubuntuのインストール

本書では説明の都合上、LTSバージョン「xenial (16.04LTS)」が推奨されていましたが、最新のLTSバージョン「bionic (18.04LTS)」を使ってみることにします。(不具合があれば16.04LTSに戻す)

 

(参考)

 

コマンドプロンプトの起動

Windowsコマンドプロンプトを管理者権限で起動します。

 

 

f:id:jsstudy:20181125114111p:plain

 

Ubuntu用のフォルダを作成

コマンドプロンプトで以下のコマンドを入力します。

 

mkdir %USERPROFILE%\vagrant\ubuntu64_18
cd %USERPROFILE%\vagrant\ubuntu64_18

 

Windowsのユーザー名が「user」だった場合、「%USERPROFILE%」の部分は「C:\Users\user」に置き換わります。

具体的には、以下のコマンドと同じ意味になります。

 

mkdir C:\Users\user\vagrant\ubuntu64_18
cd C:\Users\user\vagrant\ubuntu64_18

 

ここにVagrantで使う設定ファイルが保存されます。

 

Vagrant用のUbuntuイメージファイルをインストール

今回使うUbuntu 18.04 LTSの仮想マシン用のデータは、以下の場所にあります。

Vagrant box ubuntu/bionic64 - Vagrant Cloud

このページで「currently released version」のバージョン番号をコピーします。

(2018年11月25日現在で最新のバージョンは「v20181124.0.0」でした。)

 

コマンドプロンプトで、以下のコマンドを入力します。

(使うバージョンに合わせて、赤文字の部分を変更します。)

(黄色の文字の部分は仮想マシンの名前なので、自分で決められます。)

 

vagrant box add ubuntu/bionic64 https://vagrantcloud.com/ubuntu/boxes/bionic64/versions/20181124.0.0/providers/virtualbox.box

 

1.4GBほどあるファイルがダウンロードされるので、ちょっと待ち時間があります。(回線速度によりますが、10~20分程度?) 

 

仮想マシンの初期化

VagrantUbuntuの設定ファイルを作成します。

コマンドプロンプトで、以下のコマンドを入力します。

vagrant init ubuntu/bionic64

 

これでWindows10にUbuntuをインストールできました。

「C:\Users\user\VirtualBox VMs」のようなフォルダ内に、仮想マシンUbuntu用データがあるはずです。

 

 

仮想マシンの起動と停止

Vagrant仮想マシンを操作します。

コマンドプロンプトで以下のコマンドを入力します。

 

仮想マシンUbuntu)の起動

vagrant up

 

仮想マシンUbuntu)の停止

vagrant halt

 

(※以上の操作は、vagrantUbuntu用フォルダに移動した状態で行います。)

cd C:\Users\user\vagrant\ubuntu64_18

↑このコマンドを先に入力してない場合、以下のようなメッセージが出ます。

C:\Windows\System32>vagrant up

 

A Vagrant environment or target machine is required to run this
command. Run `vagrant init` to create a new Vagrant environment. Or,
get an ID of a target machine from `vagrant global-status` to run
this command on. A final option is to change to a directory with a
Vagrantfile and to try again.

  

これでVirtualBoxUbuntuの起動と停止ができるようになりました。

 

 

SSHでログイン

仮想マシン上にあるUbuntuに、Windows側からアクセスして利用します。

WindowsSSH接続用ソフトには「RLogin」を使います。

 

SSHとは?

SSHは、コンピューター間の通信内容を暗号化して、安全にデータのやりとりを行うためのプロトコール(通信規格)です。

サーバーを遠隔操作するときに、SSHを使います。

 

Secure Shell - Wikipedia

Secure Shell(セキュアシェル、SSH)は、暗号や認証の技術を利用して、安全にリモートコンピュータと通信するためのプロトコル

パスワードなどの認証部分を含むすべてのネットワーク上の通信が暗号化される。

 

RLoginとは?

rlogin/telnet/ssh(クライアント)ターミナルソフト

RLoginは、Windows上で動作するターミナルソフトです。

プロトコルはrlogin,telnet,ssh(バージョン1と2)の3種類に対応し遠隔でのサーバーメンテナンスを考えて安全な暗号化通信をサポートしています。

 

RLoginのダウンロード

 

ここではWindows 64ビット版用の「rlogin_x64.zip」をダウンロードして解凍します。

 

RLoginの設定

Vagrantでサーバー(Ubuntu)のSSH設定を確認します。

コマンドプロンプトで以下のコマンドを入力します。

 

vagrant ssh-config

 

以下のように、サーバー(Ubuntu)のSSHの設定内容が表示されます。

 

C:\Users\user\vagrant\ubuntu64_18>vagrant ssh-config

 

Host default
HostName 127.0.0.1
User vagrant
Port 2222
UserKnownHostsFile /dev/null
StrictHostKeyChecking no
PasswordAuthentication no
IdentityFile C:/Users/user/vagrant/ubuntu64_18/.vagrant/machines/default/virtualbox/private_key
IdentitiesOnly yes
LogLevel FATAL

 

この情報を基にして、RLoginのSSH接続情報を設定します。

RLoginを起動して、画面左上の[ファイル] → [サーバーに接続] → [新規]をクリックします。

各欄を以下のように入力します。

 

  • エントリー/コメント: vargrant
  • プロトコル: SSH
  • Server Address: localhost (=127.0.0.1と同じ意味)
  • Socket Port: 2222
  • User Name: vagrant
  • Password: なし (=空欄のままでOK)
  • デフォルト文字セット: UTF-8

 

f:id:jsstudy:20181125132113p:plain

 

ここまで入力できたら、「SSH Identity Key」の[参照]ボタンをクリックします。

 

SSH接続で使う秘密鍵のファイルを指定します。

Vagrantで用意した仮想マシンSSH接続するための秘密鍵は、以下の場所に保存されています。

ファイル名は「private_key」となってます。

 

%USERPROFILE%\vagrant\ubuntu64_18\.vagrant\machines\default\virtualbox\private_key 

 

Windowsユーザー名が「user」だった場合は、具体的には以下のパスになります。

C:\Users\user\vagrant\ubuntu64_18\.vagrant\machines\default\virtualbox\private_key

 

f:id:jsstudy:20181125132540p:plain

 

「private_key」を選択して、[開く]をクリックします。

これで秘密鍵が指定できました。

 

今設定したサーバーの接続情報を選択して[OK]ボタンをクリックすると、RLoginでUbuntuにリモートログインできます。

 

f:id:jsstudy:20181125134258p:plain

 

Ubuntuにリモートログインできたら、上記のような画面が出てきます。

 

 

Ubuntuの日本語化

Ubuntuの環境はデフォルトで英語なので、日本語も扱えるようにします。

RLoginでUbuntuにリモートログインした状態で、以下の操作を行います。

 

現在地の確認

RLoginで「pwd」とコマンドを入力して「/home/vagrant」と表示されたらOK。

もし違う場所にいたら、「cd /home/vagrant」とコマンドを入力して、vagrantユーザーのホームに移動しておきます。

ここで「ls -la」とコマンドを入力したら、「.profile」という設定ファイルがあることが確認できます。

 

「.profile」の編集

RLoginで以下のコマンドを入力します。

 

sudo locale-gen ja_JP.UTF-8
echo export LANG=ja_JP.UTF-8 >> ~/.profile

 

設定内容の変更を反映させるために以下のコマンドを入力します。

 

source ~/.profile

 

日本語設定ができたか確認するために「date」というコマンドを入力してみます。

 

date

 

日本語で日時が表示されていれば、Ubuntuの日本語化はOKです。

2018年 11月 25日 日曜日 05:37:44 UTC 

 

 

Ubuntuの更新

最後に、Ubuntuを更新しておきます。

RLoginで以下のコマンドを入力します。

 

sudo apt-get update

 

RLoginでサーバーからログオフするには「exit」というコマンドを入力します。

 

 

まとめ

  • 仮想化ソフト「VirtualBox」を使うと、Windows10(ホストOS)上にUbuntu(ゲストOS)をインストールできる。
  • VirtualBoxの操作を簡単にする「Vagrant」を使う。
  • UbuntuSSH接続して、リモート操作ができる。

 

Windows上でLinuxを使う環境が用意できました。

Webサイト制作などで利用してみたいと思います。