【VirtualBox】CentOS8をインスト―ルしてネットワーク接続するまで

仮想マシンであるVirtualBoxにCentOS8をインストールして、ネットワーク接続するまでの手順です。
詳細に書いたので、かなり長いです。ご容赦ください。

## 環境、使用ツール

- OS（ホストOS）：Windows10
- 仮想マシン:VirtualBox 6.1.4
- 仮想マシンのOS（ゲストOS）：CentOS8.1.1911

## 手順
### 1. CentOSのインストール
1.[ダウンロードサイト](https://www.centos.org/)より、ダウンロードします。
「Get CentOS Now」をクリック。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/3bfed296-5207-8d57-f91a-c55e128d3787.png)

2.「CentOS Linux DVD ISO」をクリック。
※「CentOS Stream DVD ISO」でもダメではありませんが、開発版なので、安定版である「CentOS Linux DVD ISO」を選んだほうが無難でしょう。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/5e6f37f5-188e-b044-d42a-d10e1f1ed809.png)

3.ミラーサイトのURL一覧が表示されます。
「The following mirrors in your region should have the ISO images available:」配下のいずれかをクリックしてダウンロードしましょう。
特にこだわりがなければ一番上に表示されているものでOK。
ダウンロードには少々時間がかかります（自分の場合は約15分）。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/7c15c881-2f9a-3170-29d2-602b0d296356.png)

※「Other mirrors further away:」より下のものはやめましょう。
遠方のサイトなので、ダウンロードに時間がかかってしまいます。



### 2. VirtualBoxのインストール

1.[ダウンロードサイト](https://www.virtualbox.org/wiki/Downloads)より、VirtualBoxをダウンロードします。
今回は、Windowsにインストールするので、「Windows hosts」を選択。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/21960721-6545-00e8-66e5-8df78ce96a1d.png)

2.ダウンロードされたexeファイルをクリックして実行します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/319cf381-5da6-dec4-2e4a-d0d2b4a62a7a.png)

3.ウィザードが立ち上がります。
「Next」をクリック。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/d81065bb-473c-32c1-9efe-9f154180348a.png)

4.インストール先や内容の設定画面です。
特に制約やこだわりがなければデフォルトのままで、「Next」をクリック。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/a2eed136-92a9-9557-7f2f-f31b70dfac38.png)

5.ショートカットなどのオプションの設定です。
デフォルトでは全てにチェックが入っています。
お好みの内容にし、「Next」をクリック。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/6c5fbc8e-9106-bdf2-e464-eff5088568c4.png)

6.インストール中のネットワーク接続に関する警告です。
内容を確認し、「Yes」をクリック。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/f3059063-566a-0f99-16c7-0fa821c0085c.png)

7.「Install」をクリックして、インストール開始。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/d45e2655-0194-9159-992c-1219426376fe.png)

8.インストール完了後の画面です。
「Finish」をクリック。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/1b2872c9-2e48-1910-f5d7-0c62bf3b2920.png)

9.「Start Oracle VM VirtualBox 6.1.4 after installation」にチェックを入れた状態で「Finish」すると、VirtualBoxマネージャーが起動します。
「新規」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/475c7c9a-0de1-209e-c286-22451bb0903e.png)

10.「仮想マシンの作成」ウィンドウが立ち上がるので、任意の名前を入力し、「次へ」をクリック。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/a77bd8a8-2368-2a72-eea7-1d42a6e1969e.png)

11.仮想マシンのメモリサイズを設定します。
任意のサイズに設定し、「次へ」をクリック。
※今回はデフォルトの1024MGのままにしました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/1da3aea3-0633-d513-fbdf-020a2f94b2ef.png)

12.デフォルトの「仮想ハードディスクを作成する」のまま「作成」をクリック。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/c40995cc-3600-1793-c77e-46d30a7b394e.png)

13.ハードディスクのファイルタイプの設定です。
こちらもデフォルトでOKなので、「次へ」をクリック。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/1ec8d327-5b2f-bdb0-fa17-7f1cb7b30be4.png)

14.「物理ハードディスクにあるストレージ」の設定です。
こちらもデフォルトでOK。「次へ」をクリック。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/35b13a6c-c872-acb4-068e-0b3841f63081.png)

15.「ファイルの場所とサイズ」の設定です。
数字は仮想マシンに入るファイルデータの上限を表しています。
デフォルトの8.0Gから大きくして、20GBにしました。
「作成」をクリック。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/45396569-01d5-8458-c6b7-cdcd2a39de11.png)

16.より詳細な設定を行うため、「設定」をクリック。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/6bf4cd50-e484-46db-3afc-7a949a2c1be7.png)

17.「ストレージ」を選択し、「光学ドライブの作成」をクリック。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/2fe4bba4-3629-4200-fa54-a0d67b6f338d.png)

18.「追加」をクリックし、「1. CentOSのインストール」ダウンロードしたisoファイルを選択し、「選択」をクリック。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/b3416cc9-5bf7-2563-242a-278950d4adb4.png)

