mieki256's diary



2014/07/15(火) [n年前の日記]

#1 [virtualbox][vagrant] VirtualBox + Vagrantを使ってみようとしたけどトラブル発生でハマってしまった

VirtualBox + Vagrant を使えばテスト用サーバ環境を簡単に作成・削除できるという話を以前からチラチラ目にして気になっていたので、MySQL を勉強するついでにこの際導入してみようかなと思い立ったのですが。

vagrant は便利とか、簡単に使えるという話だったけど、全然そんなことはなかった…。というか、VirtualBox が不具合を起こしっぱなしで、巷の解説ページのようにはすんなり動いてくれなくて。vagrant どうこうとかソレ以前の状態で。

ちなみに、環境は、Windows7 x64。
症状としては以下のような感じ。
VirtualBox と Vagrant のバージョンによって相性があるという話を見かけたので、以下の版を試してみたけど、結果は変わらず。
_Fix VirtualBox Fatal Could not read from Boot Medium! System Halted start-up boot Error - YouTube という動画を見かけて、どうもSATAコントローラの下にHDDイメージがあると不具合が起きる時があるようだと思えてきた。試しに、IDEコントローラの下にHDDイメージを移してみたところ、フツーにゲストOSが起動してくれた。ココがダメなのか…。分かるのに半日かかった…。

その後も色々試してみたけど。以下の可能性がありそう。 ということで対処方法としては…。 この2つをしてから VirtualBox を再インストールをしてみたら、手作業で Ubuntu をインストールしても、SATAコントローラ絡みで不具合が起きないように見えた。

今までは、何故か以下のようなフォルダ構成で。
VirtualBox\BIOS_image\
VirtualBox\HardDisks\
VirtualBox\Machines\

それが、.VirtualBox\ 等を削除した後では、例えば以下のような構成に。
VirtualBox VMs\Ubuntu\Ubuntu.vbox
VirtualBox VMs\Ubuntu\Ubuntu.vbox-prev
VirtualBox VMs\Ubuntu\Ubuntu.vdi
VirtualBox VMs\Ubuntu\Logs\
もしかすると、.vbox と .vdi を同じフォルダに入れておかないと、SATAコントローラ利用時は問題が起きるということかもしれず。

それとも、VirtualBox と一緒にインストールされるデバイスだかドライバだかに問題があるのだろうか? 完全アンインストールできないものだろうか…。アンインストール用のツールを探してみたけど見当たらず。

導入時の作業手順をメモ。 :

一応、導入時の作業手順をメモ。

VirtualBox と Vagrant のセットアップファイルをDLしてくる。

_Downloads - Oracle VM VirtualBox
_Download Vagrant - Vagrant

VirtualBox-4.3.12-93733-Win.exe、vagrant_1.6.3.msi をDLして、実行した。Vagrant インストール後、OS再起動を要求される。

VirtualBox のインストールフォルダにPATHを通しておいた方がいいらしい。環境変数 PATH を修正。

Vagrant がインストールできたかテスト。
vagrant -v
バージョンが表示される。

仮想PCの雛形ファイル群を、box と呼ぶらしい。 _A list of base boxes for Vagrant - Vagrantbox.es から欲しい box を選ぶ。

boxをダウンロード。
vagrant box add ubuntu14.04 https://cloud-images.ubuntu.com/vagrant/trusty/current/trusty-server-cloudimg-amd64-vagrant-disk1.box
Vagrant の設定や、box などは、C:\Users\ユーザ名\.vagrant.d\ 以下に保存される。

boxの一覧を表示。
vagrant box list

仮想PCの設定ファイル保存場所を、どこかのフォルダ内に作成する。
mkdir ubuntu14.04
cd ubuntu14.04

設定ファイルを作成。
vagrant init ubuntu14.04

