復旧までのログ

MacでまだEMobileの設定をしてないのに、新幹線に乗っちゃったのでまとめておく。

なにはともあれ

  • XCodeをInstallDiscからインストール
  • MacPortsをダウンロード&インストール

mysqlをインストール

$ sudo port install mysql5 +server
$ sudo port install mysql5-server
###########################################################
# A startup item has been generated that will aid in
# starting mysql5-server with launchd. It is disabled
# by default. Execute the following command to start it,
# and to cause it to launch at startup:
#
# sudo launchctl load -w /Library/LaunchDaemons/org.macports.mysql5.plist
###########################################################
--->  Installing mysql5-server @5.1.43_0
******************************************************
* In order to setup the database, you might want to run
* sudo -u _mysql mysql_install_db5
* if this is a new install
******************************************************
--->  Activating mysql5-server @5.1.43_0
--->  Cleaning mysql5-server

って出てきたからやってみたら

$ sudo -u _mysql mysql_install_db5
shell-init: error retrieving current directory: getcwd: cannot access parent directories: Permission denied
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Permission denied
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Permission denied
mkdir: /opt/local/var/db: Permission denied
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Permission denied
chmod: /opt/local/var/db/mysql5: Permission denied
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Permission denied
mkdir: /opt/local/var/db: Permission denied
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Permission denied
chmod: /opt/local/var/db/mysql5/mysql: Permission denied
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Permission denied
mkdir: /opt/local/var/db: Permission denied
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Permission denied
chmod: /opt/local/var/db/mysql5/test: Permission denied
Installing MySQL system tables...
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Permission denied
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Permission denied
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Permission denied
100216  9:28:27 [Warning] Can't create test file /opt/local/var/db/mysql5/Macintosh.lower-test
100216  9:28:27 [Warning] Can't create test file /opt/local/var/db/mysql5/Macintosh.lower-test
/opt/local/libexec/mysqld: Can't change dir to '/opt/local/var/db/mysql5/' (Errcode: 13)
100216  9:28:27 [ERROR] Aborting

100216  9:28:27 [Note] /opt/local/libexec/mysqld: Shutdown complete


Installation of system tables failed!  Examine the logs in
/opt/local/var/db/mysql5 for more information.

You can try to start the mysqld daemon with:

    shell> /opt/local/libexec/mysqld --skip-grant &

and use the command line tool /opt/local/lib/mysql5/bin/mysql
to connect to the mysql database and look at the grant tables:

    shell> /opt/local/lib/mysql5/bin/mysql -u root mysql
    mysql> show tables

Try 'mysqld --help' if you have problems with paths.  Using --log
gives you a log in /opt/local/var/db/mysql5 that may be helpful.

The latest information about MySQL is available on the web at
http://www.mysql.com/.  Please consult the MySQL manual section
'Problems running mysql_install_db', and the manual section that
describes problems on your OS.  Another information source are the
MySQL email archives available at http://lists.mysql.com/.

Please check all of the above before mailing us!  And remember, if
you do mail us, you MUST use the /opt/local/lib/mysql5/bin/mysqlbug script!

ってなんだこりゃー。
ディレクトリが作れねーよっていうので、いろいろ調べてみたら/opt/local/var あたりからオーナーがpostgresで、permissionが700になってやがる。
なので、いちいちそれらを直す。たぶんTimeMachineから復旧したから?

$ sudo chown root:admin /opt/local/var
$ sudo chmod 755 /opt/local/var
$ sudo chown root:admin /opt/local/var/db
$ sudo chmod 755 /opt/local/var/db

で色々試しているうちにOKになったぽい

$ sudo -u _mysql mysql_install_db5 
shell-init: error retrieving current directory: getcwd: cannot access parent directories: Permission denied
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Permission denied
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Permission denied
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Permission denied
Installing MySQL system tables...
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Permission denied
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Permission denied
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Permission denied
OK
Filling help tables...
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Permission denied
job-working-directory: error retrieving current directory: getcwd: cannot access parent directories: Permission denied
OK

To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system

PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:

/opt/local/lib/mysql5/bin/mysqladmin -u root password 'new-password'
/opt/local/lib/mysql5/bin/mysqladmin -u root -h Macintosh.local password 'new-password'

Alternatively you can run:
/opt/local/lib/mysql5/bin/mysql_secure_installation

which will also give you the option of removing the test
databases and anonymous user created by default.  This is
strongly recommended for production servers.

See the manual for more instructions.

You can start the MySQL daemon with:
cd /opt/local ; /opt/local/lib/mysql5/bin/mysqld_safe &

You can test the MySQL daemon with mysql-test-run.pl
cd /opt/local/mysql-test ; perl mysql-test-run.pl

Please report any problems with the /opt/local/lib/mysql5/bin/mysqlbug script!

The latest information about MySQL is available at http://www.mysql.com/
Support MySQL by buying support/licenses from http://shop.mysql.com/

ちゃんと動くか確認。サーバーを起動して

$ sudo mysqld_safe

別のターミナルから

$ mysql -u root 

でアクセスできればOK

mysqlに接続するためのrubyのライブラリ

gem install mysql

gitとsvn

$ sudo port install git-core +bash_completion +svn

ruby

仕事でメインに使っているのは1.8.7系。今回からrvmを使ってインストールすることにする。

$ mkdir -p ~/.rvm/src/ && cd ~/.rvm/src && rm -rf ./rvm/ && git clone git://github.com/wayneeseguin/rvm.git && cd rvm && ./install
$ rvm install 1.8.7
$ rvm 1.8.7
$ rvm 1.8.7 --default

途中どこかで新しいターミナルで作業するように言われるので指示に従う。

必要なgemをインストール

$ gem install rails -v 2.3.4
$ gem install rails

各アプリごとにgemをインストール

$ rake gems:install

RMagic

http://rmagick.rubyforge.org/install-osx.html を参考にインストール

sudo port install tiff imagemagick +q8 +gs +wmf
gem install rmagick