グルチャ

chat.acができるまで(statusnetをインストール)

前回はムームードメインでAmazon EC2で取得したサーバーと固定IPアドレスとドメイン名を関連付けました。
今回は、いよいよサーバーにstatusnetをインストールします。
では、早速説明しましょう。

Step.1:Tera termのインストール

サーバーにstatusnetをインストールするためにSSHからサーバーへアクセスします。
SSHを使ったアクセスには、Tera Termを使います。
Tera term
http://www.forest.impress.co.jp/library/software/utf8teraterm/
※ここではWindowsからサーバーへアクセスする方法を説明します。
 linux系からはfilezillaなどを使ってアクセスできると思いますが現在手元にlinuxが無いので未確認です。

早速tera termをダウンロードしてインストールしてください。
普通のWindowsアプリですので、問題なくインストールできるかと思います。

Step.2:Tera termの起動

tera termがインストールできたら、早速tera termを起動してください。

tera-term-01
tera termを起動すると、
最初に、Tera term:新しい接続のウィンドウが開きますので、
TCP/IPにチェックして、
ホスト:ムームードメインで取得したドメイン名(私の場合chat.ac)
サービス:SSH
TCPポート:22
SSHバージョン:SSH2
プロトコル:UNSPEC
を設定して、OKボタンをクリックしてください。

tera-term-02
次にSSH認証ウィンドウが開きますので、
ユーザー名:ubuntu
パスフレーズ:(入力不要)
RSA/DSA鍵を使うにチェックして秘密鍵をクリックして、前々回Amazon EC2で作成したPair Key(前々回の例ではlogin_key.pem)を選択してください。

tera-term-03
OKボタンをクリックすると、Amazon EC2との通信が開始され、コマンド入力画面になります。

Step.3:Ubuntuのアップデート

ここからはすべてtera termからのコマンド入力でサーバーを操作していきます。
WindowsのGUIに慣れている人がほとんどだと思いますので、多少戸惑うも知れませんが、お決まりのコマンドを入力していくだけですので、大丈夫、できます。

まずサーバーのubuntuを最新に更新します。
下記のコマンドを入力してください。

ubuntu@ip-x-x-x-x:~$ sudo apt-get update

sudo: スーパー権限を意味します。ファイルを変更するときなどには絶対必要なコマンドです。
apt-get: アプリをインターネットからダウンロードしてインストールするコマンドです。
update: apt-getのオプションでサーバーに入っているアプリをすべて最新に更新します。
ubuntuの更新が始まり、完了すると、また、コマンド入力待ち状態に戻ります。

Step.4:apacheのインストール

次に、apacheをインストールします。
apacheはホームページを公開するためのアプリ(HTTPサーバーと呼ばれています)です。
下記のコマンドを入力してください。

ubuntu@ip-x-x-x-x:~$ sudo apt-get install apache2

apacheのインストールが完了すると、
/var/www/index.html
にトップページが作られます。
ためしにブラウザで自分のドメイン(私の場合chat.ac)にアクセスしてみてください。
It works!と表示されたらapacheのインストール成功です。
index.htmlを変更しても、ホームページは作成できますが、今回はstatusnetをインストールする予定ですので、
index.htmlは不要ですので削除しましょう。
下記のコマンドを入力してください。

ubuntu@ip-x-x-x-x:~$ sudo rm /var/www/index.html

rm: ファイルを削除するコマンドです。

ここでついでにubuntuサーバーのディレクトリ構成も説明しておきましょう。
ディレクトリは以下の通りになっています。

/
 - bin
 - etc
 - lib
 - media
 - proc
 - sbin
 - sys
 - var
   - www
 - boot
 - home
   - ubuntu
 - lib64
 - mnt
 - root
 - selinux
 - tmp
 - vmlinuz
 - dev
 - initrd.img
 - lost+found
 - opt
 - run
 - srv
 - usr

/: ルートディレクトリです。
/home/ubuntu: ユーザー用のディレクトリです。tera termを立ち上げると最初にこのディレクトリから始まります。tera termには”~”と表示さていると思いますが、これが/home/ubuntuを指しています。
/var/www: apacheが作ったホームページ用のディレクトリです。ここにstatsunetもインストールします。
沢山のディレクトリがありますが、今回使うのはこのうちのほんのわずかです。

Step.5:MySQLのインストール

次にMySQLをインストールします。
下記のコマンドを入力してください。

ubuntu@ip-x-x-x-x:~$ sudo apt-get install mysql-server

インストール中に管理者ユーザーrootのパスワードを入力する画面が表示されますので、パスワードを設定してください。

Step.6:PHPのインストール

次にPHPをインストールします。
下記のコマンドを入力してください。

ubuntu@ip-x-x-x-x:~$ sudo apt-get install php5 libapache2-mod-php5

インストールが完了したら、apacheを再起動します。
下記のコマンドを入力してください。