設定ファイルを編集。GUI表示を有効にすることで、OSがちゃんと起動してるか確認できるようにする。Vagrantfile というファイルをエディタで開いて修正。
  config.vm.provider "virtualbox" do |vb|
    # Don't boot with headless mode
    vb.gui = true
 
    # Use VBoxManage to customize the VM. For example to change memory:
    vb.customize ["modifyvm", :id, "--memory", "1024"]
  end
問題無く起動することが分かったら、コメントアウトしちゃってもいいと思う。

動作確認のために、VirtualBox を一応起動しておく。

ゲストOSを起動。
vagrant up
ここで自分は前述のように問題発生。

とりあえずどうにか動かせるようになったと仮定して。

putty から以下の情報でログインする。
ホストIPアドレス  127.0.0.1
ポート            2222
ユーザ名          vagrant
パスワード        vagrant

仮想PCを終了(シャットダウン)。
vagrant halt

Vagrantのコマンドをメモ。 :

ゲストOSの状態を確認。
vagrant status

sshでログイン。もしくはsshログインのための情報を表示。
vagrant ssh
Windows環境の場合は、sshクライアントが標準でインストールされてないので、ホストIPアドレスやポートの情報が表示される。

boxを削除。
vagrant box remove BOX名

仮想PC再起動。
vagrant reload

仮想PCを削除。
vagrant destroy

#2 [vagrant][virtualbox] VirtualBox + Vagrant + Ubuntuの設定をメモ

色々設定。

CUIの表示を日本語化。 :

_Ubuntuの英語環境をCUIにて日本語対応にする | J-Linuxer を参考に作業。
sudo aptitude install language-pack-ja
sudo dpkg-reconfigure locales
vi ~/.bashrc
以下を追加。
export LC_MESSAGES=ja_JP.UTF-8
export LC_IDENTIFICATION=ja_JP.UTF-8
export LC_COLLATE=ja_JP.UTF-8
export LANG=ja_JP.UTF-8
export LC_MEASUREMENT=ja_JP.UTF-8
export LC_CTYPE=ja_JP.UTF-8
export LC_TIME=ja_JP.UTF-8
export LC_NAME=ja_JP.UTF-8

時刻を合わせる。 :

_Ubuntu日本語フォーラム / Ubuntu 8.10 の時刻表示が+9時間になる。 を参考にして作業。
sudo vi /etc/default/rcS
UTC=yes を UTC=no に変更。
sudo dpkg-reconfigure tzdata
「アジア/東京」に設定。

LAMP環境をインストール。 :

sudo aptitude install tasksel
sudo tasksel
「LAMP」を選んでスペースキーでマーク。TABキーで移動して「OK」。途中で MySQL root を入力する。

プライベートネットワーク(?)設定を追加。 :

_WindowsでVagrantによりVertualBox上にUbuntuを自動インストール | yoshikawa.64kb を参考にして作業。

Windows上のDOS窓で、ipconfig /all と打つ。「イーサネット アダプター VirtualBox Host-Only Network:」の IPv4アドレスを確認。例えば、192.168.56.1 だったとして。

もし、putty 等でssh接続してたら切断しておく。Vagrantfile を修正。
  config.vm.network "private_network", ip: "192.168.56.100"
といった具合に、IPアドレスを指定。

ゲストOSを再起動。
vagrant reload

ゲストOSにsshでログイン。ifocnfig で eth1 に指定したIPアドレスが設定されてることを確認。

Windows側のブラウザで、指定IPにアクセス。上記の例なら、http://192.168.56.100/ を開く。ページが表示されたらhttpサーバ(apache2)が動いてる。

テキストブラウザをインストール。 :

httpサーバがページを返すのかコンソール上でも確認したいので、テキストブラウザをインストール。
sudo apt-get install lynx w3m

以上、1 日分です。

過去ログ表示

Prev - 2014/07 - Next
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31

カテゴリで表示

検索機能は Namazu for hns で提供されています。(詳細指定/ヘルプ


注意: 現在使用の日記自動生成システムは Version 2.19.6 です。
公開されている日記自動生成システムは Version 2.19.5 です。

Powered by hns-2.19.6, HyperNikkiSystem Project