How to setup CentOS virtual machine environment on Windows (part2) / Windows上にLINUX(CentOS)の仮想マシンを作成する方法(2)

この記事は前回のつづきです。

VirtualBoxをインストールし、参考資料を見ながらVagrantをインストールしCentOS6.5環境をインストールしたものの、SSH(シェル)にログインしようとしてもできませんでした。なぜだろう。

検索していろいろ記事を読んでみると、同様にうまくいかずに苦労している人が少なくないようです。

その後の顛末を記しました。

Vagrantのバージョンは、1.8.1です。vagrant –versionコマンドで確認しました。記事執筆時点(2016.1.24)の最新版です。

CentOS6.5用ボックスファイル(環境設定ファイル)の追加
http://www.vagrantbox.es/
にいくと、現在追加可能なボックスファイルの名前を確認することができます。

コマンドプロンプトから以下のコマンドを入力。
vagrant box add {適当な名前} {boxファイルURL}
{適当な名前}のところには自分で識別するときにわかりやすい名前を入力。今回はcentos6.5をインストールするのでcentos65。
{boxファイルURL}には、導入対象となるボックスファイルが保存されているアドレスを入力します。

入力例:
cd vagrant
vagrant box add centos65 https://github.com/2creatives/vagrant-centos/releases/download/v6.5.3/centos65-x86_64-20140116.box

仮想マシンを作成する
Windowsのコマンドプロンプト(「ファイル名を指定して実行(R)」からcmdと入力するとコマンドプロンプトに入ることができます)から、仮想マシンを作成します。
centosという名前のフォルダを作成します。
今回は、C:直下にvagrantというフォルダを用意し、その下に作成します。

cd c:\vagrant
mkdir centos

作成したcentosフォルダに移動し、vagrantfileを作成します。
cd centos
vagrant init CentOS65

生成が完了したというメッセージが出れば成功です。
dirコマンドを実行すると、vagrantfileが生成されていることが確認できます。

vagrantfileの変更
コマンドプロンプトからnotepad vagrantfileと入力し、vagrantfileを開きましょう。初期設定を変更します。

確認事項1 config.vm.box = “CentOS65” となっていればOK。コメントアウトされている、または別の名前になっている場合は修正する。
コメントアウトされている行は冒頭に半角の#がついていますので、#を削除することでコメントアウトを解除できます。
確認事項2 config.vm.network “private_network”, ip: “192.168.33.10” がコメントアウトされていないこと。されていれば#を削除。
確認事項3 config.vm.synced_folder “../share”, “/var/www/html/share”の追加。

確認事項3は、ファイル共有を可能にするための1行です。
これで、C:\vagrantfile\share というフォルダを仮想OS上でも閲覧可能になります。

C:\vagrantfile の下にshareというフォルダを作成します。
ついで、C:\vagrantfile\shareの下に、index.htmlファイルを作成します。
中身は以下のような簡単なものでかまいません。
(index.htmlファイルの中身の記載例 ここから)
<h1>Hello Vagrant!
(ここまで <hはここでは全角になっていますが、実際に作成する場合には半角にしてください。)

次に説明するCentOSの起動を行った後、以下の状態になっていれば共有フォルダとして認識されていることが確認できます。

【条件1】CentOSを起動し、
【条件2】/var/www/html の下にshareというディレクトリがある
【条件3】shareの下にindex.htmlがある

CentOSの起動方法
コマンドプロンプトから、先ほど作成したvagrantfileのおいてあるディレクトリに移動します。
vagrant upと入力してください。
これで起動可能です。
初回だけ初期設定の関係で3~5分の待ち時間がかかります。
他のvagrantコマンドは、前回の投稿を参照してください。

SSH接続をする
Macの場合はvagrant sshで接続できるそうですがwindowsでは接続できないので、Tera Termを使用して接続します。Tera Term以外でもお使いのsshクライアントソフトであれば接続可能です。まだお持ちで無い方はフリーでダウンロードできます。

Tera Termからのアクセス方法
Tera Termを開き
・ホスト(T) 192.168.33.10 (上記確認事項2で記載のIPアドレス)
・TCPポート 22
・サービス SSH
でOKボタンをクリックしてください。バージョンはSSH2、プロトコルはUNSPEC
vagrant2-1無題

 

ここで接続できないあなた!!!

 

わたくしもここで1週間足止めを食らいました。
下記の記事のリンク、英語記事を見て回っていて気がつきました!

記事を漁っていて気がついたこと:
Intel Virtual technologyがBIOSレベルでenableになっていないとVirtual machine自体とのPC本体とのコミュニケーションがうまくいかないらしい。

私の行った対応:
私の使っているThinkpad W540を再起動しF1キーでBIOSに入り、Intel Virtual technologyがDisabledになっていたところをenabledに変更し、保存して再起動。Windows起動後virtual upすると変なメッセージが消えてSSHクライアントソフトのtera termからログインできました!!!
vagrant2-2

login ID = vagrant
login password = vagrant
で、CentOS shellにログインできます。
vagrant2-3

この記事のBIOS設定変更より上の部分の作業をしても、昨日と同じところでとまってしまいSSH接続できませんでしたので、そもそも今回の記事の前半の作業は実は不要で、BIOS設定変更だけしていれば解決したのかもしれません。

いずれにせよ、Windows7上でCentOS6.5のバーチャル環境を設定することができました。

参考1:【Windows7(64bit)】VirtualBox+VagrantでCentOSの仮想環境構築http://qiita.com/kobaboy/items/5469523a2b0bf8b61e8e
参考2:http://qiita.com/super-hot-engineer/items/21e4456b8318db877f5b
参考3:http://qiita.com/nabeo5656/items/fd77fd0746fbb95f8373
参考4:http://blog.suusuke.info/2013/12/03/vagrant-up-%E3%81%A7%E3%82%A8%E3%83%A9%E3%83%BC%E3%81%8C%E5%87%BA%E3%82%8B%E3%81%A8%E3%81%8D%E3%81%AB%E7%A2%BA%E8%AA%8D%E3%81%99%E3%82%8B%E3%81%93%E3%81%A8/
参考5:http://qiita.com/kobaboy/items/5469523a2b0bf8b61e8e

SNSでもご購読できます。