2014-09-13 :-)
_ 午前
1100 起床 && 部屋掃除
_ area51.gr.jp サーバーを移動させた
友人宅にハウジングしてるのは変わらないんだが物理計算機から仮想計算機へ移動させることになった。それに伴い IP アドレスも変更されるので何日か前から名前設定など諸々作業していた。
- 新しいサーバーへ OS (NetBSD) をインストール
- pkgsrc 等をインストール
- 旧サーバーからデータ( /etc/rc.conf やら /usr/pkg/etc やら /home 等) をコピー
- 新サーバーを諸々設定( web, mail ... )
- 新サーバーで quickml 動作確認( Aレコードをでっち上げて動作させた )
ここまでやった段階で最後の問題は DNS を移行させることにかなりビビっていたんだけど結局それほど大変でもなかった。
作業手順はここの通り DNSサーバーの引っ越し~トラブル発生を未然に防ぐ手順とポイント~ (PDF)
- 新サーバーのゾーンデータを新サーバーへ設定
- 旧サーバーのゾーンデータを新サーバーへ設定
- レジストラのゾーンデータを新サーバーへ設定
あとは DNS 浸透()するまで待つ。
_ quickml の safe_open で死んでいた
サーバー移行に伴い
2014-09-13T21:32:23: Unknown Session Error: SystemExit: exit 2014-09-13T21:32:23: ["/usr/pkg/lib/ruby/vendor_ruby/2.0.0/quickml/utils.rb:72:in `exit'" "/usr/pkg/lib/ruby/vendor_ruby/2.0.0/quickml/utils.rb:72:in `rescue in safe_open'" "/usr/pkg/lib/ruby/vendor_ruby/2.0.0/quickml/utils.rb:62:in `safe_open'" "/usr/pkg/lib/ruby/vendor_ruby/2.0.0/quickml/core.rb:410:in `write_ml_config'" "/usr/pkg/lib/ruby/vendor_ruby/2.0.0/quickml/core.rb:141:in `init_ml_config'" "/usr/pkg/lib/ruby/vendor_ruby/2.0.0/quickml/core.rb:99:in `initialize'" "/usr/pkg/lib/ruby/vendor_ruby/2.0.0/quickml/core.rb:987:in `new'" "/usr/pkg/lib/ruby/vendor_ruby/2.0.0/quickml/core.rb:987:in `block in process_recipient'" "/usr/pkg/lib/ruby/vendor_ruby/2.0.0/quickml/core.rb:986:in `synchronize'" "/usr/pkg/lib/ruby/vendor_ruby/2.0.0/quickml/core.rb:986:in `process_recipient'" "/usr/pkg/lib/ruby/vendor_ruby/2.0.0/quickml/core.rb:1006:in `block in process'" "/usr/pkg/lib/ruby/vendor_ruby/2.0.0/quickml/core.rb:1005:in `each'" "/usr/pkg/lib/ruby/vendor_ruby/2.0.0/quickml/core.rb:1005:in `process'" "/usr/pkg/lib/ruby/vendor_ruby/2.0.0/quickml/server.rb:249:in `process'" "/usr/pkg/lib/ruby/vendor_ruby/2.0.0/quickml/server.rb:266:in `block in _start'" "/usr/pkg/lib/ruby/2.0.0/timeout.rb:66:in `timeout'" "/usr/pkg/lib/ruby/2.0.0/timeout.rb:97:in `timeout'" "/usr/pkg/lib/ruby/vendor_ruby/2.0.0/quickml/server.rb:265:in `_start'" "/usr/pkg/lib/ruby/vendor_ruby/2.0.0/quickml/server.rb:278:in `start'" "/usr/pkg/lib/ruby/vendor_ruby/2.0.0/quickml/server.rb:316:in `process_session'" "/usr/pkg/lib/ruby/vendor_ruby/2.0.0/quickml/server.rb:298:in `block in accept'"]
ここの処理
class File def self.safe_open (filename, mode = "r") begin f = File.open(filename, mode) if block_given? yield(f) f.close else return f end rescue => e STDERR.printf "%s: %s\n", $0, e.message <=ここ exit(1) end end end
これ
% ls -l /var/quickml -rwxr-xr-x 1 root quickml 614 Sep 7 12:36 foo -rwxr-xr-x 1 root quickml 12 Sep 7 12:36 foo,charset -rwxr-xr-x 1 root quickml 146 Sep 7 12:36 foo,config -rwxr-xr-x 1 root quickml 6 Sep 7 12:36 foo,count
ダサい
% chown -R quickml:quickml /var/quickml