昨日の続きで、まだPostgreSQLインストールの手前。仮想マシンをホストOSのコンソールで操作できるようにし、タイムゾーン修正とVirtualBox Guest Additionsのインストールまで行いました。
Contents


関連・参考サイト(その2)
最初の3つはこのブログの記事で、CentOS6.67で経験したことの多くが、今回のScientific Linux 7でも役立ちました。あとの2つはコマンド操作で参考になったもの。



ネットワークとSSHサーバ確認、ホストOSからリモートログイン
昨日、最初に仮想マシンを起動してログインした所から再開です。なるべく早くホストOSからSSHで接続・操作したいので(コマンドのコピペが楽)、最初にその準備。SSHサーバが動いてるか確認すると ↓ デフォルトで自動起動しポート22番で待ち受けてました。
chkconfig sshd
service sshd status


次にネットワークの状態を確認。適当なアドレスにpingを打つと ↓ しっかり返ってきて、ホストのネットワークアダプタ経由で外部につながっていると分かります。
ping -c 4 www.google.com # for example


ということは当然、ホスト間との接続も確立されてるので、後はVirtualBoxのポートフォワーディングを使って仮想側22番ポートにホスト側クライアントから接続すればOK。便利なことに、仮想マシン起動中でもポートフォワーディング設定ができ、即反映されます。


↓ 仮想マシン設定のネットワーク →AdvancedPort Forwardingでダイアログが開きます。新しい行を追加し、名前は適当に、ホスト側ポートが他と被らないよう設定。ホスト・ゲストともlocalhostならIPアドレスは空でいいようです。


設定し終えたら、ホスト側の適当なSSHクライアントでポート指定し接続。初回は接続先が正しいか聞かれ、無事接続。これで基本的に仮想マシンの画面は不要になりました。
ssh -p 2255 root@localhost


タイムゾーン変更
ここまで、ログイン時に出る「直近のログイン時刻」が変だったのでタイムゾーンを修正。前々項の関連・参考サイト(その2)に挙げたページそのままで出来ました。まず現在設定を確認&ファイルを変更。↓
strings /etc/localtime # check

cp /etc/localtime /etc/localtime.org
ln -sf  /usr/share/zoneinfo/Asia/Tokyo /etc/localtime


次に/etc/sysconfig/clockを修正。元ファイルにZONE=の行しかなかったので、それを"Asia/Tokyo"に変更し、仮想マシンを再起動します。
vi /etc/sysconfig/clock

# replace the first line with ZONE="Asia/Tokyo"


↓ 再起動後、確かに時刻が合いました。


VirtualBox Guest Additionsインストール
これは共有フォルダを作るため。ホスト側の任意の場所に仮想マシンからアクセスできます。後でPostgreSQLサーバも共有フォルダを読み書きできるよう設定して、ホスト側とシームレスなファイルのやり取りを実現するため、ここでVirtualBox Guest Additionsを準備しておきます。まずカーネルを更新。↓
yum -y update kernel


次にいくつかパッケージ追加が必要で、インストールの前にリポジトリにあるか確認します。↓CentOSの時と同様、dkmsがデフォルトでは見つかりません。
yum info kernel-devel
yum info kernel-headers
yum info gcc
yum info gcc-c++
yum info dkms # not found


そこでepel-releaseを入れると見つかるようになり、まとめてインストールします。↓
yum -y install epel-release
yum info dkms # for confirmation
yum -y install kernel-devel kernel-headers gcc gcc-c++ dkms


終わったら再起動が必要。ここまでは仮想マシンのコンソールも開いてましたが、もう使わないので、いったん仮想マシンを閉じ、今度はVirtualBoxのウィンドウ非表示モード(Headless)で立ち上げます。メイン画面内に小さくコンソールが出て ↓ よく見ると起動時に新しいカーネルの行が追加されてます。


これで本来はVirtualBox Guest Additionsのインストール準備完了ですが、以前、VirtualBox 4.3.6用のGuest AdditionsCentOS
7に入れられず、代わりに4.3.28用のを入れたら成功したので(関連・参考サイト(その2)の77日の記事)、Scientific Linux 7も同じと予測して4.3.28用を入れます。


VirtualBox 4.3.28の各種ファイルのページからVBoxGuestAdditions_4.3.28.isoをダウンロードし、仮想マシン設定画面からストレージの所を開いて ↓ 光学ドライブにマウント。ここで「Choose a virtual CD/DVD disk file...」をクリックしVBoxGuestAdditions_4.3.28.isoを選ぶのが重要。VBoxGuestAdditions.isoを選ぶと、4.3.6版のGuest Additionsがマウントされてインストールに失敗するはず。


ディスクをマウントしたらSSHでの仮想マシン操作に戻り、下記コマンドで実行するだけ。途中のBuilding the VirtualBox Guest Additions kernel modulesでかなり待ちますが(数分間)、無事終了しました。GUIが一切ないのでその関連はスキップしたと出ます。
mkdir /mnt/cdrom
mount /dev/cdrom /mnt/cdrom
cd /mnt/cdrom
ls # for check
./VBoxLinuxAdditions.run


長くなったので今日はここまで。明日、共有フォルダを作ってから、いよいよPostgreSQL 9.5 Alpha 2をインストールする予定です。