19.「ネットワーク」を選択し、ネットワークアダプターの「割り当て」を「ブリッジアダプター」に変更し、「OK」をクリック。
デフォルトのNATのままでもよいですが、外部ネットワークや同ホストOS上の他の仮想マシンともやりとりできるので、特に制約がない限り、ブリッジアダプターにしておくことをオススメします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/75318b38-7446-c4d6-1553-e18a3203f3ff.png)

20.仮想マシンを起動します。
作成した仮想マシンを選択し、「起動」をクリック。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/3894aa8a-30cd-22a7-9242-cdab1f1ec84e.png)

21.別ウィンドウが立ち上がり、仮想マシンが起動します。
以下のような画面になったらEnterを押下（そのままでも1分後に以降の内容が開始されます。）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/51bff08a-e637-98db-d21d-71213938147a.png)

22.言語選択です。
検索ボックスに「ja」などと入力して、日本語を検索・選択して、「次へ」を押下。

23.インストール概要が表示されます。
細かい設定は後で行うので、最低限の設定のみ行います。
「インストール先」をクリック。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/314ffd22-481d-aec7-2178-a598db2b987b.png)

24.内容を確認し、「完了」をクリック。
（この手順をやらないと、「インストールの開始」ボタンが押せず、先へ進めません。）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/cb8f6688-a37a-107e-622a-4f15b566ee4f.png)

25.「インストールの開始」をクリックすると、インストールが開始されます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/553264dd-f33a-92cc-427e-87f60c48dd09.png)


26.インストール中にrootユーザーのパスワード設定とユーザーの作成を行います。
まず、「rootパスワード」をクリック。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/b139dee4-2c97-e016-393b-60658eda928b.png)

27.任意のパスワードを設定して、「完了」をクリック。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/bbfe0565-c2bf-f0d4-1f52-e5a08f4c7825.png)

28.「ユーザーの設定画面」へ戻ったら、「ユーザーの作成」をクリック。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/7c1d317a-16be-363d-8e1f-b1b6b7bcbba3.png)

29.任意のユーザー名とパスワードを設定し、「完了」をクリック。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/dff11869-3d38-5901-7733-7f7b5d7e83cf.png)

30.インストールが完了したら、一度シャットダウンします。
「仮想マシン」 > 「ACPIシャットダウン」をクリック。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/b77dd069-998a-612f-0e69-a45339a6f73c.png)

31.「VIrtualBoxマネージャー」画面にて、「設定」をクリック。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/e5f6e187-4ac1-9bec-ea41-135ed49667a7.png)

32.「ストレージ」を選択し、取り込んだisoファイル上で右クリックして「割り当てを除去」を選択し、「OK」をクリック。
※isoファイルを残したまま再起動してしまうと、再度最初からインストールが始まってしまう可能性があるので、必ずこの手順（30～32）を踏んでおきましょう。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/aeb65d5c-c75a-fdfe-dd0f-a34dbb846214.png)



### 3. ネットワーク接続設定
1.対象の仮想マシンを選択し、「起動」をクリック。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/0aedaede-8cd0-1c16-476b-e4ed0bdb0803.png)

2.初期セットアップを行います。
「License Information」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/8d2007fa-d3dd-0c47-26bd-ab5790e9a594.png)


3.ライセンス契約を確認し、「ライセンス契約に同意します。」にチェックを入れて、「完了」をクリック。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/72633d11-15b6-3ec0-0e26-fca7f71b47c6.png)

4.「初期セットアップ」画面に戻ったら、「設定の完了」をクリック。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/666f081a-64b4-1865-de7d-27870ac9ae15.png)

5.インストール時に作成したユーザーでのログイン画面になりますが、今回は設定周りを行うのでrootユーザーでログインします。
「アカウントが見つかりませんか?」をクリック。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/1abaaafe-f411-a103-3066-7a770211b25a.png)

6.ユーザー名に「root」と入力し、「次へ」をクリック。
この後、パスワードを聞かれるので、インストール時に設定したパスワードを入力してサインインします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/225bb327-3f8d-b600-77f1-3789376e0aa2.png)

7.サインインすると、初期設定画面が起動します。
以降、デフォルトのまま設定を進めれば問題ありません。
（パスしてもよいので、詳細は割愛します。）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/dbdd5ba9-b05b-b058-8a63-52f1a7cfac96.png)

なお、HOSTマシンの操作に戻る場合は「右Ctrlキー」を押してください。

8.「アクティビティ」 > 「端末」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/5668d3ff-4db7-00e6-450f-1e77ae28b875.png)

9.ターミナルが起動します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/df5020e3-ec81-93a3-0597-95e9b5535389.png)

10.タイムゾーンの設定を確認します。

```
# timedatectl status
```
を実行し、所属するエリアのタイムゾーンと異なっていた場合は設定を変更します。
日本に変更する場合は以下の通り。

```
# timedatectl set-timezone Asia/Tokyo
```

11.以下のコマンドを実行して、デバイスの状態を確認します。

```
# nmcli d
```
12.以下のように、TYPE「ethernet」のDEVICEが接続されていない場合は起動します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/5709ed7c-6f63-326b-b328-b350fa3127fa.png)

