FreeNASの基本設定なら、難しくはないが、しかし、FreeNASについてないpkgを入れて設定するのはほんまにものすごく難しくて大変だった。
下記の中国サイトを見ると、FreeNASはMySQL5の対応できないのため、MySQL4の導入だと薦められてるけど。
自分の使ってるFreeNASは0.7.1だし、Googleで海外の説明サイトを見たら、ちゃんとMySQL5でも動けそうに見えてるから、ネットでほかの説明の書いてるサイトを探ってみたら、このサイトの発見した。
Installing MySQL And phpMyAdmin On FreeNAS HowtoForge – Linux Howtos and Tutorials
しかし、ちゃんと上記のにしたがって再起動したら、FreeNASのシステムは暴れて、もう入られなくなり、自分は上記の説明にはなんか欠けてるかと疑い、なんども繰り返してやってみても、同じくFreeNASに入られなくなり、めちゃくちゃだった。
なんと、下記のサイトで、ようやくphpとMySQLの導入をうまくいれた。
Low Cost NetWare Backup to Disk Using FreeNAS – Part II Novell User Communities
それから、CGIの導入なら、下記の二つサイトで参考させてもらった。
Low Cost NetWare Backup to Disk Using FreeNAS Novell User Communities
取捨選択 壱弐 – FreeNas構築覚書その3 –webサーバ編
それでは、上記のサイトをまとめて、こういう手順を語ってみる。
FreeNASのサイトで、最新のFreeNASのISOを落とし、CDにバーンする。
FreeNASの導入選択には”install ‘full’ OS on HDD + data + swap partition”或いは”install ‘full’ OS on HDD + data partition”を選ぶ。
OSには十分足りられる空間をつける。
FreeNASにはネットワークコネクションの確認。
PuTTY Download Pageでputtyをダウンロードする。(WindowsからFreeNASのShellに入られるアプリなのだ)
WinSCP::Free SFTP and FTP client for Windowsでwinscpをダウンロードする。(WindowsからSSHでrootのログインして自由にすべてファイルをいじられるアプリなのだ)
FreeNASのWebGUIでmysqlというグループもユーザーも作る。
MySQLのDB保存するためのフォルダーを作る。「僕の場合は/mnt/motokagadisk/db/mysql/だった」
FreeNASなかのShellでまたはputtyでFreeNASのShellに入って下記のコマンドを入力する。「puttyの場合なら、FreeNASのサービスにはSSHの有効して、ルーターの設定には必ず22ポートの開放して忘れず」
kaganas:/# mkdir /mnt/motokagadisk/db
kaganas:/# mkdir /mnt/motokagadisk/db/mysql
(mysql データベースためのフォルダを作る)kaganas:~# ln -s /mnt/motokagadisk/db/mysql /var/db/mysql
(デフォルトのパスを新しいパスのに指定する)kaganas:~# chown -R mysql:mysql /mnt/motokagadisk/db/mysql
(オーナーシップの設定する)kaganas:~# chmod 777 /tmp
kaganas:~# chmod 777 /var/tmp
(/tmpのファイルシステムモードのチェンジ)kaganas:~# setenv PACKAGESITE ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-7.2-release/Latest/
(パッケージサイトの環境の確認する)kaganas:~# pkg_add -r mysql50-server
(MySQL 50 サーバーとその必要ものの導入)kaganas:~# /usr/local/bin/mysql_install_db
(testデータベースの導入)kaganas:~# chown -R mysql /mnt/motokagadisk/db/mysql
kaganas:~# chgrp -R mysql /mnt/motokagadisk/db/mysql
(オーナーシップとグループのファイルパーミッションのチェンジ)kaganas:~# /usr/local/bin/mysqld_safe -user=mysql &
(loads mysql, mysql should now be running…..you may have to hit <return> after this command completes to get back to a prompt)kaganas:~# ps ax (プロセスの表示)
プロセスの表示のにはこういう似たような情報が見つかるはずだ。
/bin/sh /usr/local/bin/mysqld_safe -user=mysql /usr/local/libexec/mysqld --basedir=/usr/local --data ps ax
上記のをみれたら、MySQLはうまく動いていて、次に行く。
MySQLの"root"ユーザーのパスワードの設定する: kaganas:~# /usr/local/bin/mysqladmin -u root password root kaganas:~# /usr/local/bin/mysqladmin -u root -h freenas.local password root (mysqlユーザー"root"のパスワードを"root"にするとよくないから。 絶対それを使わずに、本当の長くパスワードをいれてください。上記のは単なるサンプルだから。)
mysqlにマシンの再起動でも自動起動したもらうため、rc.confにmysql_enable=”YES”の追加登録する。FreeNASのWebGUIにシステム>アドバンス>rc.conf:には追加ボタンを押し、上記のコマンドの入力する。
上記の済ませたら、再起動して、MySQLのちゃんと起動してるのかを確かめる。
再起動になったら、またputtyでログインして、下記のコマンドの入力する:
kaganas:~# ps ax (プロセス中のリスト表示)
表示中のにはこういう似たような情報を確認する:
/bin/sh /usr/local/bin/mysqld_safe --defaults-extra-f /usr/local/libexec/mysqld --defaults-extra-file=/var/
もしも、上記のを見れたら、MySQLはもう自動的にスタートアップから起動できてるなのだ。
MySQLにログインし、ちゃんと動いてるのかを確認する:
kaganas:~# /usr/local/bin//mysql -u root -p
(my sqlに”root”としてログインする)
mysql>use mysql;
(mysqlデータベースのにチェンジする)
mysql>show tables; (テーブルリストのを見れるはずで、 もしも、見れたら、mysqlの設定用意で稼働中で、それからtestデータベースも読み込み済みだ。)
| Tables_in_mysql | +---------------------------+ | columns_priv | | db | | func | | help_category | | help_keyword | | help_relation | | help_topic | | host | | proc | | procs_priv | | tables_priv | | time_zone | | time_zone_leap_second | | time_zone_name | | time_zone_transition | | time_zone_transition_type | | user | +---------------------------+
mysql>exit
これでMySQLの導入済みだ。
次はPHPの設定する。FreeNASデフォルトのPHPはあんまりにもシンプルすぎて、いろいろ制限がある。.
下記の手順を続ける前にちゃんとこの注意を読もう。PHPの導入はFreeNASのWebGUIを破ってしまうから、それを修正するのをちゃんとわからないと。
*****重要なステップ******
下記の手順に進む前に、”/usr/local/lib/libxml2.so.5″をwinscpでパソコンのにコピーする。
kaganas:~# setenv PACKAGESITE ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-7.2-release/Latest/ (FreeNASに探せるパッケージのパスの設定する)
kaganas:~# pkg_add -r php5
kaganas:~# pkg_add -r php5-extensions
kaganas:~# pkg_add -r php5-xmlrpc
kaganas:~# pkg_add -r php5-gettext
kaganas:~# pkg_add -r php5-mcrypt
kaganas:~# pkg_add -r php5-mysql
kaganas:~# pkg_add -r php5-mbstring
kaganas:~# pkg_add -r xmlstarlet(このパッケージも入れたら、上記の言っていたlibxml2.so.5バックアップしなくても問題なさそう)
上記のコマンドでphp5導入はFreeNAS基本システムのいくつパッケージに置き換えてしまうから、導入のあとFreeNASのWebGUIに入られなくなる、しかし、 焦らずにそれを下記のコマンドで修正しましょう:
*****重要なステップ****** kaganas:~# mv /usr/local/bin/php /usr/local/bin/php-cli kaganas:~# cp /usr/local/bin/php-cgi /usr/local/bin/php (phpをphp-cliに移動し、php-cgiのコンテンツをphpにコピーする。)
*****重要なステップ******
winscpで”libxml2.so.5″をパソコンから”/usr/local/lib/”にコピーする。
(すべてファイルを置き換えし、それから、ちゃんとWebGUIに入られるかを確かめる。)「もしも、上記のxmlstarletのパッケージでも導入したら、この手間はしなくても問題なさそうだった」
これでWebGUIはまた動けるようになる。MySQLサーバーとPHPの導入済み。
(念のため、すべても順調なのか、一度再起動して確認してほうがいい。)
この時点は、MySQLとPHPもFreeNASのに導入し、それらを管理するため、phpMyAdminを導入する必要があるだろうね。
phpMyAdminの導入:
アプリケーションの保存するためのディレクトリを作り、ディスクのにいればいいでしょうね。
kaganas:~# mkdir /mnt/motokagadisk/apps
http://sourceforge.net/projects/phpmyadmin/files/からphpMyAdminをダウンロードし、僕の場合は”phpMyAdmin-3.3.5.1-all-languages.gz”だった。
その圧縮ファイルをパソコンに解凍してから、”phpMyAdmin”のに改名し、winscpで/mnt/motokagadisk/appsのにアップロードする。
それから、phpMyAdminのデフォルトパスから新しいリンクを作る: kaganas:~# ln -s /mnt/motokagadisk/apps/phpMyAdmin/ /mnt/motokagadiskl/web/phpMyAdmin
もしも、winscpで/mnt/motokagadisk/web/に入ったら、/mnt/motokagadisk/apps/phpMyAdminにしてるリンクを見れるはずだ。
ウェブブラウザでhttp://<freenasIP>/phpMyAdmin/index.phpにアクセスし
Login as username : root
password: root
上記の写真のようにphpMyAdminに入られ、これでphpMyAdminの導入も終わり。
その次にはCGIモジュールのも導入して設定する。
kaganas:~# pkg_add -r perl (Perlのパッケージの導入する)
winscpで下記のパスのにアクセスし、いくつのところの編集する:
/etc/rc.d/websrv
最終行にある
cgi.assign = (".php" => "/usr/local/bin/php", )
に追記して
cgi.assign = (".php" => "/usr/local/bin/php", ".cgi" => "/usr/local/bin/perl" )
として、perlを動くように設定。
同ファイル上にある
index-file.names = ( "index.php", "index.html", "index.htm", "index.shtml", "default.htm" )
と書いてある行を
index-file.names = ( "index.php", "index.cgi", "index.html", "index.htm", "index.shtml", "default.htm" )
に書き換える。
後これはいらないかもしれないけれど、
static-file.exclude-extensions = ( ".pl", ".fcgi", ".php" )
の行を
static-file.exclude-extensions = ( ".cgi", ".pl", ".fcgi", ".php" )
に変更。
これで、FreeNAS+MySQL+phpMyAdmin+CGIとなりました。WordPressとかMovable Typeとかも自宅鯖このFreeNASで動かせるぞぉ。

Related posts:
