ubuntu@ip-x-x-x-x:~$ sudo /etc/init.d/apache2 restart

PHPがちゃんとインストールされているか動作確認しましょう。
テキストエディタで簡単なPHPの命令文を書いて動作させてみます。
下記のコマンドを入力してください。

ubuntu@ip-x-x-x-x:~$ sudo nano /var/www/test.php

nano: ubuntu標準のテキストエディタです。
/var/www/test.php: 今から作成しようとしているphpのテキストファイルです。

tera-term-10
nanoが起動したかと思いますので、ここに

<?php phpinfo(); ?>

と入力してください。
<?php ?>: phpを命令文を書くときの約束事です。
phpinfo(): phpの情報を取得するための命令文です。

tera-term-11
入力し終わったら、キーボードのCtrl+Xを押して終了しましょう。
終了するときにセーブしますかと聞かれるのでyを入力してください。

tera-term-12
ファイル名を確認されますので、問題なければエンターキーを押して終了です。

次にブラウザで
http://ドメイン名(私の場合chat.ac)/test.php
にアクセスしてPHPに関する情報がずらっと表示されたら成功です。
テストが完了したらtest.phpは削除しておきましょう。
下記のコマンドを入力してください。

ubuntu@ip-x-x-x-x:~$ sudo rm /var/www/test.php

※もし、PHPの動作確認する作業が難しければ、この作業は飛ばしても良いでしょう。

Step.7:PHPのサブセットのインストール

statusnetを動かすのに必要なPHPのサブセットをインストールします。
下記の3つのコマンドを入力してください。

ubuntu@ip-x-x-x-x:~$ sudo apt-get install php5-gd php5-curl php5-mysql

これもインストールが終わったら、apacheを再起動します。
下記のコマンドを入力してください。

ubuntu@ip-x-x-x-x:~$ sudo /etc/init.d/apache2 restart

Step.8:statusnet用のデータベースの作成

mysqlにstatusnetのためのデータベースを作成します。
下記のコマンドを入力してください。

ubuntu@ip-x-x-x-x:~$ sudo mysql -u root -p

mysql: mysqlクライアントを起動するコマンドです。これを起動するとmysqlを操作するモードに移ります。

mysql> create database statusnet;

create database: データベースを作成するmysqlのコマンド
statusnet: 作成したいデータベース名。ここではわかりやすくstatusnetとしましたが、名前は何でもかまいません。
次に作成したデータベースを操作できるユーザーを作成します。
次のコマンドを入力してください。

mysql> grant all privileges on statusnet.* to xxxxxxxxx@localhost identified by '*********';

xxxxxxxxx: ユーザー名を入力してください。
*********: ユーザーのパスワードを入力してください。
これでmysqlクライアントでの作業は終了です。
最後に終了コマンドを入力してmysqlクライアントを終了してください。

mysql> exit

Step.9:statusnetをダウンロードして解凍

ついにstatusnetをインストールする準備ができました。
まずは下記のURLでstasunetの最新バージョンを確認してください。
http://status.net/download
現在の最新はバージョン1.1.0のようです。
では、これをサーバーにダウンロードしましょう。
下記のコマンドを入力してください。

ubuntu@ip-x-x-x-x:~$ sudo wget -P /var/www/ http://status.net/statusnet-1.1.0.tar.gz

wget: インターネットからファイルをダウンロードするコマンドです。
-P: ダウンロードしたファイルの保存先を指定するオプション
/var/www/: 保存したいディレクトリ名
http://status.net/statusnet-1.1.0.tar.gz: ダウンロード元
次にstatusnet-1.1.0.tar.gzを解凍します。
下記のコマンドを入力してください。

ubuntu@ip-x-x-x-x:~$ sudo tar xzvf /var/www/statusnet-1.1.0.tar.gz

tar: tarファイルを操作するコマンドです。
xzvf: 解凍を意味するオプションです。
/var/www/statusnet-1.1.0.tar.gz: 解凍するファイルを指定します。
statusnet-1.1.0というディレクトリが作成されて、その中にstatusnetの中身が解凍されます。
しかし、このままでは、http://ドメイン名/statusnet-1.1.0 でアクセスすることになって、ちょっとダサいので、
statusnetの中身をトップページに移動して、http://ドメイン名 でアクセスできるようにしましょう。
下記のコマンドを入力してください。

