LoginSignup
2
2

More than 5 years have passed since last update.

古いPC上にVirtualboxのテスト環境を作ってみたらハマった

Last updated at Posted at 2016-05-11

はじめに

古いPCにvirtualBox 環境を作ろうとしたらいろいろハマったというお話。

構築準備

必要な部品を揃えます。

  • VirtualBox+vagrant(CentOS)

VirtulBox

下記からダウンロード

VirtualBox

vagrant

下記からダウンロード

Vagrant

構築開始

windows に仮想マシン関連のファイルが作成されるディレクトリを作成
vagrantを初期化

c:\> mkdir vmbox
c:\> cd vmbox

c:\> vagrant init

vagrant設定用のファイル (Vagrantfile)が作成されるのでこれを修正

# config.vm.box = "base"
config.vm.box = "puphet/centos65-x64"

この修正により、centos 6.5がインストールされます
(実はすでにここに落とし穴があった)

c:\vmbox> vagrant up

ダウンロードされて起動を開始します

エラー発生

OSの起動をしようとするところでrubyが connection_nonlock というエラーメッセージを出して止まってしまいました。

この vagrant up というコマンドでは、コマンドラインで動いているため、どのような状況になっているのかが分かりません。

が、実は インストールある VirtualBox のアプリを起動すればこれを見ることが可能です。

今回の場合、仮想マシンの起動状況を見てみると、そもそもゲストOSが起動していませんでした。インストールに指定した Centosの 64bit版が ホストマシンでは起動できないのが原因でした。(どれだけ古いマシンかばれてしまう)

再度インストールするため 下記で 32bit版をさがします

Vagrant Cloud

bento/centos-6.7-i386 というのがありましたのでvagrant設定用のファイル (Vagrantfile)を修正

# config.vm.box = "base"
config.vm.box = "bento/centos-6.7-i386"

再度、仮想マシンを起動するわけですが、このとき仮想マシンが中途半端に立ち上がった状態になっているのでこれを止めてから 再度起動させます

c:\vmbox> vagrant halt

c:\vmbox> vagrant up

次に止まったのが ssh の設定を行っているところで下記のエラーで止まってしまいます

 default: Warning: Remote connection disconnect. Retrying...
 default: Warning: Remote connection disconnect. Retrying...
C:/HashiCorp/Vagrant/embedded/lib/ruby/2.2.0/socket.rb:60:in `connect_nonblock':Invalid atgument - onnect(2) for 127.0.0.1:2222(Errno::EINVAL)

そもそも、接続ができずにリトライを繰り返しています。
これも前述の通り VartualBoxを起動しながら状況を確認。
すると、OSがまだ起動を終わっていないことが分かり愕然。

気長に起動するまで待ったのち、コマンドラインから ssh の設定を行います。これにより、sshの設定が表示されます

c:\vmbox> vagrant ssh

Host: 127.0.0.1
Port: 2222
Username: vagrant
Private key: C:/vmbox/.vagrant/machines/default/virtualbox/private_key

c:\vmbox> 

ここまでくれば、CentOS環境での作業になるので問題解決。

結局

新しい情報見ながら、古い環境で何か作ろうとするとハマるというおちです
まあ、こんなことにはまる人も少ないと思いますが、せっかく時間を消費したので備忘録として残しておきます。

参考

この本を参考に構築しました。

JS+Node.jsによる Webクローラー/ネットエージェント[開発テクニック]

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2