VMware×CentOS7のログインエラーとインストール時のGNOME回避


　皆さま，こんにちは．迷子のエンリュです．
 
　ここでは，VMwareにCentOS 7をインストールしたときに，GNOME関連の問題でログインできなくなってしまったので，GNOMEを使わないでインストールしたり，GUIとしてGNOMEの代わりにKDEを使う方法について備忘録的に書き残しておきます．私の環境ではこれでログインできるようになりました．
 
 ※GNOMEというよりはログイン画面のgdmがエラーの原因のようでしたので，正しくはgdmの回避になります．
 
# 環境
* VMware Workstation 12.5.0 Player for Windows 64-bit
* ホストOS：Windows10 Education 64bit
* ゲストOS：CentOS 7.0

# GNOMEのエラー
　CentOS 7のISOイメージをVMwareに認識させると，簡易インストールができます．これでインストールしようとすると，エラーになってログインできなくなります．簡易インストールをやめて標準の設定でインストールしても同じです．
 
 ![OhNo.PNG](https://qiita-image-store.s3.amazonaws.com/0/144209/32432f51-ff70-91b3-0e05-ff983978ce36.png)
 
　OS自体のインストールはできているようなので，仮想コンソールで入ってログなどを調べてみたところ，GNOMEとCentOS7の相性が悪くなってしまったようで，3Daccelerationだかなんかのところでエラー吐いてました．ここら辺はよくわからなかったのですが，インストールのときにGNOMEを回避したら問題なく使えたので，GNOMEのせいなのかなあと思っている次第です．
 
# Minimalモードでインストール
　VMwareを立ち上げ，仮想マシンの新規作成ウィザードを開いたら，まず「**後でOSをインストール**」を選びます．あとはLinux 64ビットとして設定を進め，「**仮想マシンを作成する準備完了**」のページで「**ハードウェアをカスタマイズ**」を選びます．
 
 ![GestOSInstall5.PNG](https://qiita-image-store.s3.amazonaws.com/0/144209/d1d4223a-bff5-95fc-f958-ff4c1a2c6c0c.png)

　「**新規 CD/DVD(IDE)**」を選択し，「接続」枠内の「**ISO イメージファイルを使用する**」にマークして，CentOS 7のインストールイメージを選びます．
 
　起動してインストールを始めます．
 
　言語を選択したら，インストールの概要が表示されます．ここで，「**ソフトウェアの選択**」の項目が「**最小限のインストール**」になっていることを確認します．
 
 ![GestOSInstalle.PNG](https://qiita-image-store.s3.amazonaws.com/0/144209/d34687f1-8388-d2da-c9be-6f844debb74e.png)
 
　あとはインストールデバイス設定して「**インストール開始**」します．
 
　完了したら再起動します．慣れていない人もいるかもしれませんが，これがログイン画面です．
 
 ![GestOSInstallj.PNG](https://qiita-image-store.s3.amazonaws.com/0/144209/50287238-777c-200b-31b6-9ac1d4685a53.png)
　
# KDEデスクトップのインストール
　別にMinimalでもいいんですが，GUIなしだとできることがぐっと減ってしまうので，GNOMEの代わりにKDEを入れてみましょう．なぜかKDE Prasma Workspaceを入れるとやっぱりエラーになるので，必要最低限のみをインストールしていきます．

## ISOイメージをyumリポジトリに追加
　OSインストールのISOイメージにKDEのパッケージが入っているので，これをインストールする準備をします．**ISOイメージをマウント**して，**yumのリポジトリに追加**します．
 
```shell-session
$ sudo mkdir /mnt/iso0        # マウント用ディレクトリ
$ sudo mount -o loop,ro /dev/cdrom /mnt/iso0        # 読み取り専用でISOイメージをマウント
$ ls /mnt/iso0        # 確認
$ sudo vi /etc/yum.repos.d/media_default.repo        # yumリポジトリの設定
```

```vim:/etc/yum.d/media_default.repo
[media_default]
name=media_default
baseurl=file:///mnt/iso0
gpgcheck=0
enabled=0
```

　以上設定したら保存して，リポジトリが認識できることを確認します．
 
```shell-session
$ yum repolist --disablerepo=\* --enablerepo=media_default        # リポジトリ一覧
$ yum list --disablerepo=\* --enablerepo=media_dafault        # パッケージ一覧
```

![yum_repolist_1.PNG](https://qiita-image-store.s3.amazonaws.com/0/144209/cc082c07-0c60-8bd1-862b-6a7f4d657b9c.png)

![yum_repolist_2.PNG](https://qiita-image-store.s3.amazonaws.com/0/144209/0415054a-84d7-6c73-24e2-5878780aae52.png)

## インストールするパッケージの確認
　次のようにしてパッケージの情報を取得できます．インストールのときにみたソフトウェアの一覧にあった名前が表示されています．
 
```shell-session
$ yum --disablerepo=/* --enablerepo=media_default groups list        # パッケージグループの一覧取得
$ yum --disablerepo=/* --enablerepo=media_default groups info "KDE Plasma Workspaces"        # パッケージグループの詳細情報
```

![yum_repolist_3.PNG](https://qiita-image-store.s3.amazonaws.com/0/144209/f408b9fd-0697-ddb2-ff15-5426ceb14b90.png)
 
![yum_repolist_4.PNG](https://qiita-image-store.s3.amazonaws.com/0/144209/3ff0f391-d101-cc79-8a3e-5a4b7c33f329.png)

## KDEデスクトップのインストール
　一覧表示されたパッケージグループから，**fonts, kde-desktop, x11をインストール**しましょう．
 
```shell-session
$ sudo yum --disablerepo=\* --enablerepo=media_default groups install fonts kde-desktop x11
```

　途中で使用するディスク容量が表示され，インストールしていいか聞かれるので，「**y**」と入力しましょう．

![yum_install_1.PNG](https://qiita-image-store.s3.amazonaws.com/0/144209/648e15bc-9145-9cce-41f3-3be5286b1c92.png)

## KDEデスクトップの起動
　インストールが完了したら，KDE起動のスクリプトをXの設定ファイルに書いて，X Window Systemを起動しましょう．
 
```shell-session
$ echo 'exec startkde' >> ~/.xinitrc
$ startx
```

![KDEDesktop_1.PNG](https://qiita-image-store.s3.amazonaws.com/0/144209/e2866886-3d9e-011d-7b17-a9a44607a987.png)

　無事KDEデスクトップ環境をインストールできました．
 
　~~次回以降起動したときにGUIでログインするには，**systemctlコマンド**を使います．inittabは使われなくなってしまったので気を付けましょう．~~
 
```shell-session:これは実行しないでください
# 設定の確認
$ systemctl get-default
multi-user.target
# 設定の変更
$ sudo systemctl set-default graphical.target
```

　※graphhical.targetにして再起動すると再びエラー画面になってしまいました．どうやらgraphical.targetで起動するときディスプレイマネージャとしてgdmが立ち上がるのですが，これのせいでエラーが起きているようです．一度CUIでログインしてstartxするとうまくいくのですが...
 
　CUIでログインしたら，startxでいつでもGUIを起動できます．
 
　同様に，他のデスクトップ環境についてもインストールすることができるでしょう．確認が取れたら追記していきます．


---- 以上

# 参考ページ
* [yum コマンドで DVD（ISO イメージファイル）からパッケージをインストール][1]
* [2.9 ISOイメージを使用したローカルYumリポジトリの作成][2]
* [オフラインのCentOS7にインストールメディアからyumでパッケージをインストールする(CLI)][3]
* [CentOS 7 : KDE デスクトップ環境 ： Server World][4]


# こちらもよろしくお願いいたします．
### [エンリュの迷い森｜トップページ][blogtop]

[blogtop]: http://lost-in-forest.hatenablog.com/entry/toppage
[a009]: http://lost-in-forest.hatenablog.com/entry/a009
[a00c]: http://lost-in-forest.hatenablog.com/entry/a00c


[1]: http://virtual.cocolog-nifty.com/virtualmachine/2013/12/yum-dvdiso-cent.html
[2]: https://docs.oracle.com/cd/E39368_01/b71105/ol_create_repo.html
[3]: http://qiita.com/tamamius/items/5b22ddcd47b16c996751
[4]: https://www.server-world.info/query?os=CentOS_7&p=x&f=2