賢くなりたいトイプードルの日記

データサイエンス系の話をメインにしていきます

AWSのCloud9上でバージョンを更新・切り替え

それではCloud9を使い始めるにあたって最初に設定したほうが良いことがいろいろとあるので、説明していきます。

Cloud9のデフォルトのOSやツールのバージョンは古いので、更新・切り替えをしていきます。

OSの更新

まずCloud9のターミナルで以下のコマンドを叩いてOSのバージョンを確認します。

$ cat /proc/version

出力:

Linux version 4.14.77-70.82.amzn1.x86_64 (mockbuild@gobi-build-64003) (gcc version 7.2.1 20170915 (Red Hat 7.2.1-2) (GCC)) #1 SMP Mon Dec 3 20:01:27 UTC 2018

ちょっとOSが古いので、以下のコマンドでOSをアップデートします。

$ sudo yum -y update

これでOSの更新はOK。

タイムゾーンの変更

dateコマンドで確認するとタイムゾーンUTCになっているので、これを変更します。

sudo vi /etc/sysconfig/clock

これでvimが開けたら、Aを押して挿入モードに変更して、

ZONE = "UTC"

セミコロンの中を

Asia/Tokyo

に変更して、保存するのだけれど、escキーが効かないので、ctrl + cを押して、:wqで enterすると、保存できました。

で、今の変更をローカル環境に反映させるコマンドがこちら

$ sudo ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime

再起動します。

$ sudo reboot

再起動したらdateコマンドを叩いてタイムゾーンが変更されているか確認。JTCになっていればOK

Mysqlのバージョンを更新

以下のコマンドでMysqlのバージョンを確認

$ mysql --version

mysql Ver 14.14 Distrib 5.5.62, for Linux (x86_64) using readline 5.1

Mysql5.5は古いので、以下のコマンドでアンインストールします。

$ sudo yum -y remove mysql-config mysql55-server mysql55-libs mysql55

Mysql5.7をインストールします。

$ sudo yum -y install mysql57-server mysql57

以下コマンドでMysqlの設定ファイルを編集します。

$ sudo vi /etc/my.cnf

[mysqld]セクションの

# instructions in http://fedoraproject.org/wiki/Systemd

の下に以下を記述

character-set-server=utf8mb4


[client]
default-character-set=utf8mb4

Mysqlサーバーを起動します。

$ sudo service mysqld start

データベースをアップグレードする必要があります。

$ sudo mysql_upgrade -u root --force

リスタートします。

$ sudo service mysqld start

サーバーを起動した時に、自動で起動するように設定します。

$ sudo chkconfig mysqld on

あとはmysql --versionで確認してMysql5.7になっていて、

sudo -u rootでmysqlに入れればOKです。

PHPのバージョンを更新

以下のコマンドでPHPのバージョンを確認

$ php -v

PHP5.6なので古いですね。更新したほうが良いので、以下コマンドでいろいろとインストールします。

$ sudo yum -y install php72 php72-devel php72-mysqlnd php72-gd php72-intl php72-mbstring

PHPのバージョンを切り替えるためのコマンドをたたきます。

$ sudo update-alternatives --config php

すると、

Selection Command
*+ 1 /usr/bin/php-5.6
2 /usr/bin/php-7.2
Enter to keep the current selection[+], or type selection number:

と出てくるので、「2」を記述してreturnキーを押します。

php -vコマンドで7.2になっていればOKです。

Pythonのバージョンを切り替え

デフォルトではPython2.7になっているのですが、すでにPython3.6は入っています。エイリアスを変更してやるだけでOKです。

$ vi ~/.bashrc

vimを開いて、

# User specific aliases and functions

alias python=python27

の「27」を「36」に書き換えます。

$ source ~/.bashrc

で変更を反映させます。

$ sudo update-alternatives --config python

PHPの時と同じこのコマンドをたたきます。

Selection Command
*+ 1 /usr/bin/python2.7
2 /usr/bin/python3.6
Enter to keep the current selection[+], or type selection number: 2

と聞かれるので、「2」を記入してreturnキーを押す。

$ python -V

Pythonのバージョンを確認して3.6系に変わっていればOKです。

NodeJSのバージョンを更新

$ node -v

で確認すると、6.15.0と古いので、更新します。Cloud9ではnvmというバージョン管理ツールを使っているので、それをインストールします。インストール可能なnvmを調べるコマンドを使います。

$ nvm ls-remote

バージョンが一覧表示されるのですが、v10.15.0 の右に文字が書いてあります。

v10.15.0 (Latest LTS: Dubnium)

LTSとは「Long Time Support」の略で、しばらく使い続けられるのでこれにします。

$ nvm install v10.15.0

これでインストールできました。node -vで確認するとv10.15.0と帰ってくるとおもいます。