leopardサーバー構築メモ20090124

ブログ | 2009/1/24 16:06
もう一系統もやってみたので、最終メモ

OSX 10.5.6
MySQL 5.0.75
apache2 @2.2.11
PHP 5.2.8 (+GD +pear)
mecab @0.96_0+utf8only

[OSX leopardインストールDVDから]
Leopardのインストール(言語やプリンターは最小限)
Developer Toolインストール(UNIX関係だけでいいと思う)
ソフトウェア アップデートを繰り返して最新版に

[アプリケーション]
MainMenu ...Finderの不可視ファイルを表示
http://www.santasw.com/

cotEditor ...テキストエディタ
http://www.aynimac.com/p_blog/files/article.php?...

[Dock]
ターミナル・コンソール・アクティビティモニタをDockへ

[webmin]
http://www.webmin.com/download.html
ダウンロード・解凍後アプリケーションフォルダへ。フォルダ名をwebminにでも変更しておく。
cd /Applications/webmin
sudo ./setup.sh

[MacPorts]
http://www.macports.org/
パッケージからインストール
/User/kuwa/.bash_profile というファイルを作って、
export PATH=/opt/local/bin:/opt/local/sbin/:$PATH
export MANPATH=/opt/local/man:$MANPATH

Terminalの新しいウインドウで、
sudo port -d selfupdate
sudo port -d sync

------------------------------------
最初にこれをやれば、下記MySQL, apache2, PHP5の全部が入るのかもしれません。
sudo port -d install php5 +apache2 +mysql5 +pear
------------------------------------

[MySQL]
port search mysql5
port variants mysql5
で情報を調べてから、
sudo port install -v mysql5 @5.0.75 +server

データベースの作成
sudo -u mysql mysql_install_db5

自動起動
sudo launchctl load -w /Library/LaunchDaemons/org.macports.mysql5.plist

webmin設定
/opt/local/bin/mysqlshow5
/opt/local/bin/mysqladmin5
/opt/local/bin/mysql5
/opt/local/bin/mysqldump5
/opt/local/bin/mysqlimport5
/opt/local/bin/mysqld_safe5 --user=mysql &

MySQL共有ライブラリディレクトリへのパス
/opt/local/lib/mysql5/mysql
Path to MySQL databases directory
/opt/local/var/db/mysql5

rootパスワードの設定 (webminでも設定できる)
sudo /opt/local/bin/mysqladmin5 -u root password 'パスワード'

起動と停止
起動
sudo /opt/local/bin/mysqld_safe5 --user=mysql &
終了
sudo /opt/local/bin/mysqladmin5 -u root -p shutdown
接続
cd /opt/local/bin; ./mysql5 -u root -p

とりあえず、空のmy.cnfを作成(ないと自動起動しない)
sudo touch /etc/my.cnf


[apache2のインストール]
sudo port -d install apache2

webmin設定
/opt/local/apache2
/opt/local/apache2/bin/httpd
/opt/local/apache2/bin/apachectl
/opt/local/apache2/conf/httpd.conf
/opt/local/apache2/conf/mime.types

自動起動
sudo launchctl load -w /Library/LaunchDaemons/org.macports.apache2.plist

[jpeg,freetype,libpngのインストール]
sudo port install freetype
sudo port install jpeg
sudo port install libpng

[php5] (GDはデフォルトで入っている)
sudo port -d install php5 +apache2 +mysql5 +pear

php.iniの場所
/opt/local/etc/php.ini

[PEAR]
XML_RPC
sudo /opt/local/bin/pear install -f XML_RPC
Text_Diff
sudo /opt/local/bin/pear install -f Text_Diff
Cache_Lite
sudo /opt/local/bin/pear install -f Cache_Lite
PEL 0.9.1
http://pel.sourceforge.net/
フォルダ名をpelにして、/opt/local/lib/phpへ

[crontab]
webmin設定
crontabディレクトリ
/var/cron/tabs → /var/at/tabs
ファイルの一覧を許可されたユーザ
/var/cron/allow → /var/at/allow
ファイルの一覧を許可されたユーザ
/var/cron/deny → /var/at/deny

1日1回、時間設定 (システム環境設定「日付と時刻」の自動的に設定は、Offにしておく)
/usr/sbin/ntpdate time.asia.apple.com 1>>/var/log/cron.log 2>>/var/log/cron_error.log

[システム環境設定]
ネットワークを手入力に
省エネルギー設定で、スリープしない、停電後に自動再起動。

[BIND] ...LANからドメインでアクセスできるように
ここを参照して、webminで設定
http://earlybirds.ddo.jp/namahage/inegalog/artic...

