2010/07/24

暑い

夏が本気を出してきましたね。

もはや夜に窓全開でも暑い。

座ってるだけでじんわり汗が吹き出してくる。

座椅子がたっぷり汗を吸ってる。とりあえずファブリーズで臭いはおさえているはず・・・

夜にシャワー浴びても、朝には汗で気持ち悪くなる。

んでもって朝にまたシャワー。

毎年恒例だけど効率悪い季節だ。

まあ、夏は暑い方が夏らしくて好きだけどね。

しかし、そろそろ扇風機ぐらいは出すべきだな。

2010/07/23

Realforce

仕事用のキーボードをFILCOの黒軸から、東プレのRealforceに変えた。
キータッチに不満はなかったんだけど、やっぱりオフィスでメカニカルはうるさいだろうと思ったので。
FILCOの黒軸は自宅で使おう。
自宅の白軸は売ってしまおう。つっかかる感じがするし、音がおもちゃっぽい。

で、Realforceはいいね。
さすが最高級キーボードなだけあるわ。
キータッチは黒軸に比べて柔らかいけど、打ちやすい。
奥まで押し込まなくていいので、慣れたら指にかかる負担が減るから疲れにくくなるし。
打鍵音は当然静か。これで公害をまき散らさなくてすむな。

2010/07/17

Ubuntu10.04 に NetBeans をインストール

http://ja.netbeans.org/downloads/index.html?pagelang=ja から、言語:日本語、プラットフォーム:Linux(x86/x64)で、すべて版をダウンロード。
$ sudo sh netbeans-6.9-ml-linux.sh
インストール完了。立ち上げてみると、一部の文字が文字化けしている。("ー"が□になっていたりする。)
これを直す。
cd /usr/lib/jvm/java-6-sun-1.6.20/jre/lib/fonts
$ sudo mkdir fallback
$ sudo ln -s /usr/share/fonts/truetype/takao/Takao* ./
これで fallback 用のフォントが登録されたので、再度 NetBeans を起動すると文字化けが直る。
このままだとアンチエイリアスがかからず、フォントが汚い。
$ sudo vim /usr/local/netbeans-6.9/etc/netbeans.conf
    # "netbeans_default_options=..." の最後に "-J-Dawt.useSystemAAFontSettings=on" を追加
さらに NetBeans を再起動。これで見た感じは大丈夫。

とりあえず、rails 開発に NetBeans を試すだけなんだけど。
以前使ってたときは、おおむね問題なかったけど vim の方がサクサクだからすっかり vim オンリーになっちゃったんだよな。
今ならマシンパワーが上がったので、NetBeans に移行する気になるかな?

"version_requirements is deprecated" への対応

Redmine にて Subversion と連動させた。
リポジトリをアクセスのたびに取得するのはうっとおしいので、コミットの自動取得を off にして、cron で自動取得にしている。
crontab はこんな感じ。
00 * * * * cd /var/lib/rails/redmine && ruby script/runner "Repository.fetch_changesets" -e production
で script/runner 実行時に下のような警告が出る。
./script/../config/../vendor/rails/railties/lib/rails/gem_dependency.rb:119:Warning: Gem::Dependency#version_requirements is deprecated and will be removed on or after August 2010.  Use #requirement
これが、root からメール転送されてくるので非常にうざい。
なんとかしなければ。
def requirement
  r = version_requirements     # ココ
  (r == Gem::Requirement.default) ? nil : r
end
ココを直せばいいのらしい。
というわけでコチラを参考に config/environment.rb にコードを挿入する。(20行目ぐらい)
# "version_requirements is deprecated" への対応
if Gem::VERSION >= "1.3.6"
  module Rails
    class GemDependency
      def requirement
        r = super
        (r == Gem::Requirement.default) ? nil : r
      end
    end
  end
end
これは rails のバージョンが 2.3.5 で rubygems のバージョンが 1.3.6 以降の時に起こるようだ。
今後のバージョンでは最新の 2.3.8 以降が適用されるだろうから安心か。

2010/07/16

ServerMan@VPSにてRedmine+passengerを設定

ServersMan@VPS に Redmine を導入しましょう。
passenger で動かすので、passenger の導入・設定なども

[passengerのインストール]
% yum -y install httpd-devel
% gem -y install passenger
% /usr/bin/passenger-install-apache2-module
% vi /etc/httpd/conf.d/passenger.conf
    # passenger の設定
    LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-2.2.15/ext/apache2/mod_passenger.so
    PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-2.2.15
    PassengerRuby /usr/bin/ruby

