skillup

技術ブログ

サーバー・ネットワーク

VPSのCentOS上にVirtualBox+Vagrantをインストール

投稿日:2015年12月15日 更新日:

普段使っているPCにVirtualBox+Vagrantをいれることはあったんですが、VPS上のCentOSに仮想環境を入れたいとの要件があり、試してみました。

結論からすると結局できなかったんですが、そこでわかったことなどをメモしておきます。(centOSは6、7両方で試しました。)

全体の参考リンク

CentOS 上で Vagrant を導入するまでのメモ(CUI)

dkmsのインストール

VirtualBoxをいれるにはvboxdrvといわれるカーネルモジュールが必要になります。

dkmsとはこのカーネルモジュールのアップデートを助けるフレームワークのようです。

VirtualBoxのインストール

dkmsをインストールしたあとに、VirtualBoxをインストールします。

Vagrantのインストール

これで通常なら起動するようです。

エラー対策

が、ここでvirtualboxが動きませんでした。

おもむろにVagrantを使おうとしたが躓いた

Ubuntu VirtualBox その42 – VirtualBoxのカーネルモジュールの手動ビルドが動作しない現象

を実行するも全く動かなかったので、検索で見つかった情報があり、下記コマンドを実行しました。

ちなみにcentOS6では下記コマンドで稼働しました。

ただ、下記のようなエラーメッセージがでて動かず。

ログをみると

カーネルのディレクトリがわからないとでているので、下記で実行し反映しました。

Linuxの環境変数を設定した。

Linux(CentOS)にパスを通す方法

CentOS に VritualBox をインストールする

これで再起動しましたが、結局うごきません。

カーネルのバージョン違い?

このあと、カーネルのヘッダーのバージョンが違うからか?と思ったのでシンボリックリンクをはったのですが、結局解決せず。(エラーメッセージ変わらず)

CentOSでLinuxカーネルヘッダー違いでVirtualBox DKMS 起動がこける時の対応

ちなみに

uname -r  2.6.32-042stab108.8

カーネルヘッダーの場所は

です。

このあとカーネルのヘッダーのバージョンアップなども行いましたが、ダメでした・・・

バージョンアップ自体ができず「パッケージ kernel-devel-2.6.32-042stab108.8 は利用できません」という冷たいメッセージが(汗)

DKMSのビルドエラー

CentOS6.6へのVairtualBox と Vagrantのインストール

LinuxMaster.jp CentOS6.4をLinuxカーネル3.10.0にアップデートしてみました(カーネル再構築)

CentOS6.7 カーネルアップデート

うーんVPS上で仮想環境構築は無理なんでしょうか・・・とりあえずここらへんであきらめてギブ。

-サーバー・ネットワーク
-

執筆者:


  1. vagrant より:

    参考にさせて頂きました。
    同じエラーになりましたが、下記で解決しました。
    下部参照のこと。

    https://forums.virtualbox.org/viewtopic.php?f=7&t=61773

    ↑を見て、下記のコマンドを試したところ、変わらず。
    /etc/int.d/vboxdrv setup KERN_DIR=/usr/src/kernels/ls /usr/src/kernels

    上記を下記に変更したらいけました。
    env KERN_DIR=/usr/src/kernels/ls /usr/src/kernels /etc/init.d/vboxdrv setup

    • matsumoto より:

      vagrantさん

      初めましてmatsumotoです。

      >https://forums.virtualbox.org/viewtopic.php?f=7&t=61773
      >↑を見て、下記のコマンドを試したところ、変わらず。
      >/etc/int.d/vboxdrv setup KERN_DIR=/usr/src/kernels/ls /usr/src/kernels

      >上記を下記に変更したらいけました。
      >env KERN_DIR=/usr/src/kernels/ls /usr/src/kernels /etc/init.d/vboxdrv setup

      ありがとうございます!

      こちら結局できずに、あきらめておりましたが、vagrantさんの情報を元に
      再度チャレンジしてみますね!

  2. vagrant より:

    コメントの一部がちゃんと反映されていなかったので、補足。

    上記コマンドls /usr/src/kernelsの部分はソースのURLのコマンドの通りバッククォートで囲って下さい。
    それか、$(ls /usr/src/kernels)にして下さい。

    • matsumoto より:

      vagrantさん

      >上記コマンドls /usr/src/kernelsの部分はソースのURLのコマンドの通り
      >バッククォートで囲って下さい。
      >それか、$(ls /usr/src/kernels)にして下さい。

      たびたびありがとうございます!!

      最近はあまり時間がとれないのですが、別の機会でこのネタを使いたいので、その時にぜひこの方法で試させていただきます。

comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

システム監視の基礎

システム監視のルールがほとんどないので、ちょっと勉強中です。 Contents1 危険率の判定2 参考文献 危険率の判定 今まで一番知りたかったことがこれなんですね。例えばシステムに負荷がかかっている …

no image

vueの環境構築に関して(モジュールバンドラの比較やvue-cliコマンドなど)

vueをビルドする場合、一般的にはwebpackなどのモジュールバンドラを使うかと思います。少しまとめて置こうかと思います。 Contents1 モジュールバンドラ1.1 webpack1.2 lar …

no image

inotifyによる検知

以前、pynotifyというpythonの検知プログラムを書きましたが、元々はinotifyというLinux上のパッケージのライブラリが元になっています。 以前調べたリンク 監視検知処理に関して 実務 …

no image

serverspecによるサーバー自動テスト

最近は管理しているサーバーが多いのと、構成管理ツール(Ansible)なんかをちょくちょく使ってますが、ちゃんと入っているかどうかを確認するのはそれなりに大変だったりします。 が、構成管理ツール自体も …

no image

docker-composeに関して

dockerで環境構築する場合は基本的に下記のような流れをとると思います。 それぞれの出来合いのイメージをpull イメージに様々なライブラリをインストール それらをコンテナとして起動&連携 …