CentOS7.5のGUI環境をMATEで構築する on VirtualBox

今回はVirtualBox上にCentOS7をインストールし、日本語に対応したGUI環境を構築してみます。

インストール

ダウンロード

VirtualBoxの最新版をダウンロードし、画面の指示に従ってインストールします。特段の理由がない限り必ず最新版を落としてください。 (VirtualBoxのインストール手順は割愛します) www.virtualbox.org

CentOSの方は今回は「DVD ISO」をダウンロードしました。Minimal ISOでも同じです。 http://isoredirect.centos.org/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1804.isoisoredirect.centos.org

VirtualBoxにVMを作成

VirtualBoxのインストールが終わったら早速CentOSをインストールするVM(仮想マシン)を作成します。 「新規」ボタンをクリック。

好きな名称を入力すればよいのですが、「名前」に CentOS と入力すると自動的にタイプをLinux, バージョンをRedHatにしてくれます。CentOSはRedHatとの互換性を意識して開発されてますので通常はこのままでOKです。「続き」ボタンを押下。

メモリは今回はGUI環境にするので多少多めにしておきます。ここでは2,048Mbyteにしました。

「仮想ハードディスクを作成する」にチェック。

「VDI」を選択。

「可変サイズ」を選択。

仮想HDDのサイズは8G程度あればひとまずOSを入れるには十分ですが、用途に応じて調整してください。ここでは約16Gbyteにしました。前の画面で「可変サイズ」を選んでおけば使用するサイズに応じて伸縮するので多少大きめにしておくのがおすすめです。

CentOSを最小インストール

作成されたVMをダブルクリックすると起動するのですが、初回起動時にはOSが何も入っていないため、「ディスク」の挿入を求められます。冒頭でダウンロードしたCentOSのISOのファイルをここで指定します。

「Install CentOS 7」を方向キーで選択しEnter。

ここでは「日本語」を選択。

ここから具体的なインストール内容を選択していきます。 変更点としてはソフトウェアは「最小限のインストール」を選択し、KDUMPを無効にしました。あとは用途に応じて変更してください。「インストールの開始」ボタンを押すと実際にインストールが始まります。それなりに時間がかかるのでコーヒー☕でも飲んでまったりします。

インストールの経過画面にrootのパスワードと、初期ユーザーのID,PWなどを設定することができます。必ず設定内容はどこかにメモしておいてくださいね。初期ユーザーは管理者にしておくとsudoで色々設定ができるので楽ちんです。

しばらく待つと無事に完了! このあと再起動するよう促されるので指示に従います。

再起動が完了しこの画面が表示されれば、ここまではうまく行っています。 上の行が選択されていることを確認してEnter。CentOSが起動します。

ログイン画面が表示されるのでインストール中に設定したrootもしくは初期ユーザーでログインします。

現時点では約1Gのディスク領域を使用しているのがわかります。 ここに必要なものを順次入れていきます。

CentOSをネットワークへ接続

インストールする各種ソフトはyumを叩いてでネットワークから取ってきたいのですが、このままの状態だと外部と通信できません。nmcli deviceコマンドで確認するとenp03sdisconnectedになっているので、こいつを何とかしてやります。

viなどで/etc/sysconfig/network-script/ifcfg-enp03sを編集します。rootではなく一般ユーザーで入っている場合はsudoをつけるのをお忘れなく。以下のONBOOT=noになっている行を ONBOOT=yes に変更して保存しviを閉じ、sudo rebootなど適当なコマンドで再起動します。

再起動後にさきほどと同様にnmcli deviceコマンドで確認するとenp03sが今度はconnectedになっているのが確認できました。

pingも通りますね。これで準備が整いました。

※こちらのサイトを参考にさせていただきました。 https://www.shookuro.com/entry/2018/02/10/172724

全パッケージの更新

yumの疎通確認も兼ねて全パッケージの更新をしておきます。これもわりと時間かかかります。

$ sudo yum update

XWindowとMATEのインストール

LinuxにおいてXWindow用の環境は色々あるのですが、今回は軽快に動きならも手軽にインストールできる物を選びたかったので「MATE」を入れることにします。歴史的な経緯や世情は割愛しますが、GNOME2から派生した物ですので、デフォルトでインストールされるGNOME3に比べればサクサク動いてくれます。どうでも良いのですが長らく心の中で"めーと"と呼んでいたのですが、正しくは"まて"だと最近気がつきましたw

