環境構築

macのcatarinaにvirtual boxをインストールしてCentOSをたてる方法

docker for macで色々と動かしていたけれども、ストレージ周りがファイルシステムの違いで動かなくなってしまったので、仮想化ソフト(virtual box)の上に、CentOSを立てることにしました。

virtual boxのインストール

https://www.virtualbox.org/wiki/Downloads
↑のダウンロードリンクからマシンOSにあったものをダウンロードして、インストーラーの手順に従って、インストールしていきます。

途中でエラーが出る方は、システム環境設定を開いて実行許可の権限を与えて再度インストーラーを起動して実行してください。

無事に完了すると下記のような画面になります。

そうしたら、次はCentOSのISOファイルを入手しにいきます。
https://www.centos.org/download/
↑に飛んでいただき、「CentOS Linux DVD ISO」の方をクリックし、上の方にあるリンクをクリックしてISOファイルをダウンロードしてきます。
ファイルサイズが7GB程度あるので、気長に待ちましょう。

ダウンロードが完了したら、virtualboxを起動するとこんな画面が出ます。
自分は既にCentOs環境を作成しているので、少し画面が若干違いますが、これからの操作には影響しないので、気にせず続けてください。

仮想環境をたてる

まず、新規と書かれているボタンをクリックして、名前は任意でタイプはLinux、バージョンはCentOSであればRedHat、UbuntuであればDebianを入力していきます。

メモリは最低で2028MBを指定して置いた方が便利です。自分はdockerやk8sを立てていくので、4096MBを指定しました。

次に仮想ハードディスクを作成するための準備をしていきます。
基本的にはデフォルトで進めて行って大丈夫です。

HDDの容量は20GB程度は持っておいた方がいいです。
でないと、最初にOSをインストールした時点で、ほとんどの容量を使い切ってしまうので余裕があれば余分に持たしておくべきです。

ここまでできたら、作成のボタンを押し最初の画面に戻ります。
次に、インストールするOSを選択します。
設定ボタンを押し、タブに表示されているストレージを選択します。

ストレージデバイスの中にある空をクリックし、光学ドライブの選択欄の横にあるディスクをクリックします。

仮想光学ディスクの選択/作成を選びます。
そうするとファイル選択画面に移るので、ダウンロードしたisoファイルを選択します。

情報部分にタイプなどの詳細が入るのを確認したら、タブにあるシステムを選択します。

起動順序をドラッグ&ドロップで、フロッピー>ハードディスク>光学の順番に入れ替えてください。これをしないと起動して、OSをインストールし終えても、永遠にインストール画面が出る無限ループになります。

次にやっておいた方がいい設定がCPUの数です。デフォルトだと1つなのですが、これだと処理が遅いことが多く、2つにしておいた方が何かと効率がいいです。
そのためには、システムタブをクリックして、メニュー部からプロセッサーを選ぶと、プロセッサー数を選択できます。ここでCPU数を決めます。
これで設定は完了です。OKボタンを押して最初の画面に戻ります。

ただ、CentOSを立ち上げるだけでいいのであれば、これで終わりですが、自分は開発がしたいのでネットワークも接続もしていきます。

そのためには、NATとホストオンリーアダプターの設定をしていきます。
はじめにホストオンリーアダプターからやっていきます。
左上にあるツールボタンをクリックします。

作成ボタンを押して、新しくアダプターを作成します。作成されたアダプターを選択して情報を見てみます。IPv4とIPv4 ネットマスク、IPv4 ネットマスク長が入っているのが確認できたら、デフォルトのままにしておいて、DHCPサーバーのタブに移り、「サーバーを有効化」のチェックボックスが外れているのを確認してください。

もし、外れていなければ外してください。
ここまでできたら、適用押してください。何も変更がなくグレーボタンになっていれば、先程作成した、仮想マシンの設定に移ります。

ネットワークのタブを開いて、高度のボタンをクリックして、ポートフォワーディングを出して、右上にある追加ボタンを押して、ホストIPを0.0.0.0にホストポートを2222にゲストポートを22に設定してOKボタンを押してください。

そして、そのままネットワークタブから、アダプター2を選択してください。
ネットワークアダプターを有効化にチェックを入れ、割り当てをホストオンリーアダプターにします。
最後に、名前の箇所を先程作成したアダプターを選択して仮想マシンの設定は終わりです。これでようやく仮想マシンを起動させていきます。

起動した後の最初の画面はこのようになり、十字キーで一番上を選択してenterを押すとインストールが始まります。
後は手順に沿って、設定を進めていくと再起動になるので、再起動後ログイン画面に移りログインすることができます。

CentOSが立ち上がり、ログインができたら端末を起動しコマンドを入力します。
> nmtui

別の画面が立ち上がるので、一番上の接続の編集をクリックして、EtherNetに二つの項目があるのを確認してください。
enp0s3がデフォルトで入っているもので、enp0s8が仮想マシンの設定時に追加したものです。まず、enp0s3から編集します
IPv6を「自動」から「無視する」に変更します。そして下にある自動接続の項目をスペースキーでチェックを入れます。そこまでできたらOKボタンで戻ります。

enp0s8が見つからなければ、仮想マシンの設定を見直してください。それでも治らなければ、仮想マシンを新たに立て直した方がいいかもしれません。

最後にenp0s8を編集していきます。
IPv4の設定を手作業に変えて、右側にある表示するをクリックして詳細項目を出します。
ここでアダプターを作成したIPv4アドレスを使います。アドレスのネットワークを揃えるために、192.168.58.1の192.168.58までを入力して、最後の部分は1以外であればいいのですが、自分は101を設定しています。そしてマスクを設定して完了です。

全てOKボタンなどを押して元の画面に戻り、端末に
systemctl restart NetworkManager
と打ち編集したネットワークを有効にします。
外部ネットワークにアクセスできるかgoogleにping通信をして開通しているかの確認をします。
ping google.com
これで問題なくレスポンスが帰ってくれば完了です。

CentOS8の場合はsystemctl restart NetworkManagerだけで大丈夫ですが、CentOS7の場合はsystemctl restart networkも実行する必要もあります。

ここからは、CLIだけで問題ないなら別にこの画面を使用しなくても、ssh接続してmac側から操作する方が快適です。

ここまで、macにLinux環境をたてる方法を紹介してきました。
少しでもお役に立てたら嬉しいです。