ネームサーバーの起動には、
sudo /usr/sbin/rndc-confgen -a
をやっとく必要有。

BINDの自動起動
sudo launchctl load -w /System/Library/LaunchDaemons/org.isc.named.plist

[VirtualHost]
VirtualHostを使う場合、httpd.confに
Include /opt/local/apache2/extra/httpd-vhosts.conf
を書いて、httpd-vhosts.confに記述していく。別にhttpd.confに記述でもいいようだけれど。
起動時に、
Could not reliably determine the server's fully qualified domain name, using test1.com for ServerName
こんなエラーが出る場合は、
/etc/hosts をこんな感じで記述する。
127.0.0.1  localhost
127.0.0.1  test1.com

[SSL]
MacOSXでサーバー稼業の「Web共有をhttps接続できるようにしよう-Leopard編-」を参照
http://earlybirds.ddo.jp/namahage/inegalog/artic...

cd; cd Desktop; mkdir keys
cd keys
sudo openssl genrsa -out server.key 1024
openssl req -new -key server.key -out server.csr
sudo openssl genrsa -out ca.key 1024
openssl req -new -x509 -days 365 -key ca.key -out ca.crt
echo 01 > ca-cert.srl
sudo openssl x509 -CA ca.crt -CAkey ca.key -CAserial ca-cert.srl -req -days 365 -in server.csr -out server.crt

/System/Library/OpenSSL/certs

server.key、server.crt
を移動

sudo chown -R root:wheel /System/Library/OpenSSL/certs/server.*
sudo chmod -R 644 /System/Library/OpenSSL/certs/server.*

httpd.confに
Include /opt/local/apache2/conf/extra/httpd-ssl.conf
追加して、httpd-ssl.confを編集。

[mecab]
sudo port install mecab @0.96 +utf8only
ユーザー辞書の追加
http://www.rottel.net/kuwa/34557

[Postfix]
MailServe for Leopard
http://cutedgesystems.com/software/MailServeForL...
これを買ってしまおう。Postfix Enablerが機能強化されてのleopard版。

[Jcode.pm] (awstats用)
http://openlab.ring.gr.jp/Jcode/index-j.html
ダウンロードして解凍後、
cd Jcode-*
perl Makefile.PL; make
sudo make install

perlのパス
/opt/local/bin/perl

[MySQL スレーブデータの移植(スレーブからスレーブ)]
移植元で
cd /opt/local/bin
./mysql5 -u root -p

mysql> slave stop;

ステイタス内容を念のためメモ(必要ないけど)
mysql> show slave statusG;
データのバックアップ
sudo tar cvfz /Users/kuwa/Desktop/mysql5.tar.gz -C/opt/local/var/db/ mysql5

mysql> slave start;

移植先で
mysql5.tar.gzを/opt/local/var/db/mysql5と入れ替える
sudo mv mysql5 mysql5_def
sudo mv /Users/kuwa/Desktop/mysql5 /opt/local/var/db
sudo chown -R mysql:mysql mysql5

my.cnfにスレーブ設定を記述して、移植したrelay-log.infoを削除したり
cd /opt/local/var/db/mysql5
sudo rm relay-log.info
sudo /opt/local/bin/mysqld_safe5 --user=mysql &
cd /opt/local/bin; ./mysql5 -u root -p
mysql> show slave statusG;

[MySQL マスターバックアップデータから復帰]
データを移して起動しない場合、xxx-bin.index を 削除すると動く。
cd /opt/local/var/db/mysql5
sudo mv xxx-bin.index xxx-bin.index_old

[DBの修復] ...なんだか壊れていたテーブルがあったので
起動させた状態で
sudo mysqlcheck5 --user=root --password=パスワード --all-databases --auto-repair

[sleepモードの設定] ... sleepimageファイル容量の節約
pmset -a hibernatemode 0
sudo rm /var/vm/sleepimage

[Timemachineの間隔設定]
/System/Library/LaunchDaemons/com.apple.backupd-auto.plist
の<integer>3600</integer>の数字を変更。
再起動が必要かも。

TimeMachineEditorなら再起動不要かも。
http://timesoftware.free.fr/timemachineeditor/

[ファイル共有でゲストアクセスを不可に]
/Library/Preferences/com.apple.AppleFileServer.plist
をProperty List Editor(Developer Tools)で開いて、
guestAccessをnoに

Property List Editorがない場合は、
com.apple.AppleFileServer.plistは、バイナリらしいので、ちょっと操作が必要。念のため_backupファイルを作り、更に_editも作りそれを編集する。
cd /Library/Preferences
sudo cp com.apple.AppleFileServer.plist com.apple.AppleFileServer.plist_backup
sudo cp com.apple.AppleFileServer.plist com.apple.AppleFileServer.plist_edit
sudo plutil -convert xml1 com.apple.AppleFileServer.plist_edit
としてから、Coteditorとかemacsで