3つコマンドを叩けば、関連するパッケージも含めてまるっと入ってくれます。たまに確認を求められるので"yes"や"y"を入力してながらしばらく様子を眺めます。これもそれなりに時間がかかるので心の準備を。

$ sudo yum install epel-release
$ sudo yum groupinstall "X Window system"
$ sudo yum groupinstall "MATE Desktop"

インストールが終了したらviなどでホームディレクトリに設定ファイルを作成してます。

$ vi ~/.xinitrc
exec mate-session

長い道のりでしたが、ようやく起動するための準備が終わりました。最後にMATEを起動してみます。

$ startx

さっぱりとしたデスクトップ画面が開きます。

使用したディスク容量はMATEのインストールが終了した時点で約3.2Gほど。思っていたよりも多かったかなw

※こちらのサイトを参考にさせていただきました。 http://www.mikitechnica.com/38-centos7-mate.html https://qiita.com/n-yamanaka/items/bbda40489dcbcf051dbe

VirtualBoxのスナップショットを作成

ここまできたら念の為VirtualBoxでスナップショットを取っておきます。次のステップでGuestAdditionのインストールをするのですが、途中でこけるとOSが起動しなくなってしまう場合があります。というか2回くらい発生して泣く泣く最初からやり直しましたorz

やり方は簡単です。 macOSの場合はメニューバーから「Machine」→「Take Snapshot」とたどるか、VirtualBoxのVM一覧のウィンドウ(VirtualBoxマネージャー)からスナップショットの「作成」ボタンをクリックします。

名前と説明を適当に入力し「OK」ボタンを押すとスナップショットの作成がはじまります。30秒〜1分程度待てば完了します。

もし特定のスナップショットの状態に戻したいときは、一度VMの電源を落とした後に、「復元」ボタンから操作を行います。

VirtualBox Guest Additionsのインストール

このままだとホスト側とのやりとりが色々と不便なのでVitualBoxが提供する便利ツールGuest Additionsをインストールします。具体的には以下のような機能が利用できるようになります。

  • ホストOSとファイル共有
  • ホストOSとクリップボードの共有
  • ファイルのドラッグ&ドロップ
  • ゲストOSのウィンドウサイズを変更すると、解像度も自動で変化
  • ゲストOSとホストOS間でマウスカーソルの行き来が快適に

さて、そんな便利ツールですがインストールしようとしたら怒られてしまったため、まずは最初に必要なものを入れてしまいます。

最小インストールだとgcc, make, Perlなどすべて入らないのでまずはこいつらを追加。

$ sudo yum install gcc make perl

今回は現在入っているkernel-develのバージョンにGuestAdditionが対応していないと怒られてしまったので、指定されたバージョンのkernel-develを別途yumで入れました。怒られなければ入れる必要はありません。

$ sudo yum install kernel-devel-3.10.0-862.el7.x86_64

インストールが終了したらメニューバー「Devices」→「Insert Guest Additions CD Image」を押下。これでCDが挿入されたとCentOSでは認識されます。

CD内にあるプログラムを自動実行して良いか聞いてくるので「OK」ボタンを押下。

「OK」ボタンを押下。このあとパスワードを聞いてくるので入力、Terminalが自動的に開いてインストールが実行されます。

最終的にこんな画面になれば成功です。VMを再起動して上に書いた機能が利用できるか確認します。念の為スナップショットも取っておきます。

このブログを書きながら私が実施したときは画面全体にノイズが走りフリーズ。何度もやり直す羽目になりました…。原因は不明ですが同じ手順で何度かやり直すと最終的にうまく終了しました。何なんでしょうね。そしてスナップショットの大切さを痛感しましたw

さて、最後に再起動が完了したらウィンドウ右下にあるCDアイコンを右クリックし、「Remove disk from virtual drive」を選択しCDを排出します。実害はないのですがこれやらないと入りっぱなしになるのでちょっと気持ち悪いのです。

VMの設定

