個人的な覚え書き

すぐ忘れるので。

Debian Squeeze に Rails環境構築

squeezeのインストールの続き

要りそうなものいろいろ
sudo aptitude install sqlite3 apache2 rake

こっからはgemから入れる
sudo gem install rmagick
Magick-configがない、とエラーになる

調べたらlibmagick9-devを入れればいいみたい
sudo aptitude install libmagick9-dev
何やら大量にリストが...90M消費しますが、よろしいですか、だって。。。
よくないけど仕方ないのでyでインストール。

で、もう一回トライ
sudo gem install rmagick
大量に "No definition for ***" メッセージを吐き出しながらも一応入った模様。

gem list --local
*** LOCAL GEMS ***
rmagick (2.13.1)

よかった。

次はsqlite3-rubyを入れる

sudo gem install sqlite3-ruby
エラーになる
checking for sqlite3.h... no
sqlite3.h is missing. Try 'port install sqlite3 +universal'
or 'yum install sqlite3-devel'
sqlite3.hがないらしい。
そして解決方法を提案してくれるんだけど、portかyum...。
devはこっち
sudo aptitude install libsqlite3-dev
これで成功した
sudo gem install sqlite3-ruby
確認してみる
gem list --local
*** LOCAL GEMS ***
rmagick (2.13.1)
sqlite3 (1.3.4)
sqlite3-ruby (1.3.3)

動かしてみる。今気づいたけどwebrick使うからapache入れなくてもよかった。。。

ruby script/server
エラーになる
Could not find RubyGem rack (~> 1.1.0) (Gem::LoadError)
....めんどくさ...
sudo gem install rack --version 1.1.0
これで動いた。Squeezeのインストールの簡単さに感動した後なので余計に面倒に感じた。

HDDからのデータサルベージ

CentOSを入れてたHDDからデータを抜き出したい。
必要なのは/home以下のみ。
LVMに悩まされる。

やったこと

HDDをUSBでDebianPCにつなぐ。

sudo mount /dev/sdb1 /mnt
mntにsdb1をマウント。
ここまでは問題ない。
でもsdb1はブート用のパーティションなので欲しいデータは入っていない。

sudo mount /dev/sdb2 /mnt
mount: unknown filesystem type 'LVM2_member'
sdb2に欲しいデータがあるのだが、LVMになっていてマウントできない。

LVMを扱えるようにする
sudo aptitude install lvm2

状態確認
sudo /sbin/lvm vgscan
Reading all physical volumes. This may take a while...
Found volume group "VolGroup00" using metadata type lvm2

VG有効化と確認
sudo /sbin/lvm vgchange -ay
2 logical volume(s) in volume group "VolGroup00" now active
sudo /sbin/lvm lvscan
ACTIVE '/dev/VolGroup00/LogVol00' [144.03 GiB] inherit
ACTIVE '/dev/VolGroup00/LogVol01' [4.91 GiB] inherit

確認してみる
ls /dev/VolGroup00/
LogVol00 LogVol01

マウント
sudo mount /dev/VolGroup00/LogVol00 /mnt

これで/mntから中身が見れてサルベージできる。
あ、userオプションつけてないからroot権限じゃないとできなかった。
後で変更しよう。

いろんなサイトを参考にさせてもらった。ありがたい。

Debian Squeeze インストール

CentOSを入れたばかりのノートPCが死んでしまった。
急ぎで開発環境が必要なので、EeePC 1101HA にDebianの最新stableであるsqueezeを入れる。
Lennyの時と違ってとてもスムーズになっていた。
参照
http://wiki.debian.org/DebianEeePC/Model/1101HA
インストール後に画面解像度も変更。あまりに表示がきれいでおどろく。特にフォント。
UbuntuUMPC版よりずっといい。動きも快適。さすがDebian
しかし相変わらずのAnthyの使えなさはどうなのか。いいかげん別の入力メソッドを探した方がよさそう。
あと、デスクトップ環境用のディレクトリ名が日本語なのは気持ち悪い。
コマンドラインからの指定が面倒だから嫌なんだけど。。。

次回のためにメモ

sudolistに自分のユーザを追加
#sudovi
ctl + x で終了

ブラウザは当面Iceweaselでいってみる。困るようだったらFirefoxに乗り換える。

次はrails環境の構築

sudo aptitude install ruby
以下の新規パッケージがインストールされます:
libreadline5{a} libruby1.8{a} ruby ruby1.8{a}
rubyは1.8.7がインストールされてた。
あとでrvmを入れるつもり。

sudo aptitude install rubygems
以下の新規パッケージがインストールされます:
binutils{a} build-essential{a} dpkg-dev{a} fakeroot{a} g++{a} g++-4.4{a}
gcc{a} gcc-4.4{a} libalgorithm-diff-perl{a} libalgorithm-diff-xs-perl{a}
libalgorithm-merge-perl{a} libc-dev-bin{a} libc6-dev{a} libdpkg-perl{a}
libstdc++6-4.4-dev{a} linux-libc-dev{a} make{a} manpages-dev{a}
ruby1.8-dev{a} rubygems rubygems1.8{a}
うーん、aptitudeの依存解決すごいなー。使いやすくなってる。
しかし意識してないとディスク容量をすごく消費していくかも。30GのHDDじゃなくてよかった。。
gem -v
1.3.7