<key>guestAccess</key>
<true/>
のところを
<key>guestAccess</key>
<false/>

と編集。バイナリに戻してからオリジナルを上書き。
sudo plutil -convert binary1 com.apple.AppleFileServer.plist_edit
sudo mv com.apple.AppleFileServer.plist_edit com.apple.AppleFileServer.plist
システム環境設定で、ファイル共有を一度オフにしてオン。

こんなことしなくても、共有設定で、Everyoneをアクセス不可でOKなことに気づく・・・。あるいは共有フォルダをなしにするとか。

[VPN]
iVPNを入れてしまえ。おそらくルーターでポートを開ける必要はあり。
http://www.macserve.org.uk/projects/ivpn/

・・・
port installedのメモ
 apache2 @2.2.11_0+darwin_9 (active)
 apr @1.3.3_1 (active)
 apr-util @1.3.4_1+mysql5 (active)
 autoconf @2.63_0 (active)
 autoconf213 @2.13_0 (active)
 automake @1.10.2_0 (active)
 bzip2 @1.0.5_1 (active)
 curl @7.19.3_0 (active)
 db46 @4.6.21_3 (active)
 expat @2.0.1_0 (active)
 freetype @2.3.8_0+macosx (active)
 gettext @0.17_4 (active)
 gperf @3.0.3_0 (active)
 help2man @1.36.4_1 (active)
 jpeg @6b_3 (active)
 libiconv @1.12_2 (active)
 libmcrypt @2.5.8_1 (active)
 libpng @1.2.34_0 (active)
 libtool @2.2.6a_0 (active)
 libxml2 @2.7.2_2+darwin_9 (active)
 libxslt @1.1.24_2 (active)
 m4 @1.4.12_1 (active)
 mecab @0.96_0+utf8only (active)
 mhash @0.9.9.9_0 (active)
 mysql5 @5.0.75_0+server (active)
 ncurses @5.7_0 (active)
 ncursesw @5.7_0 (active)
 openssl @0.9.8j_0 (active)
 p5-locale-gettext @1.05_0 (active)
 pcre @7.8_1 (active)
 perl5 @5.8.9_0 (active)
 perl5.8 @5.8.9_2 (active)
 php5 @5.2.8_1+apache2+macosx+mysql5+pear (active)
 pkgconfig @0.23_1 (active)
 readline @5.2.012_1 (active)
 sqlite3 @3.6.10_1 (active)
 tiff @3.8.2_2+darwin_9+macosx (active)
 zlib @1.2.3_2 (active)
▼追記 2009/4/4 21:09
PHPのインストールでエラー
On Mac OS X 10.5, tiff 3.8.2 requires Xcode 3.1 or later but you have Xcode 3.0.

Xcode 3.1.2 Developer Tools
https://connect.apple.com/cgi-bin/WebObjects/Mem...
▼追記 2009/4/30 18:50
phpのインストール前にmysqlは一度設定しておいた方がいいみたい。+serverじゃないのがインストールされた。

php.iniの場所が、
/opt/local/etc/php5/php.ini
に変更になっているかも。
▼追記 2009/8/2 19:45
事情がだいぶん変わってきてる
[MySQL]
/opt/local/var/db
/opt/local/var/run/mysql
といったディレクトリを手動で作る必要がある。
sudo mkdir /opt/local/var/db
sudo mkdir /opt/local/var/run
sudo mkdir /opt/local/var/run/mysql
sudo chown -R mysql:mysql /opt/local/var/run

その後に
sudo -u mysql mysql_install_db5
か。

[PHP]
php5.3が入ってくる。この場合、php5-gdを指定しないとGDが入らないんじゃないか。
sudo port install -d php5-gd @5.3.0 +apache2 +mysql5 +pear

重ねてやったら、
php5 @5.3.0_1+apache2+macosx+mysql5+pear (active)
php5-gd @5.3.0_0 (active)
こんな感じでGDが入った。とりあえずこれでいいことにする。
匿名 | 2015/04/28 22:57
匿名 | 2015/05/02 12:26
匿名 | 2015/05/18 18:54
匿名 | 2015/07/17 20:43
匿名 | 2015/07/23 08:41
匿名 | 2015/07/23 16:27
匿名 | 2015/10/07 16:41
匿名 | 2016/07/19 04:45
縮小 拡大

ログインしておくと、後で編集が可能です。

Rottel内コンテンツ

ユーザー一覧

Rottelとは?
利用規約
開発飲料
利用者の声
ヘルプ
close