̃Gg[͂ĂȃubN}[Nɒlj

VirtualBox :: CentOS のインストールと設定



VirtualBox 4.1.4 でゲスト OS として CentOS 5.7 をセットアップした時のメモ。


ホストOS環境

O SWindowsXP SP3
CPUIntel Core2 Duo U7600 @1.20GHz
MEM2.5 GB
HDD120 GB


イメージのダウンロード

今回は sourceforge で公開されている VirtualBox の ディスクイメージ(*.vdi) を利用します。

  • CentOS 5.7 の VirtualBox イメージのダウンロードURL

http://sourceforge.jp/projects/sfnet_virtualboximage/releases/

CentOS > 5.7 > CentOS-5.7-i386.7z


OS の username/password

コンソールでログインする際の username と password です。

usernameroot
passwordreverse


ネットワークの設定

ダウンロードしてきたイメージは、MAC アドレスが自分の環境に合っていないので、そのままでは外に出て行けません。
※ ifconfig コマンドで確認しても ループバックの設定しか見えません。

# ifconfig
lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:8 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:560 (560.0 b)  TX bytes:560 (560.0 b)

ifconfig -a とすると、eth0 の項目が出現しますが、
/etc/sysconfig/network-scripts/ifcfg-eth0 の MAC アドレスの設定が正しくないので正常に認識されません。

# ifconfig -a
eth0      Link encap:Ethernet  HWaddr ●:●:●:●:●:●
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:8 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:560 (560.0 b)  TX bytes:560 (560.0 b)

/etc/sysconfig/network-scripts/ifcfg-eth0 の「HWADDR」を
ifconfig -a で表示される MAC アドレスに書き換えて、最後にネットワーク設定をリロードします。

# vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=dhcp
HWADDR=xx:xx:xx:xx:xx:xx # ← ifconfig -a で表示される正しい MAC アドレスに書き換える
ONBOOT=yes
DHCP_HOSTNAME=centos57


ネットワークのリロード

# /etc/init.d/network reload
Shutting down interface eth0:                              [  OK  ]
Shutting down loopback interface:                          [  OK  ]
Bringing up loopback interface:                            [  OK  ]
Bringing up interface eth0:
Determining IP information for eth0... done.
                                                           [  OK  ]


疎通確認

# ping google.co.jp
PING google.co.jp (74.125.31.99) 56(84) bytes of data.
64 bytes from tb-in-f99.1e100.net (74.125.31.99): icmp_seq=1 ttl=41 time=55.0 ms
64 bytes from tb-in-f99.1e100.net (74.125.31.99): icmp_seq=2 ttl=41 time=61.0 ms
64 bytes from tb-in-f99.1e100.net (74.125.31.99): icmp_seq=3 ttl=41 time=58.7 ms


ホストOS からの ssh 接続

ホスト OS から ssh で VirtualBox の CentOS に接続する

ネットワーク > アダプタ1 > 【ポートフォワーディング】

VirtualBoxのCentOSのネットワーク設定(1)


右上にある赤枠の「新規ルールを追加」をクリックし、以下のように設定します。

VirtualBoxのCentOSのネットワーク設定(2)

名前Rule 1
プロトコルTCP
ホストポート5757
ゲストポート22

* ※ホストポート:5757 は「Well Known Ports」でない1024以上の使われていないポートであれば何でもOKです。


CenOS を起動し、ホストOS のターミナル(PuTTY や Tera Term)から ssh ログインします。

% ssh root@localhost -p 5757
root@localhost's password:


yum レポジトリの変更

ダウンロードしたイメージは、海外で作成されたようで、yum レポジトリのドメインが国内ではありません。
このままでは、パッケージのダウンロードに時間がかかってしまうので、国内のレポジトリに変更します。
今回は、 理化学研究所(通称 理研) のレポジトリに変更します。

mirrorlist と baseurl をコメントアウトして、下記のように各セクションに適した ftp の URL を記述します。

baseurl=http://ftp.riken.jp/Linux/centos/$releasever/{os,updates,extras,centosplus,contrib}/$basearch/

[base] の場合

baseurl=http://ftp.riken.jp/Linux/centos/$releasever/os/$basearch/


  • 設定例
$ sudo vi /etc/yum.repos.d/CentOS-Base.repo
# CentOS-Base.repo
#
# The mirror system uses the connecting IP address of the client and the
# update status of each mirror to pick mirrors that are updated to and
# geographically close to the client.  You should use this for CentOS updates
# unless you are manually picking other mirrors.
#
# If the mirrorlist= does not work for you, as a fall back you can try the
# remarked out baseurl= line instead.
#
#

[base]
name=CentOS-$releasever - Base
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
baseurl=http://ftp.riken.jp/Linux/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

#released updates
[updates]
name=CentOS-$releasever - Updates
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
#baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/
baseurl=http://ftp.riken.jp/Linux/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras
#baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/
baseurl=http://ftp.riken.jp/Linux/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus
#baseurl=http://mirror.centos.org/centos/$releasever/centosplus/$basearch/
baseurl=http://ftp.riken.jp/Linux/centos/$releasever/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

#contrib - packages by Centos Users
[contrib]
name=CentOS-$releasever - Contrib
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=contrib
#baseurl=http://mirror.centos.org/centos/$releasever/contrib/$basearch/
baseurl=http://ftp.riken.jp/Linux/centos/$releasever/contrib/$basearch/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5


USB デバイスを利用可能にする

USBメモリ等のUSBデバイスを利用するためにはゲストOSで「USB2.0」を利用可能にする必要があります。
「USB2.0」を利用には VirtualBox に「extension pack」をインストールしなければなりません。

なお、「extension pack」をインストールしていない場合、 USB 2.0 (EHCI)コントローラを有効化 にチェックしても下記のような警告が出て、「USB2.0」の利用が出来ません。
extension packのインストールを促す警告


extension pack のインストール手順

  • ※ 今回は「extension pack」のインストール前に VirtualBox を 4.1.4 から 4.1.6 のバージョンアップしました。
  1. oracle の virtualbox の公式サイトから「extension pack」をダウンロードします
  2. ファイル > 環境設定 > 機能拡張
  3. ダウンロードした「Oracle_VM_VirtualBox_Extension_Pack-4.1.6-74713.vbox-extpack」を選択してインストールします
  • 今回は VirtualBox 4.1.6 用の extension pack をダウンロードしました。


USB 2.0 (EHCI)コントローラを有効化

下記のように USB 2.0 (EHCI)コントローラを有効化 にチェックしてからゲストOSを起動します。
USB 2.0 (EHCI)コントローラを有効化


USB デバイスの接続

上記手順を行った後、ゲストOSを起動してUSBデバイスを接続すれば、ゲストOSでUSBデバイスを利用可能になります。
今回はゲストOSとしてWindows系OSを立ち上げてUSBメモリを接続しましたが、問題なく認識しました。


データ共有(\\10.0.2.2)

  • 2012/04/03 追記

以下は、ホスト OS が WinXP で、ゲストOS が Win7 の環境で動作確認しました。

ホスト OS WinXP に、_SHARE という名前のフォルダを作り、そのフォルダを右クリックして、共有の設定を行います。
具体的には、「ネットワーク上でこのフォルダを共有する」にチェックします。
次に、ゲスト OS Win7 の エクスプローラーから下記にアクセスすると、データ共有ができます。

\\10.0.2.2\_share
  • フォルダ名は、_SHARE である必要はなく、何でもOKです。


OS の 時刻を JST に変更

% sudo mv /etc/localtime /etc/localtime.orig
% sudo ln -s /usr/share/zoneinfo/Japan /etc/localtime





application/virtualboxl/centos_setup.txt