好きなときに好きなことをしたいブログ

好きなときに好きなことをしたい性格です。

CentOS7にGUI環境を入れる方法

CentOS7にGUI環境を導入しました。

GUI環境(GNOME Desktop)をグループインストール

root権限で以下を実行。

# yum groupinstall "GNOME Desktop"

ザーッっと色んな表示が流れて、次のような画面で止まる。
f:id:Sukinakoto:20170815230828p:plain
「y」を入れて「enter」。
それなりに時間がかかるので、私はこの間にお風呂を済ませました。
終わると次のような画面になる。
f:id:Sukinakoto:20170816000648p:plain

Xウィンドウを起動

次のコマンドを打ってXウィンドウを起動します。

# startx

少しすると、次のような言語選択画面になります。
f:id:Sukinakoto:20170816001146p:plain
次は入力ソース(キーボード)選択画面。
f:id:Sukinakoto:20170816001942p:plain
何にするか迷いましたが、こちらのブログ(CentOS7 ( RHEL7 ) でサクッとキーボードレイアウトを変更するよ! - ドタンバ! by ナメロウ)によると
後でいくらでも変えれそうなので、デフォルトのままにしました。
続いてオンラインアカウント設定画面。
f:id:Sukinakoto:20170816002609p:plain
CentOSでもこんなことができるんですね。
でも、CentOS上で写真を見たいわけではないので、私はスキップしました。
設定が完了すると、こんな画面に。
CentOS Linux を使い始める」ボタンをクリック。
f:id:Sukinakoto:20170816002733p:plain
初めての人向けガイド的なものが表示されますが、まぁ、閉じてよしです。
f:id:Sukinakoto:20170816003410p:plain
閉じると、こんなデスクトップ画面になります。
f:id:Sukinakoto:20170816003547p:plain

システム起動時にGUI環境が立ち上がるようにする

GUI環境を導入しただけだと、次回CentOS起動時はCUI環境が起動し、
毎回# startx を打たないとGUI環境を使えません。
基本的にGUI環境を使いたいのであればターゲットを変更した方が良いです。
現在、起動時のターゲット(デフォルトターゲット)が何になっているかを確認する

# systemctl get-default 
multi-user.target

ちなみに、デフォルトターゲットはシンボリックリンクで定義されています。

# ls -l /etc/systemd/system/default.target
lrwxrwxrwx. 1 root root 37  8月 13 01:39 /etc/systemd/system/default.target -> /lib/systemd/system/multi-user.target

CentOS7でのターゲットとは、CentOS6以前でのランレベルのこと。
>||# ls -al /lib/systemd/system/runlevel*target
lrwxrwxrwx. 1 root root 15 8月 13 18:55 /lib/systemd/system/runlevel0.target -> poweroff.target
lrwxrwxrwx. 1 root root 13 8月 13 18:55 /lib/systemd/system/runlevel1.target -> rescue.target
lrwxrwxrwx. 1 root root 17 8月 13 18:55 /lib/systemd/system/runlevel2.target -> multi-user.target
lrwxrwxrwx. 1 root root 17 8月 13 18:55 /lib/systemd/system/runlevel3.target -> multi-user.target
lrwxrwxrwx. 1 root root 17 8月 13 18:55 /lib/systemd/system/runlevel4.target -> multi-user.target
lrwxrwxrwx. 1 root root 16 8月 13 18:55 /lib/systemd/system/runlevel5.target -> graphical.target
lrwxrwxrwx. 1 root root 13 8月 13 18:55 /lib/systemd/system/runlevel6.target -> reboot.target
|

デフォルトターゲットの変更はシンボリックリンクのリンク先を変えれば可能ですが、
lnコマンドだと長ったらしいパスを書かねばならず、少し面倒ですし、間違えたら少々大ごとです。
これを解消してくれるコマンドが用意されています。

# systemctl set-default graphical.target
Removed symlink /etc/systemd/system/default.target.
Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/graphical.target. 

上記コマンドで起動時からGUIになります。
やっぱり元に戻したい(起動時はCUIにしたい)場合は次のコマンドを使います。

# systemctl set-default multi-user.target
Removed symlink /etc/systemd/system/default.target.
Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/multi-user.target.

JavaScriptの定数宣言constの利用は要注意

IE11からはconst宣言に対応しているが、IE10までは未対応とのこと。

個人端末はIE11が増えてきているのではないかと思いますが、
企業・法人だとまだIE10以下も多いだろうし、constは使わない方が良さそうだなぁ。

また、Internet Explorerではconstに対応しておらず何も表示されません。

(変数2,定数-JavaScript入門

 

名前空間を作って汚染されないようにし、各jsファイルから定数を呼び出せるようにします。
browserifyで各jsファイルをまとめてmin化してしまうので、後で設定した値を直しやすいように定義ファイルは別に作る派です。(IEで使えないjavascriptのconstの代替案 - Qiita)

 

紳士協定として、大文字アンダースコアで変数を宣言して「この変数は定数と思ってね!」ということも可能ですが、
今回はObject.freeze()を使います。これはIE9以上対応です。
(javascriptでconstを使わずに定数を実現する方法

 

backspaceとdelete

Mac初心者あるあるだと思うのですが、
Windowsでの「delete」キーに当たるキーがなくて不便』。

でも、きっと方法があるはずよねということでいくつか試した結果、見つけました。
次の通りです。

Windows

Mac

「backspace」

「delete」

「delete」

「fn + delete」

JavaScriptの変数名のルール

少し読み辛かったので。

JavaScriptの文法上の変数名のルール

  • 半角英数字とアンダースコア「_」を使える。
  • 1文字目に数字は使えない。
  • JavaScriptの命令語は使えない。
  • 大文字と小文字は別扱いされる。(hogeHogeは別の変数。)
追記

JavaScriptのファイル名を「variable.js」にするとJavaScriptが動きませんでした。
ファイル名にも命名ルールがあるっぽい。

今後しばらくのやりたいこと

自分用メモ。

  • ブログの画像サイズの修正
  • CentOS7にGUI環境を入れる
  • JavaScriptの勉強

→基本編終了。

  • スマホの写真の整理(不要な写真を捨てる)

→2017/08/15、106枚削除。

  • ガラケーの写真を吸い上げる
  • CentOSのrootパスワードを変更する
  • CentOSのユーザーの権限を一般ユーザーにする
  • CentOSに日本語マニュアルを入れる

JavaScriptを学びたい

コピペレベルではやったことがあったのですが、ちゃんと勉強したことがなかったので、やりたいなと。
かなり年季の入ってそうなサイトですが、基本の「き」を学べそうなこちらで勉強しています。
JavaScript入門
基本編の5.文字表示まで終えましたよ。

<html>
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  <title>Let's Study!</title>
</head>
<body>
  <h1>JavaScriptを勉強しよう</h1>
  <div>
    <lo>
      <li><a href="alert.html">alert</a></li>
      <li><a href="document_write.html">document.write</a></li>
    </lo>
  </div>
</body>
</html>
<html>
<head>
  <meta http-equiv="Content-Script-Type" content="text/javascript; charset=UTF-8">
  <title>document.write()</title>
</head>
<body>
  <script type="text/javascript" src="js/document_write.js" async></script>
</body>
</html>
document.write("<strong>12+34</strong>の答えは");
document.write(12+34);
document.write("です!");

注)HTML5ではdocument.writeは非推奨です。