起動コマンドは以下の通り。
※デバイス名が異なる場合は、「enp0s3」を対象のデバイス名に変えて実行してください（以降同様）。

```
# nmcli connection up enp0s3
```

13.ethernetのデバイスを起動したら、再度

```
# nmcli d
```
を実行して、状態を確認します。

以下のように「接続済み」となっていればOK。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/e9fa710e-e0c3-fdaa-e816-eb4c01bcf3c8.png)

14.pingコマンドを実行して、疎通確認を行います。
※宛先がYouTubeの場合は以下の通り。

```
# ping www.youtube.com
```

応答が返ってこればネットワーク接続ができていることになります！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/b6cf7cdc-9240-cfc7-1d33-fd3c92d8b426.png)

15.これで終わり、でもいいのですが、ネットワーク接続設定を最適化しておきましょう。
ホストOSにてコマンドプロンプトを起動し、以下を実行。

```
> ipconfig
```
「IPv4アドレス」と「デフォルト ゲートウェイ」を確認します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/c7e08bf6-3b6c-3fe8-809e-2ba458c24077.png)


16.仮想マシン（ゲストOS）に戻り、以下のコマンドを実行して、デバイスの状態詳細を確認します。

```
# nmcli d show enp0s3
```

デバイス固有の状態が表示されます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/26efa4c2-5ae4-65f7-703e-51a52758b88f.png)

17.IPv4アドレス、ゲートウェイの設定を行います。
IPv4アドレスには、ホストOSのサブネットマスクが255となっている箇所までは同じ、以降は別、ゲートウェイにはホストOSと同じものを設定します。
14のキャプチャの状態であれば変更不要ですが、修正する場合は以下のようなコマンドを実行します。

・IPv4アドレス

```
# nmcli c mod enp0s3 ipv4.addresses 192.168.100.26/24
```

・ゲートウェイ

```
# nmcli c mod enp0s3 ipv4.gateway 192.168.100.1
```

18.続いてリゾルバの設定です。
まず、catコマンドで初期状態を確認します。

```
# cat /etc/resolv.conf
```

自分の場合、初期状態ではホストOSのゲートウェイになっていました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/01d52b86-700a-fe71-bae5-29a755710a96.png)

以下のコマンドを実行して、リゾルバの設定を変更します。

```
# nmcli c mod enp0s3 ipv4.dns 8.8.8.8,8.8.4.4
```

8.8.8.8と8.8.4.4はGoogleのパブリックDNSです。

19.IPv4を固定化します。

```
# nmcli c mod enp0s3 ipv4.method manual
```

20.以下のコマンドを実行し、ネットワークの自動接続設定を有効にし、反映されていることを確認します。

```
# nmcli c mod enp0s3 connection.autoconnect yes
# cat /etc/sysconfig/network-scripts/ifcfg-enp0s3 | grep "ONBOOT"
```

反映されていれば、「ONBOOT=yes」が返ってきます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/356958/88fa08e4-9e3d-5348-7888-dad66662a777.png)



21.NetworkManagerを再起動して、ネットワーク設定の変更を反映させます。

```
# nmcli restart NetworkManager
```

22.pingコマンドを実行して、疎通確認できれば完了です！

```
# ping www.youtube.com
```

## 補足事項
インストール時にGUIベースでネットワーク接続の設定ができたりするんですが、そうした際にネットワーク接続やらdnfコマンドやらがうまく実行できなかったので、詳細な設定は後で実施しました（別の要因かもしれませんが・・・）。

トラブルシューティングについては、[【VIrtualBox】インストール～ネットワーク接続時のトラブルシューティング | Qiita](https://qiita.com/C_HERO/items/c56b3ca45fc042140538)にまとめました。
躓いた際にご覧ください。

## 修正履歴
- 2020年6月2日:「3. ネットワーク接続設定」の19を修正（接続名が抜けていたため）。<br>
→ @NERD_009様、ご指摘ありがとうございました！

## 参考
- [CentOS8 を Virtual Box にインストールする手順 | Qiita](https://qiita.com/yasushi-jp/items/01b4829a36272954719f)
- [【設定確認から変更方法まで】Linuxでのタイムゾーンの扱い方](https://eng-entrance.com/linux-time-timezone)
- [CentOS 7～8 ネットワーク設定、及び IPv6 無効化
2019.11.270 Comment4 Images24 Codes | etuts+](https://server.etutsplus.com/centos-7-network-configuration/)
- [【CentOS8/nmcli】使い方とオプション一覧～自動接続,デフォルトゲートウェイ/ip/dns変更,ステータス確認～ | SEの道標](https://milestone-of-se.nesuke.com/sv-basic/linux-basic/nmcli/)
- [VirtualBoxの設定でつまずいたところ | Qiita](https://qiita.com/KANTU/items/0cf39aacdecc48cda4e2)
- [VirtualBox のネットワークアダプタまとめ | Qiita](https://qiita.com/pitao/items/0f9475e4c0e230911eb7)