[redmine の配置]
% mkdir /var/lib/rails
% wget http://rubyforge.org/frs/download.php/71530/redmine-0.9.6.tar.gz
% tar zxf redmine-0.9.6.tar.gz
% mv redmin-0.9.6 /var/lib/rails/redmine
% ln -s /var/lib/rails/redmine/public /var/www/html/redmine

[redmine の設定]
% cd /var/lib/rails/redmine
# データベースを作る
% su - postgres
$ createdb redmine
$ exit
# database.yml を作成
% mv config/database.yml.example config/database.yml
% vi config/database.yml
    production:
      adapter: postgresql
      database: redmine
      host: localhost
      username: rails
      password: password
      encoding: utf8
% vi vendor/rails/actionpack/lib/action_controller.rb
    gem 'rack', '~> 1.1.0'   # gem 'rack', '~> 1.0.1'から変更
# マイグレーション前にセッション情報を作っておく必要がある
# 作らずにマイグレーションを行うと下記のようなエラーが出る
# A key is required to write a cookie containing the session data. Use config.action_controller.session = { :key => "_myapp_session", :secret => "some secret phrase" } in config/environment.rb
% rake config/initializers/session_store.rb
% rake db:migrate RAILS_ENV=production
# ログのローテーション設定
% vi /etc/logrotate.d/redmine
    /var/lib/rails/redmine/log/*log {
        weekly
        missingok
        notifempty
        copytruncate
    }

ServerMan@VPSにてSubversion+WebDAVを設定

ServersMan@VPS に Subversion を WebDAV 経由で利用できるように設定する。

[インストール等]
# 本体
% yum -y install subversion
# apache 用モジュール
% yum -y install mod_svn_dav

[設定]
# ベースディレクトリを作成
% mkdir /var/lib/svn
% chown apache:apache /var/lib/svn
% vi /etc/httpd/conf.d/subversion.conf
# ファイル自体はモジュールインストール時点で作成されているため、下記を追加
<Location /svn>
    DAV svn
    SVNParentPath /var/lib/svn
    SSLRequireSSL
    AuthType Basic
    AuthName "svn repository"
    AuthUserFile /etc/httpd/conf/svnusers
    Require valid-user
</Location>
# AuthUserFile を作成する
% htpasswd -c /etc/httpd/conf/svnusers admin

[apache再起動]
% /etc/init.d/httpd restart

[リポジトリの新規登録]
# サンプルとして sample リポジトリを作成
% mkdir /var/lib/svn/sample
% svnadmin create --fs-type fsfs /var/lib/svn/sample
# 所有者変更(再帰)
% chown -R apache:apache /var/lib/svn/sample

[クライアントにて trunk, branches, tags の登録]
# trunk, branches, tags を登録するだけなので temp で行う
$ cd ~/temp
$ svn co https://server/svn/sample
$ cd sample
$ mkdir trunk
$ mkdir branches
$ mkdir tags
$ svn add trunk branches tags
$ svn commit -m "add sub directories"
# 実際に開発するプロジェクトディレクトリに移動
$ cd ~/projects
$ svn co https://server/svn/sample/trunk sample

trunk, branches, tags の初期登録はこんなめんどくさい感じで本当にいいのだろうか?
サーバ側で単純に mkdir するだけでもできるのだろうか?
今度試してみよう

ServerMan@VPSにてWebDAVを設定

ServersMan@VPS に WebDAV を設定しよう。
別に Subversion ができればいいんだけど、ついでと言うことで。

[apache 実行ユーザ・グループの変更]
# デフォルトでは daemon:daemon だけど、使い慣れている apache:apache へ変更
% vi /etc/httpd/conf/httpd.conf
    User apache     # daemon から apache へ変更
    Group apache  # daemon から apache へ変更

[WebDAV設定]
% mkdir /var/www/webdav
% chown apache:apache /var/www/webdav
% vi /etc/httpd/conf.d/webdav.conf
# 中身はこんな感じ
Alias /dav/ "/var/www/webdav/"
<IfModule mod_dav.c>
    DAVMinTimeout 600
    <Location /dav>
        DAV On
        SSLRequireSSL
        AuthType Basic
        AuthName "Login WebDAV"
        AuthUserFile /etc/httpd/conf/davusers
        Require valid-user
    </Location>
</IfModule>
# AuthUserFile を作成する
% htpasswd -c /etc/httpd/conf/davusers admin

[apache再起動]
% /etc/init.d/httpd restart

ServerMan@VPSにてSSLを設定

ServerMan@VPS で Apache に SSL を設定する。
ほぼコチラのままです。ありがとうございます。

[SSLモジュールのインストール]
% yum -y install mod_ssl

[秘密鍵の作成]
% cd /etc/pki/tls/certs
% make server.key
  Enter pass phrase: password
  Verifying – Enter pass phrase: password     # 再入力
% openssl rsa -in server.key -out server.key

[公開鍵の作成]
% openssl x509 -in server.csr -out server.pem -req -signkey server.key -days 3650

[パーミッション設定]
% chmod 400 server.key
% chmod 400 server.csr
% chmod 400 server.pem

[SSL証明書の作成]
% vi /etc/httpd/conf/httpd.conf
    DocumentRoot "/var/www/html"
    SSLCertificateFile /etc/pki/tls/certs/server.pem
    SSLCertificateKeyFile /etc/pki/tls/certs/server.key

[apache 再起動]
% /etc/init.d/httpd restart

ServersMan@VPSを始めた

ServersMan@VPS で開発用に使うサーバを借りたので、環境設定。
とりあえず、Web サーバと Subversion と Redmine をセッティングするのが目的。

まずは環境設定から。
[管理者ユーザの設定]
# 管理者ユーザを追加
% useradd -G wheel admin
# 管理者ユーザにパスワードを設定
% passwd admin
# ついでに root のパスワードも変えておく
% passwd
# 一応 sudo できるように
% visudo
    admin ALL=(ALL) ALL # 追加

[細々した環境設定]
# ホスト名を設定
% vi /etc/sysconfig/network
    HOSTNAME を設定する
% /etc/init.d/network restart
# プロンプトの表示も変えたければ、DTIのコントロールパネルから停止→起動

# ロケールを変更
% vi /etc/sysconfig/i18n
    LANG="ja_JP.UTF-8"  # "en_US.UTF-8"
# 必要ないサービスの停止
% /etc/init.d/saslauthd stop
% /etc/init.d/inetd stop
% /sbin/chkconfig saslauthd off
% /sbin/chkconfig xinetd off

[ssh の設定]
% su admin
# admin ユーザで ssh の設定
$ mkdir -p ~/.ssh
$ chmod 700 ~/.ssh
$ vi ~/.ssh/authorized_keys
$ chmod 600 ~/.ssh/authorized_keys
$ exit
# sshd_config を設定
% vi /etc/ssh/sshd_config
    PermitRootLogion no        # 設定
    PasswordAuthentication no  # 設定

[ここらでいろいろインストール]
% yum -y install gcc
% yum -y install gcc-c++
% yum -y install rpm-build
% yum -y install openssl-devel
% yum -y install zlib-devel
% yum -y install zsh
% yum -y install lv

[RPMforgeの設定]
% wget http://dag.wieers.com/rpm/packages/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.i386.rpm
% wget http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt
% rpm -Uvh rpmforge-release-0.3.6-1.el5.rf.i386.rpm
% rpm -import RPM-GPG-KEY.dag.txt

[checkinstall]
% yum -y install checkinstall

[rubyのインストール]
% wget http://ftp.ruby-lang.org/pub/ruby/1.8/ruby-1.8.7-p299.tar.gz
% tar zxvf ruby-1.8.7-p299.tar.gz
% cd ruby-1.8.7-p299
% ./configure --prefix=/usr
% make
% checkinstall --fstrans=no
% rpm -Uvh /usr/src/redhat/RPMS/i386/ruby-1.8.7-p299-1.i386.rpm

[rubygems のインストール]
# RPM 作った方がいいかもしれないけど、インストールできればいいや
% wget http://production.cf.rubygems.org/rubygems/rubygems-1.3.7.tgz
% tar zxvf rubygems-1.3.7.tgz
% cd rubygems-1.3.7.tgz
% ruby setup.rb

[PostgreSQL のインストール]
# yum のリポジトリは古いので、最新を取得できるように
% wget http://yum.pgsqlrpms.org/reporpms/8.4/pgdg-centos-8.4-2.noarch.rpm
% rpm -ivh ./pgdg-centos-8.4-2.noarch.rpm
% yum -y install postgresql
% yum -y install postgresql-server
% yum -y install postgresql-devel

[PostgreSQL の設定]
% passwd postgres
% su postgres
$ export PGDATA=/var/lib/pgsql/data
$ initdb --no-locale --encoding=UTF8
$ vi /var/lib/pgsql/data/pg_hba.conf
    #host    all         all         127.0.0.1/32          trust      # コメントアウト
    host    all         all         127.0.0.1/32          password    # パスワードアクセスに変更
$ exit
# PostgreSQL をスタートする
% /etc/init.d/postgresql start
% chkconfig postgresql on
# 再度 posgres ユーザになって、パスワードの設定など
$ psql
    postgres-# alter user postgres with password 'password';
    postgres-# create role new_user with login password 'password';
    postgres-# ¥q

とりあえずここまで。
SSL, webdav, subversion の設定は後日。

2010/07/14

スペインGJ!

昨日のお休みは昼は自宅でちょこちょこ作業して、夜は友人とうまいモノを食いに。
というわけで六本木まで出て行って以前行った「いべりこ屋」へ
以前来た時は寿司と鍋だけで生ハムを食べていなかったので、今回は生ハムメイン。
でいきなり生ハムを注文すると「ワールドカップでスペインが優勝したので、生ハムかファーストドリンクをサービスしています」と言われた。
迷うことなく「生ハムで!」と即答。
てか生ハムとドリンクだと値段全然違うよ?
ドリンクなら人数分なんだろうね。
ちなみにこの生ハム、目の前で削ってくれます。
そしてこのお店はボトルキープならぬ「足キープ」が出来るらしい。
入り口に何本か名札の付いた生ハム用の足が陳列してました。
お味はもう最高!
ただでさえ生ハム好きなのに、こんないい肉の生ハムなんて、うまいに決まってる。
溶けるよー、溶けるよー
後はお寿司としゃぶしゃぶ。
しゃぶしゃぶがね、豚肉のくせに全然灰汁がでないの。ビックリ。
寿司は相変わらずの溶け具合だし。
幸せじゃ、満足じゃ
そのうちこの店のメニューを制覇したいわぁ
いやあサッカーでも食文化でもスペインはいい仕事してくれるね

2010/07/13

大人なんだから力の加減ぐらい

譜面台が壊れた。
普段ネジを固めに閉めていたら、ジョイント部分のプラスチックが割れてしまった。
おかげである程度までしか伸ばせない。
座って吹くなら大丈夫だが、立って吹くには長さが足りない。
軽くて気に入っていたのになぁ。
家にはもう一つあるけど、持ち歩くには重い。
基本的にはスタジオで借りられるからいいんだけど。
どうも心配性なのか、必要以上に強く閉めたりすることが多い。
PCのネジとかしっかり閉めすぎて、ネジ山が軽くバカになり、次開けるとき苦労したり。
カチッと鳴ればちゃんと接続されているはずなのに、もう少ししっかり押し込んでみたり。
自転車のタイヤに空気入れていたら加減がわからなくて逆にパンクさせたり。
いかんなぁ。
ちょうどよいとこになると赤いランプが緑になるようにしてほしいわ

2010/07/11

メイドカジノ

家に余ってるPCを職場でサーバとして使えるようにと金曜に暇してた友人を連れて秋葉原へ。
パーツを買って雨の中ウロウロしてると友人がメイドカジノなるお店を発見
面白そうなので入ってみる事に。
まあ普通のアミューズメントカジノでディーラーがメイドさんなんだけど、メイドである必要は全くない。
お客さんもメイド目当てじゃなく普通にギャンブルを楽しんでる。
お客さんも親切で、初めてなゲームにも色々教えてくれた。
2000円で三時間近くいたけど、チップを使い切れず預けて帰った。
メイド産業の中でも健全でリーズナブルなんじゃないかなぁ。ギャンブルにハマらなければ

2010/07/02

夏のバカンスは都会じゃ無理がある

なんか白金高輪のあたりで蛍を観賞できるイベントがあるってーので行ってきたんですよ。
蛍なんて実家をでて10数年見てないから、久々に蛍みて癒やされようと思って。
しょんぼりがっかりだよ!
せまーいプレハブみたいななかにちょろっと蛍が放たれてるだけ。
そして順番に並んだ人びとをまとめて中に入れて、ちょっと観賞して外に出る。
しかも周りが住宅街だから明るいの。
舞鶴のさらに田舎のほうで幼少の頃みた蛍はもっと輝いていた。
街灯しか明かりがない中、たくさんの蛍が飛び回っていた思い出が強すぎるんだろう。
夏に限らず、季節を感じるイベントは都会より田舎だよなぁ
あ、花火だけは都会の方が素晴らしいと思う
あと目の保養も都会の方がいいな(笑)

録画みた

そうか先週で臨場終わったんだっけ
9係も結構おもろいと思うけど、こんな感じだったっけ?
ここまで殺伐としてたっけ?
前回のシリーズはそんなにみてないけど
9係の次は相棒かなぁ