#0004 wp-cliからWordPressをインストールしよう (1)

 

さて、前々回はさくらのレンタルサーバーにSSHログインできることを確認しました。前回はさくらのレンタルサーバーにMySQLのデータベースを作成しました。これで、さくらのレンタルサーバーwp-cli をインストールする準備ができました。今回は、さくらのレンタルサーバーに wp-cli をインストールする手順をご紹介します。

wp-cliとは

wp-cliは、WordPressのインストールを管理するコマンドラインツールです。wp-cliはWEBブラウザを使用せずにWordPressをインストールしたり、プラグインやテーマをインストールしたりすることができます。もちろん、何かをインストールするだけでなく、複数インストールしたテーマから任意のテーマを有効化/無効化したりするなど、WordPressインストール後の運用にも重宝します。

wp-cliをダウンロードしよう

まずはさくらのレンタルサーバーにwp-cliをダウンロードするために、SSHクライアントからさくらのレンタルサーバーへログインしましょう。ログイン後はこのような状態になっているかと思います。

Last login: Sat Feb 13 22:04:02 2016 from xxx.xxx.ne.jp
FreeBSD 9.1-RELEASE-p24 (SAKURA17) #0: Thu Feb  5 10:03:29 JST 2015

Welcome to FreeBSD!

%

ホームディレクトリの中身を確認しよう

ログインした直後のディレクトリを「ホームディレクトリ」といいます。ホームディレクトリの中にどのようなファイルやディレクトリがあるかを「ls」コマンドで見てみましょう。

ホームディレクトリとは

ホームディレクトリ(home directory)はマルチユーザシステムのコンピュータにおけるディレクトリの種類のひとつ。通常、ユーザがログインした際のカレントワーキングディレクトリである。ホームディレクトリが存在しない場合、ユーザはログインすることができない。

– 引用: Wilipediaより

% ls
MailBox		db		ports		sakura_pocket	sblo_files	www

lsコマンドを実行すると、カレントディレクトリにあるファイルやディレクトリを表示します。しかし、これだけでは表示された文字列がファイルなのかディレクトリなのか判別がつきません。

カレントディレクトリとは

カレントディレクトリ(英語: current directory、現行ディレクトリ)とは、コンピューティングの分野で、階層型ファイルシステムを使用している場合に、そのプロセスが現在関連付けられている(現在の位置である)ディレクトリのことである。Windowsでは作業フォルダとも呼ばれることがある。また、ワーキングディレクトリとも。

– 引用: Wikipediaより

次に示す例のように、lsコマンドに「-la」オプションをつけて実行してみましょう。

% ls -l
total 24
drwx------   3 example  users  512 Mar 13  2009 MailBox
drwx------   2 example  users  512 Mar 13  2009 db
drwx------  12 example  users  512 Feb  6 10:37 ports
drwxr-xr-x   2 example  users  512 Jan 27  2015 sakura_pocket
drwxr-xr-x   2 example  users  512 Mar 13  2009 sblo_files
drwx---r-x   2 example  users  512 Feb 13 21:58 www

何やらいっぱい文字が出てきました。lsコマンドの詳細な解説はこちらのサイト (外部リンク: UNIXの部屋 コマンド検索:ls (*BSD/Linux))をご覧いただきたいのですが、「ls -l」コマンド実行後に表示された結果の一番左側に「d」と表示されていれば、それはディレクトリであることを示しています。さくらのレンタルサーバーのホームディレクトリについて、そしてここまで解説しましたlsコマンドについてまとめると、

  1. ホームディレクトリには1つもファイルがない (正確には隠しファイルがありますが、本筋ではないので省略します)
  2. 複数のディレクトリが最初から作られている (それぞれのディレクトリが持つ役割については追って解説します)
  3. lsコマンドを使うことで、カレントディレクトリにあるファイルやディレクトリの一覧を表示することができる
  4. lsコマンドに -l オプションをつけて実行することで、ファイルやディレクトリが長いリスト形式で表示される

ということがおわかりいただけたかと思います。

ホームディレクトリに「bin」ディレクトリを作成しよう

ホームディレクトリ直下に「bin」ディレクトリを作成して、ここにwp-cliをダウンロードすることにします。なぜこのようなことをするか、といいますと

  1. ホームディレクトリ直下に無闇にファイルを置くと整理しにくい
  2. ホームディレクトリ (例: /home/example) 直下に bin ディレクトリ (/home/example/bin) を作っておくと、すでにここにPATH(パス)が通っているので、プログラムに実行権をつけておけばプログラム名をフルパスで実行しなくてよくなる

というメリットがあります。

パスとは

パスとは、外部記憶装置内でファイルやフォルダの所在を示す文字列。ファイルやフォルダのコンピュータ内での住所にあたる。

– 引用: IT用語辞典より

これだけではイメージが掴みにくいかと思いますが、パスを通す(binディレクトリにはすでにパスが通っている)と何が嬉しいかというと、プログラムを実行するのに短い文字数で実行できるというメリットがあります。wp-cliを /home/example/bin/wp としてインストールした場合、パスが通っていないときの実行例はこうなります。

% /home/example/bin/wp

しかし、パスが通っていればこれだけで済みます。

% wp

