<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF
 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
 xmlns="http://purl.org/rss/1.0/"
 xmlns:content="http://purl.org/rss/1.0/modules/content/"
 xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/"
 xmlns:dc="http://purl.org/dc/elements/1.1/"
 xmlns:syn="http://purl.org/rss/1.0/modules/syndication/"
 xmlns:image="http://pirl.org/rss/1.0/modules/image/"
 xmlns:admin="http://webns.net/mvcb/"
 xmlns:atom="http://www.w3.org/2005/Atom"
>
<channel rdf:about="http://blog.hansode.org/">
<title>半袖野郎 blog.hansode.org</title>
<link>http://blog.hansode.org/</link>
<description>ビールをツマミにビールを飲む
</description>
<dc:language>ja</dc:language>
<admin:generatorAgent rdf:resource="http://blog.livedoor.com/?v=2.0" />
<image rdf:resource="http://image.profile.livedoor.jp/icon/sigalrm_60.gif"/>
<atom:link rel="hub" href="http://pubsubhubbub.appspot.com" />
<items>
 <rdf:Seq>
  <rdf:li rdf:resource="http://blog.hansode.org/archives/52175431.html" />
  <rdf:li rdf:resource="http://blog.hansode.org/archives/52172427.html" />
  <rdf:li rdf:resource="http://blog.hansode.org/archives/52054775.html" />
  <rdf:li rdf:resource="http://blog.hansode.org/archives/52052018.html" />
  <rdf:li rdf:resource="http://blog.hansode.org/archives/52050547.html" />
  <rdf:li rdf:resource="http://blog.hansode.org/archives/52050347.html" />
  <rdf:li rdf:resource="http://blog.hansode.org/archives/52050343.html" />
  <rdf:li rdf:resource="http://blog.hansode.org/archives/52030469.html" />
  <rdf:li rdf:resource="http://blog.hansode.org/archives/52030108.html" />
  <rdf:li rdf:resource="http://blog.hansode.org/archives/52009455.html" />
  <rdf:li rdf:resource="http://blog.hansode.org/archives/52003714.html" />
  <rdf:li rdf:resource="http://blog.hansode.org/archives/52003240.html" />
  <rdf:li rdf:resource="http://blog.hansode.org/archives/51992397.html" />
  <rdf:li rdf:resource="http://blog.hansode.org/archives/51990233.html" />
  <rdf:li rdf:resource="http://blog.hansode.org/archives/51978737.html" />
 </rdf:Seq>
</items>
</channel>
<image rdf:about="http://image.profile.livedoor.jp/icon/sigalrm_60.gif">
 <title>半袖野郎 blog.hansode.org</title>
 <link>http://blog.hansode.org/</link>
 <url>http://image.profile.livedoor.jp/icon/sigalrm_60.gif</url>
</image>
<item rdf:about="http://blog.hansode.org/archives/52175431.html">
<title>ファイルロック処理が実装されてないログファイルを、なるべく安全にログローテート</title>
<link>http://blog.hansode.org/archives/52175431.html</link>
<description>思わず手直ししたくなるスクリプト



「ログを吐き出しているけど、ロック処理が無い…」と言う、何とも初歩的なスクリプトがあったとする。
そんなログをローテートしたい。


▼要望

 ログローテートする
 ログは全て保存し、消さない
 ファイル名に日付を付けたい