必ずVMの電源を落とした(shutdownした)状態で、VirtualBoxのVM一覧のウィンドウ(VirtualBoxマネージャー)から「設定」ボタンをクリックし、各項目を設定していきます。(電源を落とさなくても設定可能な項目もあります)

クリップボードの共有

「双方向」を選択すればホストOSとゲストOS間で同じクリップボードを利用できます。

共有フォルダ

ホスト側で共有したいフォルダを指定します。「自動マウント」にチェックしておくとOSが起動する際に自動的に使用可能な状態にしてくれます。注意点としてはホストOSのユーザー名がパスの中にあると他の人にイメージを渡した際に再度設定する必要がある点ですが、すぐに気がつくと思います。

設定後にOS&MATEを起動するとデスクトップ上に新しいアイコンが表示されますが、ダブルクリックして開こうとするとYou do not have the permissions necessary(略)とパーミションがないぞと怒られてしまいます。

共有フォルダの実態は/media配下にいるのですが、パーミションがオーナーと同じグループのユーザーにしか読み書きができないように設定されていますので、共有フォルダを利用したいユーザーをvboxsfグループに追加し、再起動すればOK。実際にファイルを置いたり編集して動作を確認してみてください。

$ ls -l /media/
total 0
drwxrwx---. 1 root vboxsf 128 Sep 25 19:13 sf_vboxshare

$ sudo gpasswd -a neec vboxsf
[sudo] password for neec: 
Adding user neec to group vboxsf

$ sudo reboot

※上記のneecとなっている箇所をユーザー名に置き換えて実行してください。

日本語環境を整える

UIを日本語化

メニューやコマンド実行時のメッセージなどを日本語にしてやります。 起動時に実行される ~/.bashrc に以下を追記して再起動すれば完了です。

$ vi ~/.bashrc
export LANG=ja_JP.UTF-8

$ sudo reboot

MATEのUIや、Terminalでコマンドを実行するとその結果が日本語に変わっているのがわかりますね。

日本語入力としてAnthyを入れる

今回はibus-anthyをインストールします。単に私が以前から使っているというだけですw mozcなど他の物が使いたい方はそちらをどーぞ。iBusとAnthyのインストールはyumで一発です。

$ sudo yum install ibus-anthy

yumで入ったらXWindow起動時に実行される設定ファイル~/.xinitrcへ環境変数などを記入し、OSを再起動します。

$ vi ~/.xinitrc
export GTK_IM_MODULE=ibus
export XMODIFIERS=@im=ibus
export QT_IM_MODULE=ibus
ibus-daemon -drx

$ sudo reboot

再起動後に再びMATEを起動すると、画面右上に現れるそれっぽいアイコンを右クリックし設定を行います。

「入力メソッド」のタブを選び、「追加」ボタンで「日本語」を追加します。

次の画面でどのインプットメソッドを使用するか選択します。今回はAnthyを。

日本語入力と直接入力の切り替えは、画面右上のアイコンで行うか、macOSなら⌘+スペースキーで、WindowsならWindowsキー+スペースキーで切り替えることができます。

その他の細かい設定

スクリーンセーバー起動時に画面ロックしない

スクリーンセーバーが起動するまでの時間がデフォルトだと5分、しかも起動と同時にロックされるのが非常に鬱陶しいので、忘れないうちに設定を変更します。

離席するときはホストOSの方をロックすれば良いので「スクリーンセーバーを起動したら画面をロックする」のチェックを外しました。

ここまでのディスク/メモリ使用量は?

ディスク使用量はおよそ4Gほどですね。ちょっと大きいなぁ。半分くらいにしたいところ。

メモリ使用量はstartx直後で410MbyteほどなのでGUI環境としては快適な方ですね。

$ free -h
              total        used        free      shared  buff/cache   available
Mem:           2.0G        412M        785M         12M        801M        1.3G
Swap:          1.6G          0B        1.6G

参考ページ

mate-desktop.org www.shookuro.com www.mikitechnica.com qiita.com

標準テキスト CentOS 7 構築・運用・管理パーフェクトガイド
有限会社ナレッジデザイン 大竹 龍史 市来 秀男 山本 道子 山崎 佳子
SBクリエイティブ
売り上げランキング: 66,744