ローカル開発環境構築時の作業メモ


■ローカル開発環境構築 記録メモ

実施日 2013/6/20
記録日 2013/6/20

構築の方針 : 基本的にはドットインストールの講座「ローカル開発環境構築」に準ずる

■構築開始
●必要なツールの準備(6つ) 各バージョンは、この環境構築実施日において最新のものを使用。
・Linux系OS CentOS
CentOSのサイトからダウンロードする。(http://centos.org/)
「Downloads→Mirrors」、「Mirror List」、
「South American, Asian, Oceania, Middle Eastern, African and Other Regional Mirrors」で辿り、
RIKEN Research InstituteのHTTPからバージョン選択へ移る。今回は5を選ぶ。
「isos/」、「x86_64」(※)、 「CentOS-5.9-x86_64-netinstall.iso」 をダウンロードした。
※ 参考:「64ビットのOSと32ビットのOSってどっちがいいのだ?って言うか何が違うのだ?」
(http://www.lifehacker.jp/2010/01/10010564os32os.html)

・VirtualBox : 仮想化ソフトウェア・パッケージの一つ (-wikipedia)
VirtualBoxのサイトからダウンロードする。(https://www.virtualbox.org/)
「Downloads」、「VirtualBox platform packages」から使用PCのOSに対応したものを選ぶ。今回はMac。
「VirtualBox 4.2.12 for OS X hosts」横の「x86/amd64」からダウンロードした。
ダウンロード後、起動して手順に沿ってインストール完了。

・Hoster : IPアドレスとURLを紐づけるソフトウェア。MacOS用。 (-講師談)
Hosterのサイトからダウンロードする。(http://www.redwinder.com/macapp/hoster/)
ページ右上「Download」からダウンロード。その後起動、インストールを完了。

・Cyberduck : ファイル転送のオープンな(無償の)ソフトウェア
Cyberduckのサイトからダウンロードする。(http://cyberduck.ch/)
ページ右からOSに合わせて選択、ダウンロード。今回はMac。
ダウンロード後、解凍してアプリケーションフォルダに格納した。

・ターミナル : Mac付属
起動してDockに常駐させておいた。

・コーヒー、お茶

●仮想マシンの作成、設定
VirtualBoxなどの仮想マシン作成・管理ソフトで、バーチャルなPCハードウェア(に相当する空間:仮想マシン)を
用意し、ここへCentOS等のLinuxディストリビューションをインストールする。まずは仮想マシンの作成と設定。
<仮想マシンの作成>
・VirtualBoxを起動する
・「新規」から作成開始
・「仮想マシン名とOSタイプ」にて、仮想マシンの名前とOSタイプを入力する
→ 「名前:myLocalServer、オペレーティングシステム:Linux、バージョン:Red Hat(64)」とした。
※ 名前は何でもよい。解りやすく。今回使用するCentOSはRedHat系と呼ばれるLinuxディストリビューション。
・「メモリーサイズ」にて、作成する仮想PCに搭載するメモリ容量を決める
→ 今回はそのまま「512MB」。
・「ハードドライブ」にて、作成する仮想PCに搭載する仮想ハードドライブをどう割り当てるか選択する
→ 今回はそのまま、「仮想ハードドライブを作成する」にチェック。
・「ハードドライブのファイルタイプ」にて、仮想ハードドライブのファイルタイプを選択する
→ 今回はそのまま、「VDI(VirtualBox Disk Image)」にチェック。
・「物理ハードドライブにあるストレージ」(※)にて、仮想ハードドライブサイズの可変/固定を選択する
→ 今回はそのまま、「可変サイズ」。
※ 誤訳?(´・ω・`)
・「ファイルの場所とサイズ」にて、仮想ハードドライブファイルの名称と、サイズを指定する
→ 今回はそのまま、「myLocalServer」、「8.00GB」。
→ 右下「作成」から仮想マシン作成を実行する。
・仮想マシンが作成され、作成時に指定した内容でシステムが構成されているのが確認できます

<仮想マシンの設定> ※2カ所
・作成した仮想マシン「myLocalServer」を選択した状態で「設定」を選択
・「ネットワーク」を選択
→ 割り当てを「ブリッジアダプター」に変更する。
・「ストレージ」を選択
→ 「ストレージツリー」のコントローラー:IDEのディスクマーク「空」を選択。
→ 属性の「CD/DVDドライブ」横のディスクマークをクリック、「仮想CD/DVDディスクファイルの選択」を選択。
→ 準備しておいたLinuxディストリビューションのisoファイル(今回はCentOS 5.9)を指定、オープン。※
※ インストールメディアのセットです
・設定完了です

●インストーラーの起動、設定、OSの再起動
作成した仮想マシンにセットしたインストールメディアからインストーラーを起動、設定し、OSを再起動させます
<インストーラー起動>
・VirtualBoxにて、設定完了した仮想マシンを選択した状態で「起動」
※ 仮想マシン起動中は基本的にそちらにマウスやキーボード操作が奪われます。抜け出すときは左側⌘キー。
<設定>
・「Choose a Language」は、JキーでJapaneseを選択したらtabキーでカーソルをOKに移してEnterで決定
・警告は確認したらOKで進む
・「Keyboard Type」は、Jキーでjp106を選択してOKで進む
・「Installation Method」で、今回はFTPを使うのでFTPを選択してOKで進む
・「Configure TCP/IP」で、「Enable IPv6 support」のチェックをスペースキーで外してOKで進む
・「FTP Setup」で、OS本体をどこからダウンロードしてインストールするか聞いてくるので、
FTPサーバーの名称として、今回CentOSをダウンロードしたRIKEN Research Instituteのサーバーを指定しOK
→ FTP site nameに「ftp.riken.jp」、CentOS directoryに「/Linux/centos/5/os/x86_64」※。
※ 使用するのがCentOS32ビット版なら「/Linux/centos/5/os/i386」だ。
・「Retrieving」で、ちょっと時間がかかります(10分弱以内)。茶でも飲んでろよな!
——–(待機)———
・画面が変わってCentOSロゴが出たら「次へ」で進む
・新規パーティション作成のための初期化に関する警告が出ますが、「はい」で初期化
・パーティション設定に関する画面では、デフォルトのままで「次へ」
・ドライブ上のLinuxパーティション削除の警告が出ますが、「はい」で進む
・ネットワークデバイスに関する画面も、デフォルトのままで「次へ」
・タイムゾーンは「アジア/東京」で「次へ」
・rootユーザー(一番はじめに出来るユーザー)のパスワードを設定する
→ お好みで。あとで使う。
・パッケージの内容(初期インストールされるソフトウェアの種類)を選択する
→ 今回は最低限のものを入れておいて、あとで自分で入れるカタチにする
→ チェックを全て外し、「今すぐカスタマイズする」にチェックして「次へ」。
・必要最低限のものを選択(3つ)し、「次へ」
→ 「ベースシステム」の「ベース」、「言語」の「日本語のサポート」、「開発」の「開発ツール」のみ選択。
・最後に確認が出るので、「次へ」でインストールを開始。
・インストール完了まで結構時間がかかります(筆者の場合:1時間少々)
——–(待機)———
<再起動>
・インストール完了のメッセージが出たら、VirtualBoxに移る
・「設定」の「ドライブ」から指定したisoファイルを選択し、画面右「属性」のディスクマークをクリック、
「仮想ドライブからディスクを除去」。OKから設定画面を閉じる。
・再び仮想マシンの操作に戻り、CentOSインストーラーの「再起動」をクリック
・再起動が開始します

●OSの更新
再起動したらログイン
・「localhost login:」表示が出たら、最初のユーザーネームであるrootを入力してEnter
・「Password:」表示が出たら、前項で設定したrootユーザーのパスワードを入力。
入力中画面表示はされないが、入力してEnter
・「[root@localhost ~]#」表示となり、ログインが完了します
ログインしたらOSの更新
・「yum -y update」を入力してEnter
→ CentOSのアップデートが開始されます。
※ yum はCentOSのパッケージ管理のためのコマンド。プログラムの導入・更新・削除を行う。
※ -y のオプションは、yes/noできかれるものは全てyesで進める、という指示。
・ちょっと時間がかかります(筆者の場合:10分少々)

●ターミナルから作業が出来るように設定
下準備
・CentOS上で「/sbin/ifconfig」と入力、Enter
・表示された情報から「inet addr」を探し、その直後のIPアドレスを控えておく
IPアドレスにわかりやすい名前を付ける
・Hosterを起動
・新規作成から「セット名」、「ホスト名」を入力
→ 今回は「myLocalServer」、「bubuduke.dev」
・「IP」にCentOS上で控えておいたIPアドレスを入力
・「ホスト追加」をクリック
・「終了」をクリック
・リストに作成したものが追加されているので、セット名の横のボタンをクリックして有効化する
→ これで「bubuduke.dev」とCentOS上で取得したIPアドレスが紐づけられた。
ターミナルからアクセスしてみる
・「ssh -l root bubuduke.dev」を入力、Enter
※ -l : ログイン
・「Are you sure you want to continue connecting (yes/no)?」と聞かれるので、yesを入力、Enter
・次にパスワードを聞かれるので、入力してEnter
・「[root@localhost ~]#」表示になり、ログインできた
★これからはターミナルから作業をする

●作業ユーザーの作成
rootユーザーには全権限があり、うっかりミスすると大変なので、ある程度制限された一般作業用ユーザーを作る
<作業用ユーザーの作成>
・「useradd ユーザー名」を入力、Enter
→ 今回は作業用ユーザー「bubuduke」を追加した。
<作業用ユーザーのパスワードを設定>
・「passwd ユーザー名」を入力、Enter
→ 「New UNIX password:」と聞いてくるので、入力してEnter。画面表示されません。
→ 「BAD PASSWORD: it is based on a dictionary word」:(訳)このパスワード弱いんじゃね?
→ 「Retype new UNIX password:」と入力内容を再確認してくるので、同じ内容で入力、Enter。
→ 「passwd: all authentication tokens updated successfully.」で完了。
新しく作ったユーザーでログイン確認してみる
・ターミナル上で⌘+Tで新しくタブを開く
・「ssh -l bubuduke bubuduke.dev」入力、Enter
・パス入力、Enter
・「[bubuduke@localhost ~]$」表示になって、ログインできた!

●作業ユーザーの設定
作業ユーザーを「rootユーザーと同じことができる」ようにしておく
<rootユーザーで設定>
・「usermod -G wheel bubuduke」を入力、Enter
※ usermod : ユーザーの情報を変える
※ -G wheel : wheelグループに入れる
・「visudo」を入力、Enter
→ エディタが立ち上がる。少し作業をします。
・「/wheel」入力、Enterでwheelグループ(正確には文字列wheel)を検索する。
・「Allows people in group wheel to run all commands」記述の行の直下にある
「%wheel ALL=(ALL) ALL」が#記号でコメントアウトされているが確認できる。
この#を外しておく。外すには削除したい文字上にカーソルを移動させてxキー。
・「:wq!」で強制的に上書き保存して終了する。
→ これで作業ユーザー「bubuduke」がrootでないと使えないコマンドを使用できるようになった。

●Webサーバー「Apatch」の導入
権限付加された作業ユーザーで、パッケージのインストール作業をしてみる
・「sudo yum -y install httpd」で、WebサーバーのApatchをインストール
→ 初回は、「rootユーザーのコマンドやけど作業ユーザにさせてええの?」と聞いてくる。
→ 確認した上で、作業ユーザーのパスワードを入力する。
・インストールが開始される

●データベース「MySQL」の導入
権限付加された作業ユーザーで、パッケージのインストール作業をしてみる
・「sudo yum -y install mysql-server」で、データベースパッケージのMySQL-Serverをインストール
・作業ユーザーのパスを入力して実行

●PHPの導入
PHPは、いくつかのオプションパッケージも指定してインストールする。また、バージョンは5.3。
・「sudo yum -y install php53 php53-devl php53-mbstring php53-gd php53-mysql」で、実行
<rootユーザーで作業>
・「yum -y install php-pear」でphp-pearを個別インストール
・「pear upgrade –force pear」php-pearを強制アップグレード
なお、作業ユーザーにて「sudo yum -y remove php*」でphpに関するすべてを削除できる。
古いパッケージの削除等はこうして行う。

●セキュリティ設定のために
セキュリティの設定にはrootユーザーになる必要がある
<rootユーザーへの切替>
・「su -」を入力、Enter
・rootのパスワードを入力
・#がついていたら切替できている
<一般ユーザーへの切替>
・なお、rootユーザー時に「exit」を入力、Enterで一般ユーザに切り替わる

●セキュリティの設定
selinuxとiptablesをオフにする。
※ selinux : セキュリティの強化
※ iptables : ファイヤーウォール
本来はウェブサービス用にこれらを厳密に設定するが、練習用環境の構築なのでいっそ切ってしまうとよい。
<selinuxの無効化>
・「setenforce 0」を入力、Enterでオフに出来る
・起動する度にselinuxが立ち上がってしまうので、設定ファイルをいじる
→ 設定ファイルを開いて内容を変更する
・「vi /etc/sysconfig/selinux」
・エディタが開いたらカーソルを「SELINUX=enforcing」付近に移動させる
・e上でiキーを押してINSERT(挿入)モードにし、「disabled」を入力
・後ろに続く「enforcing」をバックスペースで消す
・escキーで挿入モードから抜ける
・「:wq!」で強制的に上書き保存して終了
<iptablesの無効化>
・「/sbin/service iptables stop」でオフにする
・起動する度にiptablesが立ち上がってしまうので、設定をオフにする
・「chkconfig iptables off」で、サーバー起動時の立ち上げプログラムからiptablesをオフにする
<再起動しておく>
・「reboot」でログイン中のサイト(今回の例ではbububduke.dev)を再起動する。
・再起動後は再びログインして作業を続ける。(`・ω・´)キリ

●Webサーバー、MySQLの起動
rootユーザーに切り替えて作業を開始する
<Webサーバーの起動>
・「/sbin/service httpd start」を入力、Enter
<MySQLの起動>
・「/sbin/service mysqld start」を入力、Enter
どちらもサーバー起動時に自動で立ち上がって欲しいので、chkconfigをonにする
・「chkconfig httpd on」を入力、Enter
・「chkconfig mysqld on」を入力、Enter
phpはWebサーバー起動と同時に立ち上がってくれるので、上記のような設定は不要。

●Webサーバー、MySQLの動作確認
Webサーバーの動作確認
・http://設定したホスト名 でブラウザから確認してみる
※ Hosterが起動中じゃないとホスト名で繋がらないので注意。
MySQLの動作確認
・ターミナルから「mysql -u root」を実行
・抜けるには「exit」で。

●Cyberduckでファイルを管理するよう設定する
まず、Webサーバー内の文書が入っているディレクトリを一般作業ユーザーから扱えるようにする
・「chown bubuduke /var/www/html」
※ chown : ファイルやディレクトリの所有者を変えるコマンド
そして、Cyberduckで設定をする
<Cyberduckの設定>
・Cyberduckを起動
・ウィンドウ左下の「+」からサーバーを追加
・FTP(ファイル転送プロトコル)をSFTP(SSHによる暗号化FTP)にする
・ニックネームは「myLocalServer」
・サーバーはホスト名「bubuduke.dev」
・ユーザー名は「bubuduke」
・詳細設定からパスに「/var/www/html」
・一旦設定ウィンドウを閉じて、リスト内の今作成したサーバーをダブルクリック
・ログインできれば成功
ここにファイルを放り込むなどしてWebページを作っていく。

●Cyberduckをより便利にする
外部エディタとの連携設定を行っておく
・Cyberduckの環境設定を開く
・「ブラウザ」タブで「ダブルクリックしたファイルを外部エディタで開く」にチェック
・「外部エディタ」タブで普段自分が使用しているエディタを指定
・「外部エディタ」タブで「常に省略時エディタを使用」にチェック
・環境設定を閉じる

●HTMLファイルの設置と確認
接続したサーバ内の「/var/www/html」先にHTMLファイルを作成し、ブラウザから確認してみる
・Cyberduckで接続したbubuduke.devの「/var/www/html」において右クリックからファイル新規作成
・名称を「index.html」
・作成したHTMLファイルをダブルクリックしてHTMLタグを記述する
<例>
<DOCTYPE html>
<html>
<head>
</head>
<body>
Hello,myLocalServer!
</body>
</html>
・ブラウザでhttp://ホスト名にアクセスして確認してみる

●PHPファイルの設置と確認
接続したサーバ内の「/var/www/html」先にPHPファイルを作成し、ブラウザから確認してみる
・Cyberduckで接続したbubuduke.devの「/var/www/html」において右クリックからファイル新規作成
・名称を「test.php」
・作成したHTMLファイルをダブルクリックしてHTMLタグを記述する
<例>
<?php
echo “Hey!”;
・ブラウザでhtt://ホスト名/test.phpにアクセスして確認してみる

おつかれさまでした!
(おわり)

コメントを残す

メールアドレスが公開されることはありません。