というわけで、前置きが長くなってしまいましたが、ホームディレクトリ直下に bin ディレクトリを作成して、この中に wp-cli をインストールすることにします。まず、カレントディレクトリのディレクトリ名を確認してみましょう。今どのディレクトリにいるのかは、「pwd」コマンドで確認することができます。

% pwd
/home/example

それでは、早速カレントディレクトリ直下に「mkdir」コマンドでbinディレクトリを作成してみましょう。

% mkdir -p bin

binディレクトリができたかどうか、lsコマンドで確認してみます。

% ls
MailBox		bin		db		ports		sakura_pocket	sblo_files	www

または

% ls -l
total 28
drwx------   3 example  users  512 Mar 13  2009 MailBox
drwxr-xr-x   2 example  users  512 Feb 13 23:18 bin
drwx------   2 example  users  512 Mar 13  2009 db
drwx------  12 example  users  512 Feb  6 10:37 ports
drwxr-xr-x   2 example  users  512 Jan 27  2015 sakura_pocket
drwxr-xr-x   2 example  users  512 Mar 13  2009 sblo_files
drwx---r-x   2 example  users  512 Feb 13 21:58 www

で確認できます。ご覧のように、binディレクトリができたことがわかるかと思います。それでは、binディレクトリに移動してみましょう。

% cd bin
% pwd
/home/example/bin

上記のように、binディレクトリへ移動することができました。それではここに、wp-cliをインストールしましょう。

wp-cli ダウンロード

WEBブラウザでファイルをダウンロードするように、コマンドライン用にもブラウザがあり、ファイルをダウンロードしたりすることができます。UNIXやLinuxのコマンドライン用ブラウザはいくつか種類がありますが、今回は「curl」コマンドを使ってダウンロードすることにします。それでは早速ダウンロードしてみましょう。

% curl -o wp https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar 
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 1434k  100 1434k    0     0   761k      0  0:00:01  0:00:01 --:--:--  768k

ダウンロードできたかどうか、lsコマンドで確認してみましょう。

% ls
wp
% ls -l
total 1472
-rw-r--r--  1 example  users  1469311 Feb 13 23:38 wp

上記のように、カレントディレクトリに「wp」というファイルがダウンロードされました。しかし、これだけではファイルに実行権が付与されていません。ファイルをプログラムとして実行するために、ファイル wp に対して実行権を付与しましょう。

% chmod +x wp

実行権が付与されたことをlsコマンドで確認します。

% ls -l
total 1472
-rwxr-xr-x  1 example  users  1469311 Feb 13 23:38 wp

アクセス権(パーミッション)とは

アクセス権とは、ファイルやディレクトリに対して行う操作の権限で、読み込み権、書き込み権、実行権の3つがあります。

読み込み権は、ファイルの場合は、そのファイルやディレクトリの内容を参照する権限です。例えば、catコマンドを実行して、読み込み権がないファイルの内容を表示したり、lsコマンドを実行して、読み込み権のないディレクトリの内容を表示することはできません。

書き込み権は、ファイルを更新したり、ディレクトリ内にファイルを追加したりといったことを行う権限です。

実行権は、シェルスクリプトや実行可能形式のファイルを実行したりする権限です

– 引用: Codezine UNIXコマンド辞典「chmod」より

wpコマンドの動作確認

wpコマンドに実行権がついたところで、動作するかどうかを確認してみましょう。以下のように、wpコマンドのバージョン情報が表示されていれば、wpコマンドのインストールが正常に終了したことになります。

% wp cli version
WP-CLI 0.22.0

ホームディレクトリに移動する

binディレクトリでの作業が終わったので、ホームディレクトリに移動することにします。cdコマンドの引数にディレクトリ名をつけて実行することで移動できるのは、先ほど確認しました。ホームディレクトリへ戻るには、「cd /home/example 」と毎回実行しなければならないのでしょうか?実はそんなことありません。以下の2例を見てみましょう。

% pwd
/home/example/bin

% cd /home/example/
% pwd
/home/example
% pwd
/home/example/bin

% cd
% pwd
/home/example

2例目のように、cdコマンドに引数をつけず実行すると、ホームディレクトリへ戻ることができます。もう1つ覚えておきたいのが、「cd -」です。これで直前にいたディレクトリへ移動することができます。

% pwd
/home/example

% cd -
% pwd
/home/example/bin

% cd -
% pwd
/home/example

% cd -
% pwd
/home/example/bin

 


ここまでのまとめ

少し長くなりましたので、今回はここまでにして、今回はwp-cliのインストールまでで1つの区切りとし、次回はwp-cli (wpコマンド)を使ったWordPressのインストールを行うことにします。今回やったことは以下になります。

  1. mkdirコマンドでホームディレクトリ直下に bin ディレクトリを作成した
  2. cdコマンドで bin ディレクトリに移動した
  3. curlコマンドで wp-cli を wp ファイルとしてダウンロードした
  4. ダウンロードした wp ファイルに、 chmod コマンドで実行権を付与した
  5. ファイルやディレクトリの有無やパーミッションは ls コマンドで確認することができるファイルやディレクトリの有無やパーミッションは ls コマンドで確認することができる

UNIXシェルスクリプトコマンドブック 第3版 (コマンドブックシリーズ)