CentOSでRails環境を整える

インストール後の環境整備(参考)
http://tmcosmos.org/linux/centos/co5.html

リポジトリCentOS-Base.repoの書き換え
sudo vi /etc/yum.repos.d/CentOS-Base.repo
[centosplus]のenabled=0をenabled=1に

EPELリポジトリを設定
wget http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm

sudo rpm -ivh epel-release-5-4.noarch.rpm

sudoではrpmが使えない。。。suでrootになって再実行
rpm -ivh epel-release-5-4.noarch.rpm

んで、
sudo yum update

GPG公開鍵の設定もしてくれてる模様


Ruby関連インストー

もし入ってなければ
yum install -y ruby
yum install -y ruby-devel ruby-docs ruby-ri ruby-irb ruby-rdoc

Rubygemsのインストー
の、前に現在の環境を確認
ruby -v
ruby 1.8.5 (2006-08-25) [i386-linux]

どうやらruby1.8.5とrailsはちょっと注意が必要ぽい
死ぬ程ハマったという人がいたのでメモ
http://d.hatena.ne.jp/watarum/20100901/1283324697

が、今回は適当にインストー
http://rpm.pbone.net/index.php3/stat/4/idpl/12544381/dir/centos_5/com/rubygems-1.3.1-1.el5.kb.noarch.rpm.html
ここのrubygems1.3.1をクリックしてダウンロード

sudo rpm -ivh rubygems-1.3.1-1.el5.kb.noarch.rpm
なぜか今回はsudoでrpmが使える。
なんで??

gem -v
1.3.1


動作確認
昔つくって、freezeしてあるrailsアプリを動かしてみる

ruby script/server

/usr/lib/ruby/site_ruby/1.8/rubygems.rb:636:in `report_activate_error': Could not find RubyGem rack (~> 1.1.0) (Gem::LoadError)

エラーが出る....

rackがないようなのでインストー

sudo gem install rack

もう1回
ruby script/server
/usr/lib/ruby/site_ruby/1.8/rubygems.rb:636:in `report_activate_error': RubyGem version error: rack(1.3.2 not ~> 1.1.0) (Gem::LoadError)

rackのバージョンが合っていない模様

入れ直す
sudo gem install -v=1.1.0

再確認
ruby script/server
=> Booting WEBrick
=> Rails 2.3.8 application starting on http://0.0.0.0:3000
/usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require': no such file to load -- RMagick (MissingSourceFile)

RMagickが入ってない....

gemから入れられれば楽なんだけどな
sudo gem install rmagick
...gccが入っていないことが判明...

sudo yum install gcc

ImageMagickは入っているみたい
convert -version
Version: ImageMagick 6.2.8 10/20/10 Q16 file:/usr/share/ImageMagick-6.2.8/doc/index.html

ImageMagick-develが必要らしい
sudo yum install ImageMagick-devel

確認
Magick-config --version
6.2.8

再度gemから入れようとするが
Can't install RMagick 2.13.1. You must have ImageMagick 6.4.9 or later.
というメッセージが出てエラーになる

なので1系の最終バージョンらしい1.15.17を入れる
sudo gem install rmagick --version=1.15.17

しかしエラー
他にもハマってる人がいるので参考にフォントを入れていく
http://www.katawara.com/2008/07/rmagick_with_centos5/

フォントをダウンロード
http://www.mjmwired.net/resources/files/msttcorefonts-2.0-1.noarch.rpm

sudo rpm -ivh msttcorefonts-2.0-1.noarch.rpm

リンクを作成
sudo ln -s /usr/share/fonts/msttcorefonts /usr/share/fonts/default/TrueType

これでインストールできる
sudo gem install rmagick -v 1.15.17

動作確認
ruby script/server
railsとしては動作しているがDBとの接続でエラーになっている


Sqlite関連の整備

インストー
sudo yum -y install sqlite sqlite-devel sqlite3-ruby

sudo gem install sqlite3-ruby
バージョン問題でエラーになる。もう疲れた。。。

sudo gem install sqlite3-ruby -version 1.2.4
バージョンを指定してみるが、エラー

WARNING: RubyGems 1.2+ index not found

legacyだからないらしい..
しかたないので、自分でとってくる
http://rubyforge.org/frs/?group_id=254
ここのsqlite3-ruby-1.2.4.gemをダウンロード

そして手動でインストー
sudo gem install -l sqlite3-ruby-1.2.4.gem

長かった......。疲れた.....。

Railsのオプションいろいろ

Railsは2になってるし、いろいろ忘れている。

インストール関係
バージョンを指定する
gem18 install rails --version 2.3.2

riとrdocを入れない
gem18 install rails --no-ri --no-rdoc

バージョン指定してアプリを作る
rails _2.3.2_ appname
 バージョンの前後にアンダースコアをつけるらしい

Debian-Lennyにrmagickインストール

Railsで画像を扱うことになったためrmagickインストール。

ImageMagickを入れる
sudo aptitude install imagemagick

gemでrmagick入れる
sudo gem install rmagick
--
失敗した
Can’t find Magick-config
--

足りないものを入れる
sudo aptitude install libmagick9-dev


再度インストー
sudo gem install rmagick

成功