ウェブ、ショウジン

VMware FusionにUbuntu 9 ServerをインストールしてLAMP環境の構築

2009-8-11
Category
Linux

Mac OS X 10.5.7上のVMware FusionにUbuntu Server 64bit versionをインストールする。

http://www.ubuntu.com/getubuntu/download-server
上記URLからUbuntu Server 64bit versionをDLする。
(数時間かかるので夜寝る前とかに)

DLしたubuntu-9.04-server-amd64.isoというisoイメージファイルを使って、VMware Fusionにインストールする。(インストールの作業はとくに難しいことないので割愛)

ただ、せっかくServer版なので、インストール時の各種サーバ構成とかは必要なものを選んで、インストールされるようにしたほうが良い。(SSH ServerやWeb ServerやMySQL Serverや、その他諸々)

ここから先は、インストール完了以降の「LAMP環境構築」の流れ。

インストール時の設定でapacheとかsshとかmysqlとか選択しておいたから、そのへんはちゃんと入ってそう。(前回は失敗して、インストール後にapt-getで新規インストールした)

まず、MacのTerminalからSSHでUbuntu Serverにリモートログイン。接続成功。
以降は、どの作業もこの状態で続ける。

Apacheの確認

ifconfigで調べたUbuntu ServerのIPアドレスでアクセス。(ブラウザでhttp://IPアドレス)

「It works!」が表示された。オーケー。

MySQLの確認

MySQLモニターを起動させて確認してみる。

$ mysql -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 32
Server version: 5.0.75-0ubuntu10 (Ubuntu)

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql>

MySQLオーケー。

PHPの確認

$ php -v
The program 'php' is currently not installed.  You can install it by typing:
sudo apt-get install php5-cli
-bash: php: command not found

当然のことながらデフォルト状態では入っていない。以下のコマンドを実行してインストールする。

$ sudo apt-get install php5 php5-gd php5-mysql
[sudo] password for showjin:
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
  defoma fontconfig-config libapache2-mod-php5 libfontconfig1 libgd2-xpm
  libpng12-0 libt1-5 libxpm4 php5-common ttf-dejavu ttf-dejavu-core
  ttf-dejavu-extra
Suggested packages:
  defoma-doc psfontmgr x-ttcidfont-conf dfontmgr libft-perl php-pear
  libgd-tools
The following NEW packages will be installed:
  defoma fontconfig-config libfontconfig1 libgd2-xpm libpng12-0 libt1-5
  libxpm4 php5 php5-gd ttf-dejavu ttf-dejavu-core ttf-dejavu-extra
The following packages will be upgraded:
  libapache2-mod-php5 php5-common php5-mysql
3 upgraded, 12 newly installed, 0 to remove and 80 not upgraded.
Need to get 8497kB of archives.
After this operation, 11.6MB of additional disk space will be used.
Do you want to continue [Y/n]? Y
Get:1 http://us.archive.ubuntu.com jaunty/main defoma 0.11.10-0.2ubuntu1 [101kB]
Get:2 http://us.archive.ubuntu.com jaunty/main ttf-dejavu-core 2.28-1 [1429kB]
Get:3 http://us.archive.ubuntu.com jaunty/main ttf-dejavu-extra 2.28-1 [3092kB]
Get:4 http://us.archive.ubuntu.com jaunty/main ttf-dejavu 2.28-1 [3104B]
Get:5 http://us.archive.ubuntu.com jaunty/main fontconfig-config 2.6.0-1ubuntu12 [51.6kB]
Get:6 http://us.archive.ubuntu.com jaunty-updates/main php5-mysql 5.2.6.dfsg.1-3ubuntu4.1 [74.3kB]
Get:7 http://us.archive.ubuntu.com jaunty-updates/main libapache2-mod-php5 5.2.6.dfsg.1-3ubuntu4.1 [2615kB]
Get:8 http://us.archive.ubuntu.com jaunty-updates/main php5-common 5.2.6.dfsg.1-3ubuntu4.1 [372kB]
Get:9 http://us.archive.ubuntu.com jaunty/main libfontconfig1 2.6.0-1ubuntu12 [124kB]
Get:10 http://us.archive.ubuntu.com jaunty/main libpng12-0 1.2.27-2ubuntu2 [168kB]
Get:11 http://us.archive.ubuntu.com jaunty/main libxpm4 1:3.5.7-1 [42.7kB]
Get:12 http://us.archive.ubuntu.com jaunty/main libgd2-xpm 2.0.36~rc1~dfsg-3ubuntu1 [215kB]
Get:13 http://us.archive.ubuntu.com jaunty/main libt1-5 5.1.2-3 [170kB]
Get:14 http://us.archive.ubuntu.com jaunty-updates/main php5 5.2.6.dfsg.1-3ubuntu4.1 [1122B]
Get:15 http://us.archive.ubuntu.com jaunty-updates/main php5-gd 5.2.6.dfsg.1-3ubuntu4.1 [37.2kB]
Fetched 8497kB in 12s (655kB/s)
Selecting previously deselected package defoma.
(Reading database ... 28352 files and directories currently installed.)
Unpacking defoma (from .../defoma_0.11.10-0.2ubuntu1_all.deb) ...
Selecting previously deselected package ttf-dejavu-core.
Unpacking ttf-dejavu-core (from .../ttf-dejavu-core_2.28-1_all.deb) ...
Selecting previously deselected package ttf-dejavu-extra.
Unpacking ttf-dejavu-extra (from .../ttf-dejavu-extra_2.28-1_all.deb) ...
Selecting previously deselected package ttf-dejavu.
Unpacking ttf-dejavu (from .../ttf-dejavu_2.28-1_all.deb) ...
Selecting previously deselected package fontconfig-config.
Unpacking fontconfig-config (from .../fontconfig-config_2.6.0-1ubuntu12_all.deb) ...
Preparing to replace php5-mysql 5.2.6.dfsg.1-3ubuntu4 (using .../php5-mysql_5.2.6.dfsg.1-3ubuntu4.1_amd64.deb) ...
Unpacking replacement php5-mysql ...
Preparing to replace libapache2-mod-php5 5.2.6.dfsg.1-3ubuntu4 (using .../libapache2-mod-php5_5.2.6.dfsg.1-3ubuntu4.1_amd64.deb) ...
Unpacking replacement libapache2-mod-php5 ...
Preparing to replace php5-common 5.2.6.dfsg.1-3ubuntu4 (using .../php5-common_5.2.6.dfsg.1-3ubuntu4.1_amd64.deb) ...
Unpacking replacement php5-common ...
Selecting previously deselected package libfontconfig1.
Unpacking libfontconfig1 (from .../libfontconfig1_2.6.0-1ubuntu12_amd64.deb) ...
Selecting previously deselected package libpng12-0.
Unpacking libpng12-0 (from .../libpng12-0_1.2.27-2ubuntu2_amd64.deb) ...
Selecting previously deselected package libxpm4.
Unpacking libxpm4 (from .../libxpm4_1%3a3.5.7-1_amd64.deb) ...
Selecting previously deselected package libgd2-xpm.
Unpacking libgd2-xpm (from .../libgd2-xpm_2.0.36~rc1~dfsg-3ubuntu1_amd64.deb) ...
Selecting previously deselected package libt1-5.
Unpacking libt1-5 (from .../libt1-5_5.1.2-3_amd64.deb) ...
Selecting previously deselected package php5.
Unpacking php5 (from .../php5_5.2.6.dfsg.1-3ubuntu4.1_all.deb) ...
Selecting previously deselected package php5-gd.
Unpacking php5-gd (from .../php5-gd_5.2.6.dfsg.1-3ubuntu4.1_amd64.deb) ...
Processing triggers for man-db ...
Setting up defoma (0.11.10-0.2ubuntu1) ...

Setting up ttf-dejavu-core (2.28-1) ...

Setting up ttf-dejavu-extra (2.28-1) ...

Setting up ttf-dejavu (2.28-1) ...
Setting up fontconfig-config (2.6.0-1ubuntu12) ...

Setting up php5-common (5.2.6.dfsg.1-3ubuntu4.1) ...
Setting up libapache2-mod-php5 (5.2.6.dfsg.1-3ubuntu4.1) ...
 * Reloading web server config apache2
   ...done.

Setting up php5-mysql (5.2.6.dfsg.1-3ubuntu4.1) ...

Setting up libfontconfig1 (2.6.0-1ubuntu12) ...

Setting up libpng12-0 (1.2.27-2ubuntu2) ...

Setting up libxpm4 (1:3.5.7-1) ...

Setting up libgd2-xpm (2.0.36~rc1~dfsg-3ubuntu1) ...

Setting up libt1-5 (5.1.2-3) ...

Setting up php5 (5.2.6.dfsg.1-3ubuntu4.1) ...
Setting up php5-gd (5.2.6.dfsg.1-3ubuntu4.1) ...

Processing triggers for libc6 ...
ldconfig deferred processing now taking place

インストール出来ているか確認する。

ApacheのWebルート(/var/www)にphpinfo()を置いてブラウザでアクセスしてみる。

phpinfo.php

<?php phpinfo() ?>

PHP Version 5.2.6-3ubuntu4.1が入っていることが確認できた。MySQL関係のモジュールも確認できた。

でも「$ php -v」とすると以下のようなメッセージがでる。

$ php -v
The program 'php' is currently not installed.  You can install it by typing:
sudo apt-get install php5-cli
-bash: php: command not found

デスクトップ版でもこれは実行しておいたし、一応このサーバ版でもやっておくことにする。

$ sudo apt-get install php5-cli
Reading package lists... Done
Building dependency tree
Reading state information... Done
Suggested packages:
  php-pear
The following NEW packages will be installed:
  php5-cli
0 upgraded, 1 newly installed, 0 to remove and 80 not upgraded.
Need to get 2570kB of archives.
After this operation, 5816kB of additional disk space will be used.
Get:1 http://us.archive.ubuntu.com jaunty-updates/main php5-cli 5.2.6.dfsg.1-3ubuntu4.1 [2570kB]
Fetched 2570kB in 5s (486kB/s)
Selecting previously deselected package php5-cli.
(Reading database ... 28624 files and directories currently installed.)
Unpacking php5-cli (from .../php5-cli_5.2.6.dfsg.1-3ubuntu4.1_amd64.deb) ...
Processing triggers for man-db ...
Setting up php5-cli (5.2.6.dfsg.1-3ubuntu4.1) ...

Creating config file /etc/php5/cli/php.ini with new version

再度「$ php -v」で確認してみる。

$ php -v
PHP 5.2.6-3ubuntu4.1 with Suhosin-Patch 0.9.6.2 (cli) (built: Apr 23 2009 14:37:14)
Copyright (c) 1997-2008 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2008 Zend Technologies

これでPHPもインストール&確認完了。

今後の作業のためにも、/var/wwwディレクトリに書き込みがしやすいように以下のように設定をする。詳しくは「Ubuntu DesktopでLAMP環境を構築」内に書いておいた。

$ sudo chown -R ログインユーザID:www-data /var/www/
$ sudo usermod -g www-data ログインユーザID

次に、PHPとMySQLの接続を確認する。

phpのmysql_connect関数を使って、簡単なMySQLへの接続のスクリプトを用意する。

connect_test.php

<?php
$s = mysql_connect("servername", "username", "password") or die("接続に失敗しました");
print "接続に成功しました";
mysql_close($s);
?>

これを/var/wwwに置いてブラウザでアクセスする。

http://UbuntuのIPアドレス/connect_test.php

「接続に成功しました」が表示された。実際にDBを用意してデータのやりとりを確認したわけじゃないけれど、とりあえず繋がるってことを確認したので、これでよしとする。現段階では。

ということで、Ubuntu 9.0.4 Serverをインストールして、LAMP環境を構築完了。

追記:2009/8/12
インストール直後にシステム全体のアップデートをしていなかったので、しておく。(updateとupgrade)

システム全体のアップデート

$ sudo apt-get update

システムに存在するdebパッケージを最新のものにアップデート

$ sudo apt-get upgrade

Categories

Tag Cloud

AdMob Android Apache centos CodeIgniter EC-CUBE facebookアプリ facebookページ feed Firefox Flash google googleanalytics htaccess iPad iPhone JavaScript lamp mobile nginx ogp pear php plugin rollover rss sendmail setting smarty ssh Titanium Mobile Titanium Studio tutorial ubuntu vim VirtualBox vmware vps Windows WordPress xampp youtube さくらインターネット アクセス解析 カスタム投稿