« ServersMan@VPS開通デス。 | トップページ | これが仕分けの真実さね。 »

ServersMan@VPSの環境構築#1。

まずはscreen -Rしておこう。

そういえば、 sudo時のaudit_log_user_command(): Connection refusedについてはGoogleるとこんな記事が。

http://d.hatena.ne.jp/tullio/20080930/1222788803

見なかったことにする、もしくは最新のsudoを使うらしい。

sudo新しいのがyumで取れるみたい。
Installed Packages
Name       : sudo
Arch       : i386
Version    : 1.6.9p17
Release    : 5.el5

Available Packages
Name       : sudo
Arch       : i386
Version    : 1.6.9p17
Release    : 6.el5_4

なので更新。
$ sudo yum update sudo

Updated:
  sudo.i386 0:1.6.9p17-6.el5_4

Complete!

どれ、
$ sudo ls /root
audit_log_user_command(): Connection refused

ち、だめか。

さてもさてもコンパイラを。
Name       : gcc-c++
Arch       : i386
Version    : 4.1.2
Release    : 46.el5_4.2

$ sudo yum install gcc-c++

Installed:
  gcc-c++.i386 0:4.1.2-46.el5_4.2

Dependency Installed:
  cpp.i386 0:4.1.2-46.el5_4.2                    gcc.i386 0:4.1.2-46.el5_4.2
  glibc-devel.i386 0:2.5-42.el5_4.3              glibc-headers.i386 0:2.5-42.el5_4.3
  kernel-headers.i386 0:2.6.18-164.15.1.el5      libgomp.i386 0:4.4.0-6.el5
  libstdc++-devel.i386 0:4.1.2-46.el5_4.2

Complete!

入れた。次はRuby。

Rubyのソースを取得。1.9は職場でえらい目にあったので、学習して1.8最新版で。
ftp://ftp.ruby-lang.org/pub/ruby/1.8/ruby-1.8.7-p249.tar.bz2

rubyは/usr/local/が初期状態だけど、職場の環境(というかRHELの環境)に合わせて/usr/に入れる。
$ ./configure --prefix=/usr

まぁアレだ。並列コンパイルとかはやめておこうか。一応時間を計測。
$ time make

real    2m17.749s
user    0m51.361s
sys     0m3.532s

これも(むしろこれが)長いよね。
$ time make check

screen使っておけば切断してしまっても処理とかログとか残るので、こういう長い処理のときは有効やね。
てか、今WILLCOMで繋いでいるし! (In 横須賀線グリーン車<疲れたんだよ今日…)

1950 tests, 1343768 assertions, 2 failures, 52 errors
make: *** [test-all] Error 1

real    15m8.793s
user    5m50.252s
sys     0m9.370s

なんかエラー出てるけど、ざっと見ると

53) Error:
test_soapbodyparts(WSDL::SOAP::TestSOAPBodyParts):
Errno::EADDRINUSE: Address already in use - bind(2)

こんなのがいくつか出てるんで、たぶんhttpdが上がっている状態でport 80を奪い合った結果…かしら?
まぁそろそろいったん終了。

自宅にたどり着いたので、続きを。エラーの内容をちゃんと見る。

  1) Failure:
test_too_big_to_s(TestBignum) [./test/ruby/test_bignum.rb:103]:
<RangeError> exception expected but was
Class: <NoMemoryError>
Message: <"failed to allocate memory">
---Backtrace---
./test/ruby/test_bignum.rb:103:in `<<'
./test/ruby/test_bignum.rb:103:in `test_too_big_to_s'
./test/ruby/test_bignum.rb:103:in `test_too_big_to_s'
---------------


これはメモリ不足か。あきらめるしかないね。
あとは案の定、port 80関連。

Apache2を止める。
$ sudo /sbin/service httpd stop
Password:
audit_log_user_command(): Connection refused
Stopping httpd:                                            [  OK  ]


で、再びテスト。
$ time make check

test_soapbodyparts(WSDL::SOAP::TestSOAPBodyParts):
Errno::EADDRINUSE: Address already in use - bind(2)


エラー再び。Googleで回避策を漁る。

…!そうか、port 80はrootでないと確保できないか?

$sudo bash -c "time make check"

…改善しない。

仕方ないのでいったんrootに降りて、別の環境で.configureからやり直してみる。

今make check中だけど…エラー出てるな…。これで同じモノが出るようなら、もっときちんと状況確認すべきですな。ライブラリとか、足りてないかも知れないしね。

(や、素直にyum install rubyしろ、という噂も…)

…寝るか。明日から二人に分離しないといけないし!

…とか言っていたら、make check終わった。エラー変わらず。SOAPとか使うつもりないし、吐いているのWebrickだし、もうこのままで良いかなぁ…。

あー。エラーログ見直してみたら、なんかインストールする前から「/usr/bin/rubyが無ぇっ」とかやってるのね。
てか、READMEによるとrubyはmake testまで通れば良いんだったか…。make checkがあるとついそっちまで通したくなってしまうのだけど…。面倒だからこのままイクかー。

リモートゆえ、何かトラブった時のリカバリが面倒なので、危ない橋は渡りたくないんだけどなー<ならばyumで1.8.5を入れろよ

|

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/28934/48094858

この記事へのトラックバック一覧です: ServersMan@VPSの環境構築#1。:

コメント

ログインするの面倒だからここに書いてしまえ。

httpd起動しておこうと思ったら、こんなんが。

# service httpd start
Starting httpd: httpd: apr_sockaddr_info_get() failed for
httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
[ OK ]
最初のメッセージがちと気になるな…。起動はしているみたいだけど。

投稿: 土野魔魅 | 2010/04/15 23:39

コメントを書く