▼/...</description>
<dc:creator>sigalrm</dc:creator>
<dc:date>2010-01-25T13:55:14+09:00</dc:date>
<dc:subject>サーバ管理</dc:subject>
<content:encoded><![CDATA[<h5>思わず手直ししたくなるスクリプト</h5>


<p>
「ログを吐き出しているけど、ロック処理が無い…」と言う、何とも初歩的なスクリプトがあったとする。<br />
そんなログをローテートしたい。<br />
</p>

<p>▼要望</p>
<ul>
 <li>ログローテートする</li>
 <li>ログは全て保存し、消さない</li>
 <li>ファイル名に日付を付けたい</li>
</ul>

<p>▼/etc/logrotate.d/foo-bar</p>
<pre class="hogeri">
/var/log/foo-bar.log {
    daily
    rotate 1
    missingok
    create 0644  www-data www-data
    sharedscripts
    postrotate
      basename=/var/log/foo-bar.log
      suffix=`date -d '1 day ago' +%Y%m%d-%s`.$$
      srcfile=${basename}.1
      dstfile=${basename}.${suffix}
      if [ -f ${srcfile} -a ! -f ${dstfile} ]; then
        (mv ${srcfile} ${dstfile} && gzip ${dstfile}) || :
      fi
    endscript
}
</pre>

<p>▼手動でローテートしてみる</p>
<pre class="hogeri">
$ sudo logrotate -f /etc/logrotate.d/foo-bar
$ sudo logrotate -f /etc/logrotate.d/foo-bar

$ ls -la /var/log/foo-bar*
</pre>

<p>▼作業後確認項目</p>
<ul>
 <li>複数のログが生成されていれば良い</li>
 <li>あとは日時ローテートされている事を確認出来れば良い</li>
</ul>


<h5>後書き</h5>

<p>
スクリプトでのロック処理実装は置いておくとして、<br />
</p>

<ul>
 <li>logrotate設定ファイル内にファイル操作処理を記述出来るのは嬉しい。</li>
 <li>サーバ管理においてはシェルスクリプトを書ける事、それは大きな武器だと再認識。</li>
</ul>

<img src="http://counter2.blog.livedoor.com/c?ro=1&act=rss&output=no&id=331650&name=sigalrm&pid=52175431" width="1" height="1" />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.hansode.org/archives/52172427.html">
<title>whois.hansode.org(73/n) - Amazon EC2へ論理移転</title>
<link>http://blog.hansode.org/archives/52172427.html</link>
<description>今更ながら


昨年末にsakuraの契約が切れるので、Amazon EC2へ論理移転を行った。
これで2度目の論理移転。




ドキュメントは未来の自分へのラブレター


開発環境構築手順。
それと、以前論理移転した時に追加した手順。



必要なものは、可能な限りDebianパッケージ化...</description>
<dc:creator>sigalrm</dc:creator>
<dc:date>2010-01-23T16:00:07+09:00</dc:date>
<dc:subject>Domain Name Hacks</dc:subject>
<content:encoded><![CDATA[<h5>今更ながら</h5>

<p>
昨年末にsakuraの契約が切れるので、Amazon EC2へ論理移転を行った。<br />
これで2度目の論理移転。<br />
</p>
<br />


<h5>ドキュメントは未来の自分へのラブレター</h5>

<p>
開発環境構築手順。<br />
それと、以前論理移転した時に追加した手順。<br />
</p>

<p>
必要なものは、可能な限りDebianパッケージ化してある。<br />
すると、3つだけで環境構築が終わる。<br />
Debianだと楽でイイね。<br />
</p>

<pre class="hogeri">
$ sudo dpkg --set-selections < ./dpkg.list
$ sudo apt-get install -f
$ svn checkout [ repos uri ]
</pre>

<p>
あとはDBのデータ同期、/etcの設定(apache,mysql)<br />
</p>

<br />

<h5>Amazon EC2で更にオイシイ</h5>

<p>
Debianパッケージ化してあるおかげで環境構築は楽になる。<br />
Amazon EC2だと、仮想マシンイメージを丸々バックアップが可能だ。<br />
</p>

<p>
仮想マシンイメージをプライベートイメージとして登録しておけば、<br />
レプリカを手軽にいくつでも起動出来る。<br />
</p>

<p>
これ以降、ElasticfoxなどでプライベートAMI指定して起動するだけ。<br />
apt-getを実行しなくて良い。<br />
</p>

<img src="http://counter2.blog.livedoor.com/c?ro=1&act=rss&output=no&id=331650&name=sigalrm&pid=52172427" width="1" height="1" />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.hansode.org/archives/52054775.html">
<title>作業PCをWindows 7にした</title>
<link>http://blog.hansode.org/archives/52054775.html</link>
<description>Windows 7 Professionalposted with amazlet at 09.10.26マイクロソフト (2009-10-22)売り上げランキング: 79Amazon.co.jp で詳細を見る

Windows Vista ⇒ Windows 7


すっきりさっぱりクリーンインストール。



大したアプリケーションをインストールしているわ...</description>
<dc:creator>sigalrm</dc:creator>
<dc:date>2009-10-26T16:25:43+09:00</dc:date>
<dc:subject>独り言</dc:subject>
<content:encoded><![CDATA[<div class="amazlet-box" style="margin-bottom:0px;"><div class="amazlet-image" style="float:left;"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/B002NH4M3E/kialpi-22/ref=nosim/" name="amazletlink" target="_blank"><img src="http://ecx.images-amazon.com/images/I/41oOsM9e1dL._SL160_.jpg" alt="Windows 7 Professional" style="border: none;" /></a></div><div class="amazlet-info" style="float:left;margin-left:15px;line-height:120%"><div class="amazlet-name" style="margin-bottom:10px;line-height:120%"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/B002NH4M3E/kialpi-22/ref=nosim/" name="amazletlink" target="_blank">Windows 7 Professional</a><div class="amazlet-powered-date" style="font-size:7pt;margin-top:5px;font-family:verdana;line-height:120%">posted with <a href="http://www.amazlet.com/browse/ASIN/B002NH4M3E/kialpi-22/ref=nosim/" title="Windows 7 Professional" target="_blank">amazlet</a> at 09.10.26</div></div><div class="amazlet-detail">マイクロソフト (2009-10-22)<br />売り上げランキング: 79<br /></div><div class="amazlet-link" style="margin-top: 5px"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/B002NH4M3E/kialpi-22/ref=nosim/" name="amazletlink" target="_blank">Amazon.co.jp で詳細を見る</a></div></div><div class="amazlet-footer" style="clear: left"></div></div>

<h4>Windows Vista ⇒ Windows 7</h4>

<p>
すっきりさっぱりクリーンインストール。<br />
</p>

<p>
大したアプリケーションをインストールしているわけでもなく、<br />
こだわり設定をしているわけではない。<br />
</p>


<p>
本を読みながら環境構築。<br />
いろいろやりつつ、2時間で終了。<br />
</p>

<p>
今の所、快適そのもの。
</p>

<img src="http://counter2.blog.livedoor.com/c?ro=1&act=rss&output=no&id=331650&name=sigalrm&pid=52054775" width="1" height="1" />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.hansode.org/archives/52052018.html">
<title>[Wakame]Wakameの開発にご協力くださる方を探しています</title>
<link>http://blog.hansode.org/archives/52052018.html</link>
<description>■急募：&quot;Wakame 1.0&quot;開発協力者！株式会社あくしゅでは&quot;Wakame 1.0&quot;の開発者を募集しています！

Wakameは次世代データセンターには欠かせないクラウドコントローラとして、今後大幅に機能拡張していきます。
Rubyでミドルウェアを開発してみたいという意欲あふれる方は...</description>
<dc:creator>sigalrm</dc:creator>
<dc:date>2009-10-22T14:50:31+09:00</dc:date>
<dc:subject>Wakame</dc:subject>
<content:encoded><![CDATA[<h4>■急募："Wakame 1.0"開発協力者！</h4><p>株式会社あくしゅでは"Wakame 1.0"の開発者を募集しています！<br>

Wakameは次世代データセンターには欠かせないクラウドコントローラとして、今後大幅に機能拡張していきます。<br>
Rubyでミドルウェアを開発してみたいという意欲あふれる方は是非お問い合わせください。</p><h4>■仕事内容</h4><p><ol><li>"Wakame 1.0"の使用目的を拡大するために、ミドルウェア部分の機能拡張を実施</li><li>"Wakame 1.0"を使いやすくするために、GUIの追加開発を実施</li><li>"Wakame 1.0"を分かりやすくするために、ドキュメントの整備を実施</li></ol>上記の内、得意なもの１つ以上をお願いすることになります。</p><h4>■募集要項</h4><p><ul><li>下記(A)(B)(C)の知識・技術セットをいずれかお持ちの方<ol type="A"><li>Ruby, 現在のWakame, メッセージング, 並列処理, Xenなどのハイパーバイザの知識</li><li>JavaScript, XHTML, Ruby on Rails, http通信(REST), ユーザビリティ, 画面設計の知識</li><li>HTML, ドキュメンテーション</li></ol></li><li>システムの設計が得意で、オブジェクト指向を理解している方</li><li>人とのコミュニケーションが好きな明るい方</li><li>期間：2009年11月初旬～2010年3月下旬</li></ul></p><h4>■条件</h4><p>応募期限は10/26(月)までです。<br>

それ以降10/30(金)までに一度仕事内容や関わり方をミーティング形式でご相談させていただきましてその後、弊社基準で判断してからお見積もりをお願いします。</p><h4>■一言</h4><p>設立３年目の若い会社です。<br>
来年からは「世界のクラウドソリューションを」をテーマに事業展開していく予定です。<br>
そのために今後は弊社で開発している"Wakame"を機能拡張し、より高度なプロダクトへと躍進させていきます。<br>
あなたもぜひ、この新しいチャンスに乗ってみませんか？</p><h4>■連絡先</h4><p>Twitter: <a href="http://twitter.com/axsh_co_ltd">@axsh_co_ltd</a><br>E-mail: r_at_axsh_dot_net (_at_と_dot_は適宜文字列を置換してください)</p><br>

<img src="http://counter2.blog.livedoor.com/c?ro=1&act=rss&output=no&id=331650&name=sigalrm&pid=52052018" width="1" height="1" />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.hansode.org/archives/52050547.html">
<title>DHCP―ホスト設定サーバの設定・運用・管理</title>
<link>http://blog.hansode.org/archives/52050547.html</link>
<description>DHCP―ホスト設定サーバの設定・運用・管理posted with amazlet at 09.10.20江面 敦 矢吹 道郎 テクノプレス 売り上げランキング: 295608Amazon.co.jp で詳細を見る

ISC DHCPの解説本


DHCPについて書かれた貴重な一冊。
2003年の出版と言う事が手伝ってか、本屋で見...</description>
<dc:creator>sigalrm</dc:creator>
<dc:date>2009-10-20T09:40:13+09:00</dc:date>
<dc:subject>本</dc:subject>
<content:encoded><![CDATA[<div class="amazlet-box" style="margin-bottom:0px;"><div class="amazlet-image" style="float:left;"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4924998613/kialpi-22/ref=nosim/" name="amazletlink" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51drq2S1LRL._SL160_.jpg" alt="DHCP―ホスト設定サーバの設定・運用・管理" style="border: none;" /></a></div><div class="amazlet-info" style="float:left;margin-left:15px;line-height:120%"><div class="amazlet-name" style="margin-bottom:10px;line-height:120%"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4924998613/kialpi-22/ref=nosim/" name="amazletlink" target="_blank">DHCP―ホスト設定サーバの設定・運用・管理</a><div class="amazlet-powered-date" style="font-size:7pt;margin-top:5px;font-family:verdana;line-height:120%">posted with <a href="http://www.amazlet.com/browse/ASIN/4924998613/kialpi-22/ref=nosim/" title="DHCP―ホスト設定サーバの設定・運用・管理" target="_blank">amazlet</a> at 09.10.20</div></div><div class="amazlet-detail">江面 敦 矢吹 道郎 <br />テクノプレス <br />売り上げランキング: 295608<br /></div><div class="amazlet-link" style="margin-top: 5px"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4924998613/kialpi-22/ref=nosim/" name="amazletlink" target="_blank">Amazon.co.jp で詳細を見る</a></div></div><div class="amazlet-footer" style="clear: left"></div></div>

<h4>ISC DHCPの解説本</h4>

<p>
DHCPについて書かれた貴重な一冊。<br />
2003年の出版と言う事が手伝ってか、本屋で見かける事は少ない。<br />
</p>

<p>
少しこだわった運用・管理をしたい場合の設定事例が紹介されている。<br />
</p>

<p>▼目次より</p>
<ul>
 <li>DHCPについて</li>
 <li>ISC DHCP</li>
 <li>DHCPサーバの設定-準備編-</li>
 <li>DHCPサーバの設定-超基本編-</li>
 <li>DHCPサーバの設定-基本編-</li>
 <li>DHCPサーバの設定-応用編-</li>
 <li>設定例</li>
</ul>

<p>
最近ではISC DHCPではなく、dnsmasqが使われ始めているのだろうけど、<br />
まだまだISC DHCPが使われる場面はあるので、手元に置いておきたい一冊。<br />
</p>

<img src="http://counter2.blog.livedoor.com/c?ro=1&act=rss&output=no&id=331650&name=sigalrm&pid=52050547" width="1" height="1" />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.hansode.org/archives/52050347.html">
<title>検証のため、どうにかしてCPU使用率を高める</title>
<link>http://blog.hansode.org/archives/52050347.html</link>
<description>「CPU使用率を高めたい」


隣に座っている人に質問された。
何をやっているのか見てみると、whileループでechoさせていた。


▼例

while :; do echo asdfasdf; done



foregroundで実行しているではないか。
backgroundで複数実行する事を伝えてみたけど、...</description>
<dc:creator>sigalrm</dc:creator>
<dc:date>2009-10-20T01:15:18+09:00</dc:date>
<dc:subject>ほげり道</dc:subject>
<content:encoded><![CDATA[<h4>「CPU使用率を高めたい」</h4>

<p>
隣に座っている人に質問された。<br />
何をやっているのか見てみると、whileループでechoさせていた。<br />
</p>

<p>▼例</p>
<pre class="hogeri">
while :; do echo asdfasdf; done
</pre>

<p>
foregroundで実行しているではないか。<br />
backgroundで複数実行する事を伝えてみたけど、伝わらなかった。<br />
キーボードを拝借。<br />
</p>

<pre class="hogeri">
$ cat &gt;&gt;EOS &lt; perf.sh
#!/bin/sh
while :; do echo asdfasdf; done
EOS
$ chmod +x pref.sh
$ ./pref.sh &amp;
</pre>

<p>
いくつか実行したら95%くらいCPUを使うようになっていた。<br />
</p>

<p>
forkしすぎに注意。<br />
何事も程々に。<br />
</p>

<img src="http://counter2.blog.livedoor.com/c?ro=1&act=rss&output=no&id=331650&name=sigalrm&pid=52050347" width="1" height="1" />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.hansode.org/archives/52050343.html">
<title>そういえば、しばらく書いてないな</title>
<link>http://blog.hansode.org/archives/52050343.html</link>
<description>書かない癖がついてしまった

反省してます。
</description>
<dc:creator>sigalrm</dc:creator>
<dc:date>2009-10-20T01:00:19+09:00</dc:date>
<dc:subject>独り言</dc:subject>
<content:encoded><![CDATA[<h4>書かない癖がついてしまった</h4>

<p>反省してます。</p>

<img src="http://counter2.blog.livedoor.com/c?ro=1&act=rss&output=no&id=331650&name=sigalrm&pid=52050343" width="1" height="1" />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.hansode.org/archives/52030469.html">
<title>図解でわかるLinux環境設定のすべて</title>
<link>http://blog.hansode.org/archives/52030469.html</link>
<description>図解でわかるLinux環境設定のすべてposted with amazlet at 09.09.20西村 めぐみ 日本実業出版社 売り上げランキング: 16140Amazon.co.jp で詳細を見る

こんな本を探していた


Linuxの起動とinitの解説が書かれた本を探していた。
いくつかの本屋で探してみたけど、...</description>
<dc:creator>sigalrm</dc:creator>
<dc:date>2009-09-20T23:20:37+09:00</dc:date>
<dc:subject>本</dc:subject>
<content:encoded><![CDATA[<div class="amazlet-box" style="margin-bottom:0px;"><div class="amazlet-image" style="float:left;"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4534037945/kialpi-22/ref=nosim/" name="amazletlink" target="_blank"><img src="http://ecx.images-amazon.com/images/I/5154ZGDPGKL._SL160_.jpg" alt="図解でわかるLinux環境設定のすべて" style="border: none;" /></a></div><div class="amazlet-info" style="float:left;margin-left:15px;line-height:120%"><div class="amazlet-name" style="margin-bottom:10px;line-height:120%"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4534037945/kialpi-22/ref=nosim/" name="amazletlink" target="_blank">図解でわかるLinux環境設定のすべて</a><div class="amazlet-powered-date" style="font-size:7pt;margin-top:5px;font-family:verdana;line-height:120%">posted with <a href="http://www.amazlet.com/browse/ASIN/4534037945/kialpi-22/ref=nosim/" title="図解でわかるLinux環境設定のすべて" target="_blank">amazlet</a> at 09.09.20</div></div><div class="amazlet-detail">西村 めぐみ <br />日本実業出版社 <br />売り上げランキング: 16140<br /></div><div class="amazlet-link" style="margin-top: 5px"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4534037945/kialpi-22/ref=nosim/" name="amazletlink" target="_blank">Amazon.co.jp で詳細を見る</a></div></div><div class="amazlet-footer" style="clear: left"></div></div>

<h4>こんな本を探していた</h4>

<p>
Linuxの起動とinitの解説が書かれた本を探していた。<br />
いくつかの本屋で探してみたけど、丁度良い本見当たらなかった。<br />
そして、ついに見つけたのがこの一冊。<br />
</p>

<p>
Linuxをある程度使った人向けの一冊だ。<br />
ApacheやMySQLに関する内容は載っていない。<br />
そもそも、載っていなくていい。<br />
</p>

<p>
他とは違う一冊に仕上がっている。<br />
</p>

<ul>
 <li>設定のしくみ</li>
 <li>initとは</li>
 <li>定期実行って?</li>
 <li>マウント</li>
 <li>ext2とext3</li>
 <li>ReiserFS</li>
 <li>autofs</li>
 <li>NFS/Samba/smbfs</li>
 <li>ユーザー管理</li>
 <li>シェルオプション</li>
 <li>環境変数・シェル変数</li>
 <li>日本語環境</li>
 <li>フォント</li>
 <li>XDMとstartx</li>
 <li>Xサーバ</li>
 <li>ネットワークの基本</li>
 <li>inetd/xinetd</li>
 <li>SSH</li>
 <li>ブートローダ</li>
 <li>LILO/GRUB</li>
 <li>カーネル再構築</li>
</ul>

<img src="http://counter2.blog.livedoor.com/c?ro=1&act=rss&output=no&id=331650&name=sigalrm&pid=52030469" width="1" height="1" />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.hansode.org/archives/52030108.html">
<title>whois.hansode.org(72/n) - whois情報3000万レコード弱</title>
<link>http://blog.hansode.org/archives/52030108.html</link>
<description>5文字(.com|.net)のクロールが終わった


whois.hansode.org(71/n) - whois情報1000万レコード超え から約3ヶ月。
ようやく5文字(.com|.net)のクロールが終わった。


▼2009/09/20 12:55現在

只今の蓄積WHOIS情報数：
28,655,964 WHOIS!!



さて、次は何を...</description>
<dc:creator>sigalrm</dc:creator>
<dc:date>2009-09-20T13:00:56+09:00</dc:date>
<dc:subject>Domain Name Hacks</dc:subject>
<content:encoded><![CDATA[<h4>5文字(.com|.net)のクロールが終わった</h4>

<p>
<a href="http://blog.hansode.org/archives/51971130.html">whois.hansode.org(71/n) - whois情報1000万レコード超え </a>から約3ヶ月。<br />
ようやく<strong>5文字(.com|.net)</strong>のクロールが終わった。<br />
</p>

<p>▼2009/09/20 12:55現在</p>
<blockquote>
只今の蓄積WHOIS情報数：<br />
28,655,964 WHOIS!!<br />
</blockquote>

<p>
さて、次は何をしようか。<br />
</p>

<img src="http://counter2.blog.livedoor.com/c?ro=1&act=rss&output=no&id=331650&name=sigalrm&pid=52030108" width="1" height="1" />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.hansode.org/archives/52009455.html">
<title>10分で巨大ストレージを調達する</title>
<link>http://blog.hansode.org/archives/52009455.html</link>
<description>概要

 s3fsを使い、Amazon S3をファイルシステム扱いする



前提条件

 Amazon Web Serviceのアカウントを持っている事
 s3foxなどでAmazon S3にバケットを作っておく事


作業環境

 Ubuntu(fuseを使える環境であれば良い)
 Amazon S3
 s3fs


作業内...</description>
<dc:creator>sigalrm</dc:creator>
<dc:date>2009-08-20T14:25:34+09:00</dc:date>
<dc:subject>AWS</dc:subject>
<content:encoded><![CDATA[<h4>概要</h4>
<ul>
 <li>s3fsを使い、Amazon S3をファイルシステム扱いする</li>
</ul>
<br />

<h4>前提条件</h4>
<ul>
 <li>Amazon Web Serviceのアカウントを持っている事</li>
 <li>s3foxなどでAmazon S3にバケットを作っておく事</li>
</ul>

<h4>作業環境</h4>
<ul>
 <li><a href="http://www.ubuntulinux.jp/">Ubuntu</a>(fuseを使える環境であれば良い)</li>
 <li><a href="http://aws.amazon.com/s3/">Amazon S3</a></li>
 <li><a href="http://code.google.com/p/s3fs/">s3fs</a></li>
</ul>

<h4>作業内容</h4>

<p>■UNIXグループ設定</p>

<ul>
 <li>AWSのキーを/etc/passwd-s3fsに設定(記述)する必要がある
 <ul>
   <li>一般ユーザーに見せたくないので、特定アカウント/特定グループにのみ公開する
    <ul>
     <li>特定ユーザー名: ubuntu</li>
     <li>特定グループ名: s3fs</li>
    </ul>
   </li>
 </ul>
 </li>
 <li>⇒と言う事で、グループ設定する</li>
</ul>
<br />

<p>▼グループ名「s3fs」存在有無を確認</p>
<pre class="hogeri">
$ getent group s3fs
</pre>

<p>▼「s3fs」グループ作成</p>
<pre class="hogeri">
$ sudo addgroup --system s3fs
</pre>

<p>▼「s3fs」グループが作成された事を確認</p>
<pre class="hogeri">
$ getent group s3fs
s3fs:x:120:
</pre>

<p>▼ubuntuを「fuse」と「s3fs」に追加</p>
<pre class="hogeri">
$ sudo vigr
</pre>

<p>▼ubuntuが「fuse」と「s3fs」に追加された事を確認</p>
<pre class="hogeri">
$ getent group fuse
fuse:x:106:ubuntu
$ getent group s3fs
s3fs:x:120:ubuntu
</pre>

<p>▼s3fsビルド環境整理</p>
<p>
必要に応じてパッケージをインストール。<br />
今回は下記パッケージが不足していたのでインストール。<br />
</p>
<pre class="hogeri">
$ sudo apt-get install libcurl4-gnutls-dev
$ sudo apt-get install libxml2-dev
$ sudo apt-get install libfuse-dev
</pre>

<p>▼s3syncをビルド</p>
<pre class="hogeri">
$ wget http://s3fs.googlecode.com/files/s3fs-r177-source.tar.gz
$ tar zxvf s3fs-r177-source.tar.gz
$ cd s3fs
$ make
</pre>

<p>▼s3fsをインストールし、setgid設定</p>
<pre class="hogeri">
$ sudo install -m 2755 -o root -g s3fs ./s3fs /usr/local/bin/s3fs
$ ls -la /usr/local/bin/s3fs
-rwxr-sr-x 1 root s3fs 697215 Aug 19 07:17 /usr/local/bin/s3fs
</pre>

<p>▼/etc/passwd-s3fs作成</p>

<pre class="hogeri">
$ sudo vi /etc/passwd-s3fs
---
accesskey_id:secret_accesskey_id の形式で記述
---
</pre>

<p>▼s3fsグループのみ公開する</p>
<pre class="hogeri">
$ sudo chown root:s3fs /etc/passwd-s3fs
$ sudo chmod 640 /etc/passwd-s3fs
</pre>

<br />


<p>■実際にマウントしてみる</p>
<ul>
 <li>S3バケット名: s3fs-sandbox-bucket</li>
 <li>マウントポイント: /home/ubuntu/mnt-s3fs</li>
</ul>

<p>▼ユーザー確認</p>
<pre class="hogeri">
$ whoami
ubuntu
</pre>

<p>▼マウントポイント作成</p>
<pre class="hogeri">
$ cd
$ pwd
/home/ubuntu
$ mkdir mnt-s3fs
</pre>

<p>▼Amazon S3をs3fsでマウント</p>
<pre class="hogeri">
$ s3fs s3fs-sandbox-bucket mnt-s3fs/
</pre>

<p>▼マウント状況を確認</p>
<pre class="hogeri">
$ mount | grep s3fs
s3fs on /home/ubuntu/mnt-s3fs type fuse.s3fs (rw,nosuid,nodev,user=ubuntu)
</pre>

<p>▼dfを実行してみる</p>
<pre class="hogeri">
$ df /home/ubuntu/mnt-s3fs
Filesystem           1K-blocks      Used Available Use% Mounted on
s3fs                 274877906944         0 274877906944   0% /home/ubuntu/mnt-s3fs
$ df -h /home/ubuntu/mnt-s3fs
Filesystem            Size  Used Avail Use% Mounted on
s3fs                  256T     0  256T   0% /home/ubuntu/mnt-s3fs
</pre>
<p>
dfには256Tとして認識されている。<br />
Amazon S3の容量に上限は無い。<br />
いつまでもディスク使用率「0%」となるはずだ。<br />
</p>

<p>▼lsしてみる</p>
<pre class="hogeri">
$ cd mnt-s3fs
$ ls -la
total 0
</pre>

<p>▼ファイル生成</p>
<pre class="hogeri">
$ touch foo.txt
$ ls -la
total 1
-rw-r--r-- 1 ubuntu ubuntu 0 Aug 20 03:14 foo.txt
</pre>

<pre class="hogeri">
$ date | tee date.txt
Thu Aug 20 04:31:22 UTC 2009
$ ls -la date.txt
-rw-r--r-- 1 ubuntu ubuntu 29 Aug 20 04:31 date.txt
$ cat date.txt
Thu Aug 20 04:31:22 UTC 2009
</pre>

<pre class="hogeri">
$ df /home/ubuntu/mnt-s3fs
Filesystem           1K-blocks      Used Available Use% Mounted on
s3fs                 274877906944         0 274877906944   0% /home/ubuntu/mnt-s3fs
</pre>
<p>
極小ファイルとは言え、ファイルを生成した。<br />
しかし、使用サイズに変化が見られない。<br />
Amazon S3の無制限を表している。<br />
</p>

<br />

<h4>あとがき</h4>

<ul>
 <li>Amazon S3をファイルシステムとして扱えるのが面白い</li>
 <li>手元の環境に巨大ストレージを構築可能となってしまった</li>
 <li>しかも、共有ストレージとして利用が可能だ。遅いNFSのようなもの。</li>
 <li>リアルタイム性が求められる場面、更新頻度が高いファイル(例えばアクセスログ)にはs3fs(Amazon S3)は向かない。</li>
</ul>

<p>
Amazon S3の特性・性質を十分理解した上でs3fsを上手に使えば、様々な利用方法が考えられる。<br />
s3fsは面白いので、色々とハックしてみる予定。<br />
</p>

<img src="http://counter2.blog.livedoor.com/c?ro=1&act=rss&output=no&id=331650&name=sigalrm&pid=52009455" width="1" height="1" />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.hansode.org/archives/52003714.html">
<title>4時間半熟睡法</title>
<link>http://blog.hansode.org/archives/52003714.html</link>
<description>4時間半熟睡法posted with amazlet at 09.08.12遠藤 拓郎 フォレスト出版 売り上げランキング: 78Amazon.co.jp で詳細を見る


本屋でタイトルが気になったので手にとって立ち読み


 オススメ睡眠時間帯は「0時～6時」
 
  人間の身体にとって最適な睡眠時間帯
  ...</description>
<dc:creator>sigalrm</dc:creator>
<dc:date>2009-08-12T09:05:03+09:00</dc:date>
<dc:subject>本</dc:subject>
<content:encoded><![CDATA[<div class="amazlet-box" style="margin-bottom:0px;"><div class="amazlet-image" style="float:left;"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4894513544/kialpi-22/ref=nosim/" name="amazletlink" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51K0ZJhz9nL._SL160_.jpg" alt="4時間半熟睡法" style="border: none;" /></a></div><div class="amazlet-info" style="float:left;margin-left:15px;line-height:120%"><div class="amazlet-name" style="margin-bottom:10px;line-height:120%"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4894513544/kialpi-22/ref=nosim/" name="amazletlink" target="_blank">4時間半熟睡法</a><div class="amazlet-powered-date" style="font-size:7pt;margin-top:5px;font-family:verdana;line-height:120%">posted with <a href="http://www.amazlet.com/browse/ASIN/4894513544/kialpi-22/ref=nosim/" title="4時間半熟睡法" target="_blank">amazlet</a> at 09.08.12</div></div><div class="amazlet-detail">遠藤 拓郎 <br />フォレスト出版 <br />売り上げランキング: 78<br /></div><div class="amazlet-link" style="margin-top: 5px"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4894513544/kialpi-22/ref=nosim/" name="amazletlink" target="_blank">Amazon.co.jp で詳細を見る</a></div></div><div class="amazlet-footer" style="clear: left"></div></div>
<br />

<h4>本屋でタイトルが気になったので手にとって立ち読み</h4>

<ul>
 <li>オススメ睡眠時間帯は「0時～6時」
 <ul>
  <li>人間の身体にとって最適な睡眠時間帯</li>
  <li>例えば寝る時間はずれても、起きる時間は6時にする</li>
 </ul>
 </li>
 <li>昼寝するなら「15分」</li>
</ul>

<p>
全体をじっくり読んでない。<br />
気になる項目をつまみ食いした程度。<br />
</p>
<br />
<br />

<h4>自分の実生活では…?</h4>

<p>
今の自分の生活がちょうど当てはまっている。<br />
</p>

<ul>
 <li>平日は「6時起き」</li>
 <li>平均睡眠時間は「4時間～5時間」</li>
 <li>昼間眠い時は15分程度の仮眠</li>
</ul>

<p>
何かを参考にした訳ではない。<br />
これは自分の体調と向き合い、そして、スケジュールを調整して辿り着いた結果。<br />
</p>

<p>
今の生活は、<br />
身体と仕事のパフォーマンスに凄く良い結果をもたらしてくれている。<br />
</p>

<p>
体調を改善したいと思っている人は、<br />
一度、睡眠を見つめ直してみると良いかも知れない。<br />
</p>

<img src="http://counter2.blog.livedoor.com/c?ro=1&act=rss&output=no&id=331650&name=sigalrm&pid=52003714" width="1" height="1" />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.hansode.org/archives/52003240.html">
<title>ランニングを始めた</title>
<link>http://blog.hansode.org/archives/52003240.html</link>
<description>下半身を強化しよう


上半身はボルダリングのおかげで大分鍛えられた気がする。
下半身はどうだろうか…？



普段アンクルウェイトをつけていても、持久力不足を感じる。
持久力アップ目的でランニングを始める事にした。



この季節は汗の量が物凄く、シャ...</description>
<dc:creator>sigalrm</dc:creator>
<dc:date>2009-08-11T16:35:31+09:00</dc:date>
<dc:subject>体調管理</dc:subject>
<content:encoded><![CDATA[<h4>下半身を強化しよう</h4>
<br />
<p>
上半身はボルダリングのおかげで大分鍛えられた気がする。<br />
下半身はどうだろうか…？<br />
</p>

<p>
普段アンクルウェイトをつけていても、持久力不足を感じる。<br />
持久力アップ目的でランニングを始める事にした。<br />
</p>

<p>
この季節は汗の量が物凄く、シャツが汗でビッショリになる。<br />
</p>

<p>
我ながら、どこを目指しているのか良くわからない。<br />
ただ１つ言える事は、「身体を動かす事が気持ち良い」と言う事。<br />
</p>
<br />

<div class="amazlet-box" style="margin-bottom:0px;"><div class="amazlet-image" style="float:left;"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4774790222/kialpi-22/ref=nosim/" name="amazletlink" target="_blank"><img src="http://ecx.images-amazon.com/images/I/5153devuPlL._SL160_.jpg" alt="今日からはじめるランニング (SPORTS GREEN BACKS)" style="border: none;" /></a></div><div class="amazlet-info" style="float:left;margin-left:15px;line-height:120%"><div class="amazlet-name" style="margin-bottom:10px;line-height:120%"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4774790222/kialpi-22/ref=nosim/" name="amazletlink" target="_blank">今日からはじめるランニング (SPORTS GREEN BACKS)</a><div class="amazlet-powered-date" style="font-size:7pt;margin-top:5px;font-family:verdana;line-height:120%">posted with <a href="http://www.amazlet.com/browse/ASIN/4774790222/kialpi-22/ref=nosim/" title="今日からはじめるランニング (SPORTS GREEN BACKS)" target="_blank">amazlet</a> at 09.08.11</div></div><div class="amazlet-detail">安田 享平 <br />コスミック出版 <br /></div><div class="amazlet-link" style="margin-top: 5px"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4774790222/kialpi-22/ref=nosim/" name="amazletlink" target="_blank">Amazon.co.jp で詳細を見る</a></div></div><div class="amazlet-footer" style="clear: left"></div></div>

<img src="http://counter2.blog.livedoor.com/c?ro=1&act=rss&output=no&id=331650&name=sigalrm&pid=52003240" width="1" height="1" />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.hansode.org/archives/51992397.html">
<title>家でも店でも 極上のビールを飲もう!</title>
<link>http://blog.hansode.org/archives/51992397.html</link>
<description>この夏、乾いた喉を潤す一冊

家でも店でも 極上のビールを飲もう! (エンターブレインムック)posted with amazlet at 09.07.27エンターブレイン 売り上げランキング: 4142Amazon.co.jp で詳細を見る


「極上のビールを飲もう」シリーズの新作が出た。
東京近辺の好き...</description>
<dc:creator>sigalrm</dc:creator>
<dc:date>2009-07-27T21:25:40+09:00</dc:date>
<dc:subject>本</dc:subject>
<content:encoded><![CDATA[<h4>この夏、乾いた喉を潤す一冊</h4>
<br />
<div class="amazlet-box" style="margin-bottom:0px;"><div class="amazlet-image" style="float:left;"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4757750110/kialpi-22/ref=nosim/" name="amazletlink" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51r7srAtIOL._SL160_.jpg" alt="家でも店でも 極上のビールを飲もう! (エンターブレインムック)" style="border: none;" /></a></div><div class="amazlet-info" style="float:left;margin-left:15px;line-height:120%"><div class="amazlet-name" style="margin-bottom:10px;line-height:120%"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4757750110/kialpi-22/ref=nosim/" name="amazletlink" target="_blank">家でも店でも 極上のビールを飲もう! (エンターブレインムック)</a><div class="amazlet-powered-date" style="font-size:7pt;margin-top:5px;font-family:verdana;line-height:120%">posted with <a href="http://www.amazlet.com/browse/ASIN/4757750110/kialpi-22/ref=nosim/" title="家でも店でも 極上のビールを飲もう! (エンターブレインムック)" target="_blank">amazlet</a> at 09.07.27</div></div><div class="amazlet-detail"><br />エンターブレイン <br />売り上げランキング: 4142<br /></div><div class="amazlet-link" style="margin-top: 5px"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4757750110/kialpi-22/ref=nosim/" name="amazletlink" target="_blank">Amazon.co.jp で詳細を見る</a></div></div><div class="amazlet-footer" style="clear: left"></div></div>

<p>
「極上のビールを飲もう」シリーズの新作が出た。<br />
東京近辺の好きにはお勧めの一冊。<br />
</p>
<p>
足を運んだ事のあるお店が載っていると、なんだか嬉しくなる。<br />
そして、まだまだ足を運んでないお店が沢山ある。<br />
</p>
<p>
お店紹介だけではない。<br />
ビールの蘊蓄(うんちく)を増やすのには欠かせない一冊でもある。<br />
</p>

<img src="http://counter2.blog.livedoor.com/c?ro=1&act=rss&output=no&id=331650&name=sigalrm&pid=51992397" width="1" height="1" />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.hansode.org/archives/51990233.html">
<title>[Wakame] Wakame-0.4.2 Released!!</title>
<link>http://blog.hansode.org/archives/51990233.html</link>
<description>今月はWakame三昧だった


2009/07/24(金)、ようやく0.4.2をリリース出来た。
マイナーバージョンアップにしては盛り沢山。


▼http://rubyforge.org/frs/shownotes.php?release_id=37164より

== 0.4.2 2009-07-24

* Add Web API for master control. (Note th...</description>
<dc:creator>sigalrm</dc:creator>
<dc:date>2009-07-24T19:35:07+09:00</dc:date>
<dc:subject>Wakame</dc:subject>
<content:encoded><![CDATA[<h4>今月はWakame三昧だった</h4>
<br />
<p>
2009/07/24(金)、ようやく0.4.2をリリース出来た。<br />
マイナーバージョンアップにしては盛り沢山。<br />
</p>
<br />
▼<a href="http://rubyforge.org/frs/shownotes.php?release_id=37164">http://rubyforge.org/frs/shownotes.php?release_id=37164</a>より
<pre class="hogeri">
== 0.4.2 2009-07-24

* Add Web API for master control. (Note that the API design is not fixed yet)

* Rewrote the CLI to use HTTP instead of old DRb interface.

* Add support for agent less resource.

* Add LockQueue to avoid confliction when multiple actions run.

* Add MySQL_Slave resource.

* Add Elastic IP resource.

* Add Elastic Load Balancer resource.

* Add Nginx resource.
</pre>

<p>
次は0.4.3か0.5.0か。<br />
みんなで使い始めると足りない機能が色々見えて来る。<br />
</p>
<p>
「<a href="http://wakame.axsh.jp/">Wakame</a>」の進化は、まだまだこれからだ。
</p>

<img src="http://counter2.blog.livedoor.com/c?ro=1&act=rss&output=no&id=331650&name=sigalrm&pid=51990233" width="1" height="1" />
]]>
</content:encoded>
</item>
<item rdf:about="http://blog.hansode.org/archives/51978737.html">
<title>10分でredemineのホスティングサービスを作る</title>
<link>http://blog.hansode.org/archives/51978737.html</link>
<description>概要


プロジェクトおよび顧客の数だけ増えて行きそうだったので、
今後の為に、量産しやすい仕組みを作ってみた。



 「http://$(案件名).redmine.example.jp/」でアクセスする事を想定
 案件名指定でredmineを追加可能にする



作業環境


 Debian GNU/...</description>
<dc:creator>sigalrm</dc:creator>
<dc:date>2009-07-09T12:20:07+09:00</dc:date>
<dc:subject>サーバ管理</dc:subject>
<content:encoded><![CDATA[<h4>概要</h4>

<p>
プロジェクトおよび顧客の数だけ増えて行きそうだったので、
今後の為に、量産しやすい仕組みを作ってみた。<br />
</p>

<ul>
 <li>「http://$(案件名).redmine.example.jp/」でアクセスする事を想定</li>
 <li>案件名指定でredmineを追加可能にする</li>
</ul>


<h4>作業環境</h4>

<ul>
 <li><a href="http://www.debian.org/">Debian GNU/Linux</a> 5.0.2
  <ul>
   <li>apache2-mpm-prefork 2.2.9-10+lenny3</li>
   <li>mysql-server 5.0.51a-24+lenny1</li>
  </ul>
 </li>
 <li><a href="http://www.redmine.org/">redmine</a> 0.8-stable</li>
 <li><a href="http://www.modrails.com/">passenger</a> 2.2.4</li>
</ul>



<h4>作業内容</h4>

<p>■インスタンス作成</p>

<p>▼domU作成</p>
<pre class="hogeri">
$ sudo xen-create-image --ip=192.0.2.41 --gateway=192.0.2.1 --netmask=255.255.255.0 --hostname=redmine
$ sudo xm create -c /etc/xen/domains/redmine.cfg
</pre>

<p>▼rootパスワード変更</p>
<pre class="hogeri">
# passwd
</pre>

<p>▼作業アカウント作成</p>
<pre class="hogeri">
# groupadd redmine
# useradd -d /home/redmine -s /bin/bash -m -g redmine redmine
# passwd redmine
# exit
</pre>
<p>一旦ログアウトし、PuTTY等を使い、redmineアカウントでSSH接続</p>

<br />
<p>■MySQL設定</p>

<p>▼文字コードをutf8にする</p>
<pre class="hogeri">
$ cd /etc/mysql/
$ sudo cp -pi my.cnf my.cnf.0
$ diff my.cnf.0 my.cnf
21a22
&gt; default-character-set = utf8
42c43,45
&lt; language     = /usr/share/mysql/english
---
&gt; #language    = /usr/share/mysql/english
&gt; language     = /usr/share/mysql/japanese
&gt; default-character-set = utf8
$ sudo /etc/init.d/mysql restart
</pre>

<br />
<p>■passenger環境構築</p>

<p>▼環境構築時に必要とされるパッケージをインストール</p>
<pre class="hogeri">
$ sudo apt-get install apache2-mpm-prefork mysql-server mysql-client dnsmasq ruby rdoc irb ri
$ sudo apt-get install apache2-prefork-dev ruby-dev make g++ libopenssl-ruby subversion

$ cd /tmp
$ wget http://ftp.us.debian.org/debian/pool/main/libg/libgems-ruby/rubygems1.8_1.3.4-1_all.deb
$ wget http://ftp.us.debian.org/debian/pool/main/libg/libgems-ruby/rubygems_1.3.4-1_all.deb
$ suod dpkg -i *.deb
</pre>
<p>2009/07/07時点では、rubygems関連パッケージのバージョンは1.3.4-1。必要に応じて変更。</p>

<p>▼ユーザー共通環境変数設定</p>
<pre class="hogeri">
$ sudo vi /etc/environment
$ diff /tmp/environment /etc/environment
0a1,2
&gt; PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"
&gt; LANG="en_US.UTF-8"
</pre>

<p>▼railsをインストール(RedMine-0.8はrails-2.1.2に依存)</p>
<pre class="hogeri">
$ sudo GEM_HOME=/usr/local/gems gem install rails --no-ri --no-rdoc --version=2.1.2
</pre>

<p>▼passengerをインストール</p>
<pre class="hogeri">
$ sudo GEM_HOME=/usr/local/gems gem install passenger --no-ri --no-rdoc
</pre>

<p>▼passengerをビルド</p>
<pre class="hogeri">
$ cd /usr/local/gems/gems/passenger-2.2.4/; pwd
/usr/local/gems/gems/passenger-2.2.4
$ sudo GEM_HOME=/usr/local/gems ./bin/passenger-install-apache2-module
</pre>

<p>▼apache2用設定</p>
<pre class="hogeri">
$ sudo vi /etc/apache2/mods-available/passenger.load
</pre>
<pre class="hogeri">
LoadModule passenger_module /usr/local/gems/gems/passenger-2.2.4/ext/apache2/mod_passenger.so
PassengerRoot  /usr/local/gems/gems/passenger-2.2.4
PassengerRuby /usr/local/bin/passenger_ruby.sh
</pre>

<p>▼passenger用ラッパースクリプト作成</p>
<pre class="hogeri">
$ sudo vi　/usr/local/bin/passenger_ruby.sh
</pre>
<pre class="hogeri">
#!/bin/sh
. /etc/environment
export RUBYLIB GEM_HOME
exec /usr/bin/ruby $@
</pre>
<pre class="hogeri">
$ sudo chmod 755 /usr/local/bin/passenger_ruby.sh
</pre>

<p>▼passengerモジュールを読み込み対象に追加</p>
<pre class="hogeri">
$ sudo /usr/sbin/a2enmod passenger
</pre>

<p>▼mod_rewriteを使うのでロード対象モジュールに追加</p>
<pre class="hogeri">
$ sudo /usr/sbin/a2enmod rewrite
</pre>

<p>▼apache2を再起動</p>
<pre class="hogeri">
$ sudo /etc/init.d/apache2 force-reload
</pre>


<br />
<p>■Redmineの設定</p>

<p>▼redmine用ディレクトリ準備</p>
<pre class="hogeri">
$ cd /home/redmine
$ mkdir etc
$ mkdir etc/apache2
$ mkdir etc/redmine
$ mkdir lib
</pre>

<p>▼redmineのスケルトンを用意</p>
<pre class="hogeri">
$ cd /home/redmine/etc/redmine
$ svn checkout http://redmine.rubyforge.org/svn/branches/0.8-stable skel
</pre>

<p>▼make-redmine.shを作成</p>
<pre class="hogeri">
$ cd /home/redmine
$ vi make-redmine.sh
</pre>
<pre class="hogeri">
#!/bin/sh
#
# http://blog.hanosde.org/
#
GEM_HOME=/usr/local/gems

name=$1
prefix=/home/redmine
libdir=${prefix}/lib
etcdir=${prefix}/etc
domain=redmine.example.jp
fqdn=${name}.${domain}

echo fqdn:${fqdn}

# check
[ -z "${name}" ] && { exit 1; }
[ -d "${libdir}/${name}" ] &amp;&amp; { exit 1; }

# rsync
rsync -au ${etcdir}/redmine/skel/ ${libdir}/${name}

# database.yml
cat &lt;&lt;EOS | tee ${libdir}/${name}/config/database.yml
production:
  adapter: mysql
  database: redmine_${name}
  host: localhost
  socket: /var/run/mysqld/mysqld.sock
  username: root
  password:
  encoding: utf8
EOS

# create database
mysqladmin -uroot create redmine_${name}

# initialize redmine
cd ${libdir}/${name}
/usr/local/gems/bin/rake db:migrate RAILS_ENV=production
echo en | /usr/local/gems/bin/rake redmine:load_default_data RAILS_ENV=production

# apache virtualhost config
cat &lt;&lt;EOS | tee ${etcdir}/apache2/${fqdn}
&lt;VirtualHost *:80&gt;
  ServerName ${fqdn}

  DocumentRoot ${libdir}/${name}/public
  ErrorLog  /var/log/apache2/${fqdn}-error.log
  CustomLog /var/log/apache2/${fqdn}-access.log combined

  RailsEnv production
&lt;/VirtualHost&gt;
EOS

# ensite virtualhost
sudo ln -s ${etcdir}/apache2/${fqdn} /etc/apache2/sites-available/
sudo /usr/sbin/a2ensite ${fqdn}

exit 0
</pre>

<p>▼実行権限付与</p>
<pre class="hogeri">
$ chmod +x make-redmine.sh
</pre>

<p>▼apache2リロード</p>
<pre class="hogeri">
$ sudo /etc/init.d/apache2 reload
</pre>


<br />
<p>■Redmine VirtuaHostを新規追加</p>

<p>▼例として、foo.redmine.example.jpを追加</p>
<pre class="hogeri">
$ cd /home/redmine
$ ./make-redmine.sh foo
$ sudo /etc/init.d/apache2 reload
</pre>

<p>その後は http://foo.redmine.example.jp/ へアクセスして表示を確認</p>

<br />
<h4>あとがき</h4>

<p>
ひとまずredmineを使えるようにするまでの作業が面倒だった。<br />
</p>

<p>
もしこの先に何かをやるならば、<br />
Webインターフェースから追加する仕組み、アカウント発行などの仕組みを取り入れればいいだろう。<br />
</p>

<p>
個人的には追加スクリプトを作る所までで要件を満たせるので終わりにしておく。<br />
</p>

<img src="http://counter2.blog.livedoor.com/c?ro=1&act=rss&output=no&id=331650&name=sigalrm&pid=51978737" width="1" height="1" />
]]>
</content:encoded>
</item>

</rdf:RDF>
