質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

VirtualBox

VirtualBoxは、現在米オラクル社が開発している、 x86仮想化ソフトウェア・パッケージの一つです。

Vagrant

Vagrantは、VirtualBox上の仮想マシンを コマンドラインから作成してくれるソフトウェアです。 ビルド環境など容易に構築が可能です。

Q&A

解決済

1回答

593閲覧

vagrant up で二度目からタイムアウト

退会済みユーザー

退会済みユーザー

総合スコア0

CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

VirtualBox

VirtualBoxは、現在米オラクル社が開発している、 x86仮想化ソフトウェア・パッケージの一つです。

Vagrant

Vagrantは、VirtualBox上の仮想マシンを コマンドラインから作成してくれるソフトウェアです。 ビルド環境など容易に構築が可能です。

0グッド

0クリップ

投稿2019/06/12 05:18

編集2019/06/16 21:45

問題点

Vagrant + Virtualbox を使って Windows10 上に CentOS6 を立ち上げたいと思っているのですが、うまく行きません。参考にしたのは、ドットインストールの「ローカル開発環境の構築」です。
https://dotinstall.com/lessons/basic_localdev_win_v2

下記の環境で、ドットインストールの手順に従い、一度はエラーもなく最後まで行って、PHP での 「hello world」 の表示もうまく行きました。しかし、vagrant halt した後、もう一度、vagrant up すると、private key のところで止まり、タイムアウトのエラー表示が出て、Putty につながらなくなってしまいました。

開発環境
Windows10 pro 32bit
Virtualbox 5.2.22
Vagrant 2.2.2
CentOS 6.7(32bit)
Putty 0.71

Vagrantfile

1Vagrant.configure("2") do |config| 2 config.vm.box = "bento/centos-6.7-i386" 3 config.vm.network "private_network", ip: "192.168.33.10" 4 config.vm.provider "virtualbox" do |vb| 5 vb.gui = true 6 end 7end

試したこと

  • vagrant up 時にセキュリティソフト、ファイアーフォールを無効にする。
  • ホストマシンのBIOS設定で VT-x/AMD-V を有効にする。
  • Vagrant と Virtualbox のバージョンの組み合わせをいろいろと変えてみる。
  • bento/centos-6.8-i386 (6.7 ではなく)で vagtant init してみるが、うまく行かない。
  • Vagrantfile に
    config.vm.provider "virtualbox" do |vb|
    vb.gui = true
    end

を追加して、vagrant up 時に VirtualBox GUI を自動で立ち上げる。

検索して調べていると、似たような質問をしている方がいらっしゃいました。
https://teratail.com/questions/52139

カーネルの問題? よくわからないけど、これかもしれない、と思い、書いてある通り試してみると、yum update 前の古いカーネルだとすんなりと接続できることがわかりました。
( vagrant up -> 「しばらくするとGUIが自動で立ち上がる」-> 「ロゴの後の画面が表示されたら、タイマーが切れる前にどれでもいいので PC のkey を押す」 -> 「矢印 key でyum update 前の古いカーネルを選択してENTER key を押す」)

でも一度は yum update でアップデートされたカーネルでつながったのでは? と思い、
ドットインストールが用意してくれた設定用のスクリプトの実行が終わった段階( exec $SHELL -l )で、カーネルのバージョン確認をしてみてみました。( uname -r )
すると、カーネルのバージョンは古いままでした。(php の「hello world」が表示できたので、てっきりカーネルも最新のものになっていると思い込んでいました)
カーネルの場合は一度電源を切って(vagrant halt)から、リロードしないと、新しくならないみたいです。

要するに、アップデートされた新しいカーネルと今の環境では相性が悪いということでしょうか?
それともなにか設定をいじったり、インストールすることで新しいカーネルでもうまく接続できるようになるでしょうか? ご教示いただければ幸いです。

補足情報

ドットインストールによる仮想環境(CentOS)の構築手順

PowerShell
0. 仮想マシンを作るフォルダを作って、そこで仮想マシン設定用のVagrantfileを作る
vagrant init bento/centos-6.7-i386
0. Vagrantfileを編集して仮想マシンのIPアドレスを192.168.33.10にする
config.vm.network "private_network", ip: "192.168.33.10"
0. 仮想マシンを起動する
vagrant up

Putty で仮想マシンの設定
0. OSを最新状態にアップデート
sudo yum -y update(たとえば、CentOS6.7 なら CentoOS6.10、CentOS7にはならない)
私の場合、上記コマンドではなく次のように打ったらうまく行きました。
sudo yum -y update --exclude=kernel* --exclude=centos*
(CentOS6.7 のままカーネルのアップデートなし)
0. スクリプトを入手するためのgitをインストール
sudo yum -y install git
0. gitを使ってアプリケーション設定用のスクリプトをダウンロード
git clone https://github.com/dotinstallres/centos6.git
0. centos6フォルダができるのでそちらに移動
cd centos6
0. スクリプトを実行 // php や ruby などをインストール
./run.sh
0. もろもろの設定を反映
exec $SHELL -l

追記

VirtualBox GUI の画像
イメージ説明

アップデート前のカーネルを選択すると、次の画面が表示されます。
イメージ説明
アップデート後のカーネルを選択すると、PowerShell のほうにタイムアウトのエラーが表示されます。
最初このまま Putty には接続できないと思ったけれども、30分ぐらいすると、上の画像のように localhost login: _ が表示され、Putty につながるようになります。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

yum update についてちょっと調べてみると、どうやらカーネルと一緒に CentoOS のバージョンも上がるらしいです。確かに上の画像でも CentOS 6.7 からいつのまにか 6.10 になっています。
カーネルも OS のバージョンも変えたくない場合は、次のコマンドを打てばよいようです。
sudo yum update --exclude=kernel* --exclude=centos*
CentOSのバージョンを確認するコマンドは、
cat /etc/redhat-release
参考 https://ex1.m-yabe.com/archives/965

ちなみに、たとえば OS のバージョンはそのままで、カーネルだけアップデートすることはできないのか、
と検索してみると、次のような回答が。
https://oshiete.goo.ne.jp/qa/6501052.html
依存関係や拡張の問題などでハマる可能性がありそうなので、やめておくことにしました。
とりあえずこれで自己解決ということにしておきます。

追記
ドットインストールの自動スクリプトで環境構築すると、PHP のバージョンは現状で 5.6 です。
ちょっと古い気がしたので PHP7.0, Apache2.2.15, MySQL 5.7 にできないかと、
今度はドットインストールのスクリプトなしで新たに構築してみました。
結果は VirtualBox5.2.22, Vagrant2.2.2, CentOS6.7 の組み合わせでも、
うまいこと接続してくれました!
古い32bit PC でも仮想構築ができるんだ、ととても喜んでいます。

投稿2019/06/14 09:07

編集2019/06/17 12:40
退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問