ubuntu@ip-x-x-x-x:~$ sudo mv /var/www/statusnet-1.1.0/* /var/www/

mv: ファイルを移動するコマンドです。
/var/www/statusnet-1.1.0/*: 移動元のファイルです。*はstatusnetディレクトリ以下のファイルすべてを意味します。
/var/www/: 移動先のディレクトリです。
次にstatusnetディレクトリは不要になりましたので削除します。
下記のコマンドを入力してください。

ubuntu@ip-x-x-x-x:~$ sudo rm /var/www/statusnet-1.1.0/

また、圧縮ファイルも不要ですので削除してください。

ubuntu@ip-x-x-x-x:~$ sudo rm /var/www/statusnet-1.1.0.tar.gz

Step.10:アクセス権限の設定

次にstatusnetが書き込めるようにディレクトリに書き込み権限を与えます。
下記のコマンドを入力してください。

ubuntu@ip-x-x-x-x:~$ sudo chown -R www-data:www-data /var/www/avatar
ubuntu@ip-x-x-x-x:~$ sudo chown -R www-data:www-data /var/www/background
ubuntu@ip-x-x-x-x:~$ sudo chown -R www-data:www-data /var/www/file

chown: ファイルやディレクトリの権限を設定するコマンドです。ubuntuやlinux系OSでは各ファイルやディレクトリに権限が設定されていてデフォルトではroot以外書き込みができないよう設定されいます。
Windowsと違って書き込み権限が厳しく設定されているために、linuxはセキュリティが厳しいといわれています。
-R: 指定のディレクトリ以下の権限を設定するオプションです。
www-data:www-data: www-dataグループのwww-dataユーザーに書き込み権限を与えることを意味します。www-dataはapacheのことです。
/var/www/: 権限を操作するディレクトリを指定します。

Step.11:statusnetのインストール

次にいよいよstatusnetのインストール画面を起動します。
ブラウザから下記のURLを入力してstatsunetのインストール画面にアクセスしてください。

http://ドメイン名/install.php

statusnet-01
インストール画面が表示されたら、下記を入力してください。
site name:自分のサイトの名前(私の場合simtter)
Funcity URLs: disableをチェック
Hostname:ドメイン名(私の場合chat.ac)
Type:MySQLをチェック
Name:MySQLクライアントで作成したデータベース名(例ではstatusnet)
DB Username:MySQLクライアントで作成したユーザー名(例ではxxxxxxxx)
DB Password:ユーザーのパスワード
Administrator nickname:statusnet上でのあなたの名前(statsnetにログインするときに使います)
Administrator password:あなたのユーザーのパスワード(statsnetにログインするときに使います)
Confirm password: パスワードをもう一度
Administrator e-mail:あなたのメールアドレス(任意です)
Subsribe to announcements: statusnetからの更新情報を受け取るかどうか。(チェックするかどうか、どちらでも良いでしょう)
Type of site:Publicを選択
以上を入力し終わったらsubmitボタンを押してください。

ついにstatusnetのインストール完了です。
ブラウザから下記のURLを入力してstatsunetの動作確認をしてください。

http://ドメイン名/index.php

Step.12:DirectoryIndexの設定

これでほぼ完了ですが、index.phpと入力しないとstatusnetにアクセスできないのがちょっとダサいですよね。
ドメイン名だけでトップページを表示したいところ。
その方法を説明しましょう。

まず、設定ファイルのサンプルがあるのでコピーします。
下記のコマンドを入力してください。

ubuntu@ip-x-x-x-x:~$ sudo cp /var/www/htaccess.sample /var/www/.htaccess

次にコピーした設定ファイルを編集します。
下記のコマンドを入力してください。

ubuntu@ip-x-x-x-x:~$ sudo nano /var/www/.htaccess

nanoが起動したら、ファイルの一番下に以下の命令文を入力します。

DirectoryIndex index.php

入力したらキーボードからCtrl+Xを押して、セーブして終了します。

これでブラウザからhttp://ドメイン名 にアクセスするだけでstatusnetのトップページが表示されます。

以上で本当に完了です。
お疲れ様でした。


Comments ( 4 )

  1. SimCity Freaks - Simtter » ubuntuとムームードメインでサブドメインを設定しよう

    [...] 次は、ubuntuの設定を行う。 Tera Termを使って、Amazon EC2のubuntuに繋ぐ。 Tera Termの使い方も過去記事参照されたし。 chat.acができるまで(statusnetをインストール) [...]

  2. SimCity Freaks - Simtter » ubuntuにgitの共有リポジトリを作ろう

    [...] EC2のubuntuに繋ぐ。 Tera Termの使い方は過去記事参照されたし。 chat.acができるまで(statusnetをインストール) 以下、Tera [...]

  3. SimCity Freaks - Simtter » ubuntuとムームードメインとWindows Liveでredmineから独自ドメインのメールを送ろう

    [...] 次にtera termからubuntuにアクセスして、redmineにsmtpの設定を行う。 なお、tera termの使い方は過去記事chat.acができるまで(statusnetをインストール)を参照されたし。 [...]

  4. SimCity Freaks - Simtter » WordPressをインストールしよう

    [...] 前提となる環境が足りない人は下記のリンクを読んで、前提の環境を構築してください。 chat.acができるまで(ドメイン取得) chat.acができるまで(サーバー取得と設定) chat.acができるまで(ドメイン名設定) chat.acができるまで(statusnetをインストール) [...]

Leave a reply

Your email address will not be published.

Time limit is exhausted. Please reload CAPTCHA.

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>