CentOS7をVirtualBoxで

はい。

もう。

(^p^)しーね!しーね!

まあ、DNSは(たぶん)もう使わないと思うし、検証用だったんで別にもっかいたてればいんですけどね。

運よくゾーンファイルも残してたし。

別の用があって起動したわけなんでともかく全部立て直しですわ。

せっかくなのでVirtualBoxから入れなおします。

 

VirtualBox

なお、投稿日時点の最新は4.3.14ですが、どうもこのバージョンはバグがあるらしくゲストを作って起動させるともれなく(rc=-104)というエラーコードが吐かれて起動できません。

おいちゃん環境はざっと

・Windows7 Ultimate x64
・CPU Intel Corei7

です。

しょうがないので一個前の4.3.12で入れました。

入れ方は前回と変わらずなので割愛しますが、ホスト側のディレクトリをマウントするところでエラーが出ました。

VBoxGuestAdditionsをインストール

vboxsfが「そんなもんないれす(^q^)」と。。。。。
Google先生に聞いてみると今のVirtualBoxはVBoxGuestAdditionsというイメージからコマンドをビルドする必要があるそうです。
インストールフォルダを見てみるとVBoxGuestAdditions.isoというイメージが同梱されています。

そのまま使ってもよかったと思うのですが、一応ここからバージョンのあったものを落としてきました。

別バージョンをご利用の場合はURLのバージョンの部分を適宜書き直してください。

仮想CDドライブにこのイメージを指定して起動。

仮想ドライブは/dev/cdromにいるので適当な場所にマウント。

mount /dev/cdrom /media

マウント先を見てみると、

32Bit VBoxLinuxAdditions.run VBoxWindowsAdditions.exe
64Bit VBoxSolarisAdditions.pkg autorun.sh
AUTORUN.INF VBoxWindowsAdditions-amd64.exe cert
OS2 VBoxWindowsAdditions-x86.exe runasroot.sh

こんなファイルがあるので、このうち、「VBoxLinuxAddtions.run」をshで起動します。

/bin/sh /media/VBoxLinuxAdditions.run

で、エラーになります。ヽ(・ω・)/ズコー

ログ見れって言われるし、ログ見ればあらかたわかるのですが、主な対処は以下。

  1. kernel-develをインストール
  2. KERN_DIRを指定する
  3. gccインストール
  4. perlインストール
yum install kernel-devel
export KERN_DIR=/usr/src/kernels/入れたバージョン/
yum install gcc
yum install perl

これで

/etc/init.d/vboxadd setup

とやればOK。
KERN_DIRに指定するのは該当ディレクトリの「/usr/src/kernels/」なので、わからなかったら、直接そこを見て指定したいディレクトリがあるかみるといいです。
あとはVirtualBox側の「共有フォルダ」を設定し、vboxsfでマウントすればOKです。

で、なんとか立て直した後においちゃん、調子こいたんですな。

CentOS7って出てね?
検証環境なんだからいれてみね?

はい。
もう。
(^p^)しーね!しーね!

VirtualBoxでCentOS7を立てる

立てるとこまでは基本問題なかったれす。
ちょっとコマンド変わっててifconig が ip addr show になってたりしてびっくりしたけど、そこもなんとかクリア。

で、またホスト側のディレクトリをマウントしようとしてこけるわけです。

さすがに連発で作業したのでVBoxGuestAdditionsを入れる前に上記4つの作業は先にやりました。
にもかかわらずコケる・・・・。

コケたログ

grep: /lib/modules/3.10.0-123.6.3.el7.x86_64/build/include/linux/version.h: そのようなファイルやディレクトリはありません
make KBUILD_VERBOSE=1 CONFIG_MODULE_SIG= -C /lib/modules/3.10.0-123.6.3.el7.x86_64/build SUBDIRS=/tmp/vbox.0 SRCROOT=/tmp/vbox.0 modules
test -e include/generated/autoconf.h -a -e include/config/auto.conf || (		\
echo >&2;							\
echo >&2 "  ERROR: Kernel configuration is invalid.";		\
echo >&2 "         include/generated/autoconf.h or include/config/auto.conf are missing.";\
echo >&2 "         Run 'make oldconfig && make prepare' on kernel src to fix it.";	\
echo >&2 ;							\
/bin/false)

とりあえずversion.hがないというのが悪いってのはわかるのでversion.hを探してみると、いっぱい出てくる(>’A`)>ウワァァ!!
でもたしかに指定パスのはない・・・。
調べてみると、CentOS7で場所が変わったそうで、 /usr/include/linux/version.h をコピーしてあげるといいらしい。

コピーするとエラーが変わって

make KBUILD_VERBOSE=1 CONFIG_MODULE_SIG= -C /lib/modules/3.10.0-123.6.3.el7.x86_64/build SUBDIRS=/tmp/vbox.0 SRCROOT=/tmp/vbox.0 modules
test -e include/generated/autoconf.h -a -e include/config/auto.conf || (		\
echo >&2;							\
echo >&2 "  ERROR: Kernel configuration is invalid.";		\
echo >&2 "         include/generated/autoconf.h or include/config/auto.conf are missing.";\
echo >&2 "         Run 'make oldconfig && make prepare' on kernel src to fix it.";	\
echo >&2 ;							\
/bin/false)

こんなん(´ε`;)ウーン…

皆目見当がつかんでござる。
ので、Google先生に相談だ!

で、こちらのサイトがHitしました。

hao’s work log

vi /opt/VBoxGuesstAdditions-4.3.12/src/vboxguest-4.3.12/vboxguest/r0drv/linux/memobj-r0drv-linux.c

### 1536, 1541行目
KERNEL_VERSION(3, 13, 0) を KERNEL_VERSION(3, 10, 0)に変更

 

え・・・・ソース、書き換える・・・・・の・・・・?(おいちゃん、Cなんかガッコのころに少し見ただけマン)

(((((((( ;゚Д゚))))))))ガクガクブルブルガタガタブルブル

でもここまで来たらやるしかないので。

バックアップを適当に取って、viで「/KERNEL_VERSION」とかをしながらCtrl+gで位置を確認。
1536行目と1541行目に該当箇所を発見。
KERNEL_VERSION(3, 13, 0)からKERNEL_VERSION(3, 10, 0)に直します。

これでなんとかVBoxGuestAdditionsのインストールが無事終了。

( ´Д`)=3 フゥ

なんだかさらにドハマりしそうな予感ですが、とりあえずCentOS7の検証環境は手に入れられました!

☆おまけ

ちなみにOSインストール終了してネットワーク準備するとだいたいすぐにyum updateすると思いますが、ここでもちょっとした躓きが。
yum updateでkernelもアップデートしてしまい、初期のuname -r とバージョンが違ってしまったのです。
で、そのままKERN_DIRをアップデートバージョンで設定してしまったため、またもVBoxGuestAdditionsのインストールでエラーに。
これは結構すぐ気が付けたので再起動して解消したんですが、yum updateしたら再起動は必ずしたほうがいいっす。(当たり前か・・・)

広告
カテゴリー: お仕事 タグ: パーマリンク

CentOS7をVirtualBoxで への1件のフィードバック

  1. ピンバック: 【CentOS7 Minimal】VirtualBox Guest Additions のインストールでの試行錯誤の記録 – oki2a24

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中