<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>複眼中心</title>
	<atom:link href="http://rewse.jp/blog/feed" rel="self" type="application/rss+xml" />
	<link>http://rewse.jp/blog</link>
	<description>日本オラクルでデーターベース・パフォーマンス・エンジニアをしている柴田竜典のブログ</description>
	<lastBuildDate>Mon, 07 May 2012 14:59:46 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<atom:link rel="hub" href="http://pubsubhubbub.appspot.com"/><atom:link rel="hub" href="http://superfeedr.com/hubbub"/>		<item>
		<title>複眼中心がスマートフォン用レイアウトに対応</title>
		<link>http://rewse.jp/blog/p/5651</link>
		<comments>http://rewse.jp/blog/p/5651#comments</comments>
		<pubDate>Mon, 07 May 2012 14:28:02 +0000</pubDate>
		<dc:creator>Tats Shibata</dc:creator>
				<category><![CDATA[admin]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://rewse.jp/blog/?p=5651</guid>
		<description><![CDATA[<p>複眼中心がiPhoneやAndroidなどのスマートフォンに最適化されたレイアウトに対応した。<a href="http://ja.wordpress.org/">WordPress</a>のスマートフォン対応というと<a href="http://wordpress.org/extend/plugins/wptouch/">WPtouch</a>が有名だが、インデックス・ページが日付ばかり強調されてしまうデザインなのと、個別ページがRSSそのままみたいな素っ気なさがどうも気にくわなかったので自分で作成することにした。デスクトップ用レイアウトの雰囲気を維持したままスマートフォン対応できたと思う。</p>

<p>スマートフォン用レイアウトを作成するには、HTMLはそのままでCSSだけで変更する方法とHTMLもCSSも変更してしまう方法があるが、後者のほうが転送量が減らせる点となんだかんだでHTMLごと変更してしまったほうが制約が少なくて楽という理由から後者を採用した。</p> <a href="http://rewse.jp/blog/p/5651">続きを読む <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<div class="imgholder eyecatch"><img src="http://rewse.jp/blog/rsrc/uploads/2012/05/fukuganmobile.png" alt="" title="スマートフォン用レイアウト" width="175" height="331" class="alignnone size-full wp-image-5657" /></div>

<p>複眼中心がiPhoneやAndroidなどのスマートフォンに最適化されたレイアウトに対応した。<a href="http://ja.wordpress.org/">WordPress</a>のスマートフォン対応というと<a href="http://wordpress.org/extend/plugins/wptouch/">WPtouch</a>が有名だが、インデックス・ページが日付ばかり強調されてしまうデザインなのと、個別ページがRSSそのままみたいな素っ気なさがどうも気にくわなかったので自分で作成することにした。デスクトップ用レイアウトの雰囲気を維持したままスマートフォン対応できたと思う。</p>

<p>スマートフォン用レイアウトを作成するには、HTMLはそのままでCSSだけで変更する方法とHTMLもCSSも変更してしまう方法があるが、後者のほうが転送量が減らせる点となんだかんだでHTMLごと変更してしまったほうが制約が少なくて楽という理由から後者を採用した。</p>

<p>端末ごとにWordPressのテーマを切り替えるプラグインは <a href="http://wordpress.org/extend/plugins/wptap-mobile-detector/">WPtap Mobile Detector</a> が有名だが子テーマに対応していないので、<a href="http://wordpress.org/extend/plugins/multi-device-switcher/">Multi Device Switcher</a> を使用している。</p>
<span id="more-5651"></span>
<p>残っている課題は3つ。</p>

<ol>
  <li>iPadではデスクトップ用レイアウトで表示されるが、Androidタブレットではスマートフォン用レイアウトで表示されてしまう</li>
  <li>スマートフォン用レイアウトから手動でデスクトップ用レイアウトに変更することができない</li>
  <li><a href="https://play.google.com/store/apps/details?id=com.opera.browser">Opera Mobile for Android</a> / <a href="https://play.google.com/store/apps/details?id=com.opera.mini.android">Opera Mini for Android</a> でのレイアウト崩れ</li>
</ol>

<p>1については、Multi Device Switcher は「Android」という単語が見つかっただけでスマートフォンとして認識してしまうことが原因だ。正しくは <a href="http://googlewebmastercentral-ja.blogspot.jp/2011/05/android.html">Google ウェブマスター向け公式ブログ: Android のユーザーエージェントの検出について</a> にあるとおり、「Android」と「Mobile」の両方が見つかったときだけスマートフォン用にしないといけない。正規表現で振り分けられるプラグインがあると良いんだけど、Multi Device Switcher のソースコードを直接変更して対応してしまうかもしれない。</p>

<p>2についても Multi Device Switcher では対応できないので、同様にソースコードを直接変更するかもしれない。</p>

<p>3についてはどうしようかな……。Operaの<a href="http://marketshare.hitslink.com/browser-market-share.aspx?qprid=0&#038;qpcustomd=1" title="NetMarketShare: Mobile/Tablet Browser Market Share">市場シェア</a>を考えると無視できないのは分かるんだけど……。</p>

<p>なお、デスクトップ用レイアウトのCSSは親テーマの Twenty Ten のCSSをできるだけ生かして書いていたが、スマートフォン用レイアウトはこだわらずに書き直したので、デスクトップ用レイアウトよりすっきりした構成になった。今後はデスクトップ用レイアウトのほうも再構成したい。</p>]]></content:encoded>
			<wfw:commentRss>http://rewse.jp/blog/p/5651/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>2012年5月のベランダ・ハーブ</title>
		<link>http://rewse.jp/blog/p/5629</link>
		<comments>http://rewse.jp/blog/p/5629#comments</comments>
		<pubDate>Tue, 01 May 2012 15:17:29 +0000</pubDate>
		<dc:creator>Tats Shibata</dc:creator>
				<category><![CDATA[nature]]></category>
		<category><![CDATA[photo]]></category>

		<guid isPermaLink="false">http://rewse.jp/blog/?p=5629</guid>
		<description><![CDATA[<p>今年は4月になっても寒かったけど、やっと少しずつ暖かくなってきた。それに合わせてスペアミントの地下茎から新芽がどんどん出てきたので、今日はさっそく摘心。摘んだ新芽は紅茶に入れてみたけど、今シーズンもしっかり香って良い感じ。</p> <a href="http://rewse.jp/blog/p/5629">続きを読む <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<div class="imgholder eyecatch"><a href="http://www.flickr.com/photos/rewse/6985239912"><img src="http://rewse.jp/blog/rsrc/uploads/2012/05/herb-201205.jpg" alt="" title="Herbs at 2012-05" width="332" height="500" class="alignnone size-full wp-image-5630" /></a><span class="exif">Nikon D90, AF-S DX Nikkor 35mm f/1.8G, 1/20, f/10, ISO200, +1/3ev, A, 35mm (52mm), but might be post-producted</span></div>

<p>今年は4月になっても寒かったけど、やっと少しずつ暖かくなってきた。それに合わせてスペアミントの地下茎から新芽がどんどん出てきたので、今日はさっそく摘心。摘んだ新芽は紅茶に入れてみたけど、今シーズンもしっかり香って良い感じ。</p>]]></content:encoded>
			<wfw:commentRss>http://rewse.jp/blog/p/5629/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Panasonic 食器洗い乾燥機 NP-TR5 レビュー</title>
		<link>http://rewse.jp/blog/p/5551</link>
		<comments>http://rewse.jp/blog/p/5551#comments</comments>
		<pubDate>Mon, 16 Apr 2012 12:27:40 +0000</pubDate>
		<dc:creator>Tats Shibata</dc:creator>
				<category><![CDATA[home]]></category>
		<category><![CDATA[product]]></category>

		<guid isPermaLink="false">http://rewse.jp/blog/?p=5551</guid>
		<description><![CDATA[<p>妻と共働きで2人暮らしの我が家では、ボクが食事の直後はゆっくりしたいタイプで、妻が食器をそのまま放置しておきたくないタイプなこともあって、食器洗いはほとんど妻が行っていた。しかし妻が妊娠してつわりがひどくなってからはボクが食器洗いを含めた家事をほぼすべて一人やるようになったため、ボクの家事量を減らすためにも食器洗い機を買うことになった。「2人分だったら食器洗い機いらない」と言ってた妻も「3人分になるから買っちゃうか」と考えるようになったみたいだし。</p>

<p>そんなわけで <a href="http://ctlg.panasonic.jp/product/info.do?pg=04&#038;hb=NP-TR5">Panasonic 食器洗い乾燥機 NP-TR5</a> を購入。ビルトイン型を提供するメーカーはいろいろあるが、据え置き型を提供するメーカーは<a href="http://panasonic.jp/dish/">パナソニック</a>、<a href="http://www.zojirushi.co.jp/syohin/04housework/01list.html">象印</a>、<a href="http://www.toshiba.co.jp/toshiba/ld/dishwashers/dishwasher.htm">東芝</a>の3社だけ。象印は4人分が2機種、東芝は6人用が1機種だが、パナソニックは3人分と6人分で合計6機種もラインナップしており、Webを見ても他社に比べてパナソニックは明らかに食洗機に力を入れているので、パナソニックのものを購入することに決定。</p> <a href="http://rewse.jp/blog/p/5551">続きを読む <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<div class="imgholder eyecatch"><img src="http://rewse.jp/blog/rsrc/uploads/2012/04/np-tr5.png" alt="" title="Panasonic 食器洗い乾燥機 NP-TR5" width="341" height="332" class="alignnone size-full wp-image-5558" /></div>

<p>妻と共働きで2人暮らしの我が家では、ボクが食事の直後はゆっくりしたいタイプで、妻が食器をそのまま放置しておきたくないタイプなこともあって、食器洗いはほとんど妻が行っていた。しかし妻が妊娠してつわりがひどくなってからはボクが食器洗いを含めた家事をほぼすべて一人やるようになったため、ボクの家事量を減らすためにも食器洗い機を買うことになった。「2人分だったら食器洗い機いらない」と言ってた妻も「3人分になるから買っちゃうか」と考えるようになったみたいだし。</p>

<p>そんなわけで <a href="http://ctlg.panasonic.jp/product/info.do?pg=04&#038;hb=NP-TR5">Panasonic 食器洗い乾燥機 NP-TR5</a> を購入。ビルトイン型を提供するメーカーはいろいろあるが、据え置き型を提供するメーカーは<a href="http://panasonic.jp/dish/">パナソニック</a>、<a href="http://www.zojirushi.co.jp/syohin/04housework/01list.html">象印</a>、<a href="http://www.toshiba.co.jp/toshiba/ld/dishwashers/dishwasher.htm">東芝</a>の3社だけ。象印は4人分が2機種、東芝は6人用が1機種だが、パナソニックは3人分と6人分で合計6機種もラインナップしており、Webを見ても他社に比べてパナソニックは明らかに食洗機に力を入れているので、パナソニックのものを購入することに決定。</p>

<p>カタログに載っている収納枚数はかなり理想的に入れたときの数なので7掛けくらいで考えておいたほうが良い。つまりカタログ・スペック3人分は実質2人分、6人分は実質4人分ぐらいなので、6人分に決定。NP-TR5はドア開放時の高さが642mmでNP-TM5が592mmだが、NP-TR5の食器点数は53点でNP-TM5が42点。値段がそれほど変わらない割りに食器点数が大きく違うので、NP-TR5の高さが問題なければNP-TR5のほうが良いだろう。<a href="http://panasonic.jp/dish/dishwasher/np_tr5/recommend/p01.html">エコナビ</a>と<a href="http://panasonic.jp/dish/dishwasher/np_tr5/recommend/p02.html">パワー除菌ミスト</a>もNP-TR5にしかついていない。</p>
<span id="more-5551"></span>
<p>我が家のキッチンの水栓は <a href="http://iinavi.inax.lixil.co.jp/mt_search/hinban_search.php?textfield=SF-B420SXB&#038;strict=ON">INAX ビーフィット SF-B420SXB</a> で分岐口が最初からついているので、食洗機を設置するときに面倒な分岐水栓については <a href="http://iinavi.inax.lixil.co.jp/search/index.php?keyword=LF-3SQ-13F">INAX LF-3SQ-13F</a> 分岐止水栓をレンチで止めるだけで完了。シンクと壁の間に350mm×630mmのスペースがあり、コンセントとアース端子もシンク付近にあって設置の問題は何もなかったので自分で設置することにした。</p>

<p>NP-TR5は<a href="http://kakaku.com/item/K0000275998/">価格.com</a>の最安店より<a href="http://www.yamada-denkiweb.com/item/detail.php/448298014">ヤマダ電機WEB</a>のほうが安かったが納期が4週間以上……。さすがにそこまで待てないので<a href="http://www.yamadalabi.com/shinjuku-west/">LABI新宿西口館</a>に行ってみると、<a href="http://www.yamadalabi.com/shinjuku/">LABI新宿東口館</a>にだけ在庫が1台あるとのこと！ 食洗機は持ち帰りがほとんどないのであまり在庫していないらしい。店頭価格はだいぶ高かったがヤマダ電機WEBの価格とポイント還元率に合わせてもらって、ずいぶん安く買うことができた。</p>

<p>それでは2週間ほど使ったところで使用感などをレビューしてみたいと思う。</p>

<p>「食洗機は予洗いしないと汚れが落ちない」なんて言う人もいるが、寝る前に1日分の食器をまとめて洗うという数時間放置した運用ですら、カレーやハンバーグで使った皿も何も気にせず食洗機に入れて標準コースで完璧に汚れが落ちた。しかも、手洗いのときの洗い上がりはスベスベって感じだったけど、NP-TR5ではキュッキュッという感じで全然違う。高温のお湯で洗うので、油汚れは手洗いよりも得意のようだ。また、グラスが「今までずいぶん曇っていたんだな……」と思うくらい、NP-TR5で洗ったほうが透明度が高い。</p>

<div class="amazon-as"><iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&#038;bc1=FFFFFF&#038;IS2=1&#038;bg1=FFFFFF&#038;fc1=333333&#038;lc1=004C99&#038;t=rewse-22&#038;o=9&#038;p=8&#038;l=as4&#038;m=amazon&#038;f=ifr&#038;ref=ss_til&#038;asins=B001DCE352" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe></div>

<p>洗剤によって仕上がりがだいぶ違うらしいが、とりあえず今は食洗機に付属していた試供品の <a href="http://www.joypg.com/product/hiwash.html">P&amp;G ハイウォッシュジョイ 除菌</a> 100g を使っている。ちなみに <a href="http://www.finishinfo.jp/powder.html">Reckitt Benckiser フィニッシュ エコクリーンEX</a> 100g も <a href="http://www.lion.co.jp/ja/seihin/brand/021/11.htm">LION CHARMY クリスタ ジェル</a> 80g もNP-TR5に試供品としてついており、フィニッシュ エコクリーンEX はキャンペーンで購入時にさらに700gもらっているので、しばらく洗剤を買う必要はなさそうだ。</p>

<p>そんなわけで寝る直前にスタートすることが多いんだけど、キッチンとクローゼットを挟んで隣接している寝室ではまったく音は聞こえない。服がつまっているクローゼットだったら遮音性は抜群だろうけど、比較的空いているクローゼットでもそんな感じだ。キッチンでの水流音は手洗いと同じくらいかな。キッチンとリビングが隣接している間取りでも、テレビの音を大きくするほどではないだろう。</p>

<p>収納力は現在使っている皿によって大きく変わってくる。たとえばコップは直径7cm以下だと上かご右にきれいに6個収まるが、うちにある <a href="http://www.duralex.com/index.php?q=produits&#038;fam=5&#038;cat=1&#038;mod=63">DURALEX PICARDIE</a> 250mL は直径8.7cmなので4個しか入らずデッド・スペースが多い。全体的にそんな感じなので6人分というのは現実的には無理で、まぁ4人分ってところだろう。ただ、樹脂製のピンは間隔や高さがよく考えられていて、お椀なども1個で横向きに自立する。横向きに自立しないと糸底に水がたまりやすいのだ。</p>

<p><a href="http://www.toshiba.co.jp/living/dishwashers/dws_600d/">TOSHIBA DWS-600D</a> は同じ6人分でも上かご専用回転ノズルがないので、下かごにボウルを寝かせてしまったりすると上かごに全然水が行かなくなったりしてしまうが、Panasonic NP-TR5 には上かご専用回転ノズルが存在するので、下かごの入れ方に上かごは影響しない。ただ逆に、上かごをはずしても回転ノズルが邪魔をして大型のものが入らないときがある。我が家では直径21cm（取っ手込みだと30cm）×高さ21cmのパスタ鍋だけが回転ノズルとぶつかってしまうのだが、じつはこの回転ノズルの水色部分はかんたんに外せるので、大型のものを入れるときはこれを外してしまうという裏技もできる。ただし、ノズルをはずすと水流が太くなるために水流音がかなり大きくなるし、もちろんメーカー保証外の使用方法になる。しかし、NP-TR5のほうが手洗いよりきれいになるので、なんでもかんでもNP-TR5で洗いたくなってしまうのだ。</p>

<div class="amazon-as"><iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&#038;bc1=FFFFFF&#038;IS2=1&#038;bg1=FFFFFF&#038;fc1=333333&#038;lc1=004C99&#038;t=rewse-22&#038;o=9&#038;p=8&#038;l=as4&#038;m=amazon&#038;f=ifr&#038;ref=ss_til&#038;asins=B005LEJM1I" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe></div>

<p>乾燥は初期の30分だと少し水滴が残る。説明書の「食器の仕上がりが気になるとき」に「乾きが悪い」→「乾燥時間は、45分・60分をおすすめします」とあっさり書いてあるので、30分はカタログ上の運転時間を短く見せるための設定だと割り切ったほうが良いだろう。45分だと完全に乾く。ちなみに標準コース / 30分乾燥 / エコナビなしだと全体で80分程度となっている。45分乾燥 / エコナビありなら、90分弱というところだろうか。</p>

<p>まだ導入して2週間だが、「これならもっと早く買っておけば良かった」という気持ちでいっぱいだ。食洗機なら1枚洗うのも10枚洗うのもたいして手間は変わらないので皿をけちけち使うこともなくなったし、寝てる間にそれらが手洗い以上にきれい仕上がる。春に引っ越して台所が大きくなった人は、これを機会に食洗機を検討してみてはいかがだろうか。</p>

<table class="product">
<tr>
<th>メーカー</th>
<td><a href="http://www.panasonic.jp/">パナソニック</a></td>
</tr>
<tr>
<th>製品</th>
<td><a href="http://ctlg.panasonic.jp/product/info.do?pg=04&#038;hb=NP-TR5">Panasonic 食器洗い乾燥機 NP-TR5</a></td>
</tr>
<tr>
<th>購入場所</th>
<td><a href="http://www.yamadalabi.com/shinjuku/">LABI新宿東口館</a></td>
</tr>
<tr>
<th>購入日</th>
<td>2011-03-31</td>
</tr>
<tr>
<th>価格</th>
<td>50,400円（-7,056円分ポイント還元）</td>
</tr>
</table>

<table class="product">
<tr>
<th>メーカー</th>
<td><a href="http://www.lixil.co.jp/">LIXIL</a></td>
</tr>
<tr>
<th>製品</th>
<td><a href="http://iinavi.inax.lixil.co.jp/search/index.php?keyword=LF-3SQ-13F">INAX LF-3SQ-13F</a></td>
</tr>
<tr>
<th>購入場所</th>
<td><a href="https://www.jyusetu-komatsuya.com/products/detail.php?product_id=198">小松屋</a></td>
</tr>
<tr>
<th>購入日</th>
<td>2011-03-27</td>
</tr>
<tr>
<th>価格</th>
<td>3,969円</td>
</tr>
</table>]]></content:encoded>
			<wfw:commentRss>http://rewse.jp/blog/p/5551/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>国内 Oracle Linux 6 サーバーのためのYum設定</title>
		<link>http://rewse.jp/blog/p/5454</link>
		<comments>http://rewse.jp/blog/p/5454#comments</comments>
		<pubDate>Fri, 30 Mar 2012 13:24:29 +0000</pubDate>
		<dc:creator>Tats Shibata</dc:creator>
				<category><![CDATA[linux]]></category>
		<category><![CDATA[software]]></category>

		<guid isPermaLink="false">http://rewse.jp/blog/?p=5454</guid>
		<description><![CDATA[<p>DVDからインストールした直後の <a href="http://www.oracle.com/jp/technologies/linux/index.html">Oracle Linux</a> のYumにはリポジトリの設定が何もされていないので、無償で使用できるリポジトリをいくつか追加していく。</p>

<p>まず、Errataなどを無償配布している <a href="http://public-yum.oracle.com/">Oracle Public Yum Server</a> への設定ファイルをダウンロードする。</p>

<p>デフォルトでは <a href="http://www.oracle.com/us/technologies/linux/uek-r2-features-and-benefits-1555063.pdf">Unbreakable Enterprise Kernel Release 2</a> が含まれるol6_UEK_latestリポジトリは無効になっているので、これを有効にする。</p>
 <a href="http://rewse.jp/blog/p/5454">続きを読む <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<div class="imgholder eyecatch"><img src="http://rewse.jp/blog/rsrc/uploads/2011/05/oracle_linux.png" alt="" title="Oracle Linux" width="288" height="332" class="alignnone size-full wp-image-5460" /></div>

<p>DVDからインストールした直後の <a href="http://www.oracle.com/jp/technologies/linux/index.html">Oracle Linux</a> のYumにはリポジトリの設定が何もされていないので、無償で使用できるリポジトリをいくつか追加していく。</p>

<p>まず、Errataなどを無償配布している <a href="http://public-yum.oracle.com/">Oracle Public Yum Server</a> への設定ファイルをダウンロードする。</p>

<pre class="screen">[root@zulu ~]# cd /etc/yum.repos.d
[root@zulu yum.repos.d]# curl -O http://public-yum.oracle.com/public-yum-ol6.repo
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
104  1461  104  1461    0     0   2437      0 --:--:-- --:--:-- --:--:--  7689</pre>

<p>デフォルトでは <a href="http://www.oracle.com/us/technologies/linux/uek-r2-features-and-benefits-1555063.pdf">Unbreakable Enterprise Kernel Release 2</a> が含まれるol6_UEK_latestリポジトリは無効になっているので、これを有効にする。</p>

<pre class="brush: plain; first-line: 29; highlight: [34,35]; title: ; notranslate">[ol6_UEK_latest]
name=Latest Unbreakable Enterprise Kernel for Oracle Linux $releasever ($basearch)
baseurl=http://public-yum.oracle.com/repo/OracleLinux/OL6/UEK/latest/$basearch/
gpgkey=http://public-yum.oracle.com/RPM-GPG-KEY-oracle-ol6
gpgcheck=1
#enabled=0
enabled=1</pre>
<span id="more-5454"></span>
<p>合わせてサード・パーティのリポジトリである<a href="https://fedoraproject.org/wiki/EPEL/ja">EPEL</a>と<a href="http://repoforge.org/">Repoforge</a> (RPMforge) を追加しておくと便利だろう。</p>
<!--more-->
<p>EPELは <a href="http://fedoraproject.org/">Fedora Project</a> が管理しており、Fedoraと <a href="http://jp.redhat.com/products/enterprise-linux/">Red Hat Enterprise Linux</a> の差分が公開されている。epel-releaseのバージョンは適宜更新されているので、<a href="http://fedoraproject.org/wiki/EPEL#How_can_I_use_these_extra_packages.3F">EPEL: How can I use these extra packages?</a> のリンクを確認してほしい。</p>

<pre class="screen">[root@zulu ~]# rpm -ihv http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-5.noarch.rpm
http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-5.noarch.rpm を取得中
警告: /var/tmp/rpm-tmp.6MvcSI: ヘッダ V3 RSA/SHA256 Signature, key ID 0608b895: NOKEY
準備中...                ########################################### [100%]
   1:epel-release           ########################################### [100%]</pre>

<p>EPELの<a href="http://mirrors.fedoraproject.org/mirrorlist?repo=epel-6&amp;arch=x86_64">mirrorlistファイル</a>は自動的に最適なミラー・サーバーだけをリストしてくれるので、Yumの設定ファイルを編集しなくても国内のミラー・サーバーに接続してくれる。</p>

<p>Repoforgeも Red Hat Enterprise Linux に存在しないパッケージを独自に提供している。rpmforge-releaseのバージョンは適宜更新されているので、<a href="http://repoforge.org/use/">Repoforge: User Guide</a> のリンクを確認してほしい。</p>

<pre class="screen">[root@zulu ~]# rpm -ihv http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm
http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm を取得中
警告: /var/tmp/rpm-tmp.fXD6rc: ヘッダ V3 DSA/SHA1 Signature, key ID 6b8d79e6: NOKEY
準備中...                ########################################### [100%]
   1:rpmforge-release       ########################################### [100%]</pre>

<p>Repoforgeの国内ミラーは<a href="http://ftp.iij.ad.jp/pub/linux/dag/">IIJ</a>と<a href="http://ftp.riken.jp/Linux/dag/">理化学研究所</a>にあるので、これを追加する。</p>

<pre class="brush: plain; auto-links: false; first-line: 3; highlight: [5,6,7]; title: /etc/yum.repos.d/rpmforge.repo; notranslate">[rpmforge]
name = RHEL $releasever - RPMforge.net - dag
#baseurl = http://apt.sw.be/redhat/el6/en/$basearch/rpmforge
#mirrorlist = http://apt.sw.be/redhat/el6/en/mirrors-rpmforge
mirrorlist = file:///etc/yum.repos.d/mirrors-rpmforge</pre>

<pre class="brush: plain; auto-links: false; first-line: 11; highlight: [12,13,14]; title: /etc/yum.repos.d/mirrors-rpmforge; notranslate">
　http://www.mirrorservice.org/sites/apt.sw.be/redhat/el6/en/$ARCH/rpmforge
　http://ftp.iij.ad.jp/pub/linux/dag/redhat/el6/en/$ARCH/rpmforge
　http://ftp.riken.jp/Linux/dag/redhat/el6/en/$ARCH/rpmforge</pre>

<p>yum-plugin-fastestmirrorを入れると、先ほど設定したミラー・サイトの中で最速のものを探して今後はそれを使うようになるので、結果的に海外のものより国内のものが優先して使用されることになる。</p>

<pre class="screen">[root@zulu ~]# yum install yum-plugin-fastestmirror
.......
================================================================================
 Package                     Arch      Version              Repository     Size
================================================================================
Installing:
 yum-plugin-fastestmirror    noarch    1.1.30-10.0.1.el6    ol6_latest     26 k
......</pre>

<p>このままでは純正のol6_latestリポジトリよりもepelやrpmforgeのほうに新しいバージョンがあった場合、epelやrpmforgeのものがインストールされてしまうので、使用するリポジトリの優先度を決められるyum-plugin-prioritiesをインストールする。</p>

<pre class="screen">[root@zulu ~]# yum install yum-plugin-priorities
......
================================================================================
 Package                  Arch      Version                 Repository     Size
================================================================================
Installing:
 yum-plugin-priorities    noarch    1.1.30-10.0.1.el6       ol6_latest     21 k
......</pre>

<p>yum-plugin-prioritiesのためにリポジトリの優先度を指定する。epelとrpmforgeはどちらを優先するかは好みだが、以下ではepelを優先している。</p>

<pre class="brush: plain; auto-links: false; highlight: [6,13]; title: /etc/yum.repos.d/public-yum-ol6.repo; notranslate">[ol6_latest]
......
gpgkey=http://public-yum.oracle.com/RPM-GPG-KEY-oracle-ol6
gpgcheck=1
enabled=1
priority=10

[ol6_UEK_latest]
......
gpgkey=http://public-yum.oracle.com/RPM-GPG-KEY-oracle-ol6
gpgcheck=1
enabled=1
priority=10</pre>

<pre class="brush: plain; auto-links: false; highlight: [6]; title: /etc/yum.repos.d/epel.repo; notranslate">[epel]
......
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
priority=50</pre>

<pre class="brush: plain; auto-links: false; highlight: [6]; title: /etc/yum.repos.d/rpmforge.repo; notranslate">[rpmforge]
......
protect = 0
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-dag
gpgcheck = 1
priority=70</pre>

<p>パッケージを自動更新したい場合はyum-cronをインストールする。これにより自動更新が /etc/cron.daily/0yum.cron から行なわれる。</p>

<pre class="screen">[root@zulu ~]# yum install yum-cron
......
===============================================================================
 Package                   Arch     Version                  Repository    Size
================================================================================
Installing:
 yum-cron                  noarch   3.2.29-22.0.2.el6_2.2    ol6_latest    34 k
Installing for dependencies:
 yum-plugin-downloadonly   noarch   1.1.30-10.0.1.el6        ol6_latest    19 k
......
[root@zulu ~]# chkconfig yum-cron on
[root@zulu ~]# service yum-cron start
夜間 yum 更新の有効化中:                                   [  OK  ]</pre>]]></content:encoded>
			<wfw:commentRss>http://rewse.jp/blog/p/5454/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Oracle Linux 6.2 のYumサーバーを構築</title>
		<link>http://rewse.jp/blog/p/5345</link>
		<comments>http://rewse.jp/blog/p/5345#comments</comments>
		<pubDate>Wed, 28 Mar 2012 12:00:20 +0000</pubDate>
		<dc:creator>Tats Shibata</dc:creator>
				<category><![CDATA[linux]]></category>
		<category><![CDATA[software]]></category>

		<guid isPermaLink="false">http://rewse.jp/blog/?p=5345</guid>
		<description><![CDATA[<p>Oracle Linux 6.2 のErrataを含めたすべてのバイナリとソースは <a href="http://public-yum.oracle.com/">Oracle Public Yum Server</a> で公開されているが、<a href="http://www.centos.org/">CentOS</a> や <a href="http://www.scientificlinux.org/">Scientific Linux</a> で言うosディレクトリが存在しないため、このYumサーバーから<code>virt-install</code>コマンドでXenなどの仮想マシンを作成できない。そこで Oracle Linux 6.2 を配布するYumサーバーを構築しようと思う。以下は <a href="http://www.scientificlinux.org/">Scientific Linux</a> (SL) 6.2 に構築しているが、<a href="http://www.jp.redhat.com/rhel/">Red Hat Enterprise Linux</a> (RHEL) / <a href="http://www.centos.org/">CentOS</a> / <a href="http://www.oracle.com/jp/technologies/linux/">Oracle Linux</a> でも同様だろう。</p>

<p>まずは Oracle Linux 6.2 のISOメディアを入手する。入手方法は <a href="http://rewse.jp/blog/p/5325">複眼中心: Oracle Linux 6.2 をインストール</a> を参照してほしい。このISOファイルをマウントし、ファイル内容をコピーする。あとでHTTPで公開するので、/var/www/html/os/ol62 をコピー先とした。<code>setenforce</code>と<code>restoecon</code>コマンドはSELinuxが有効な環境でのみ実行する。</p> <a href="http://rewse.jp/blog/p/5345">続きを読む <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<div class="imgholder eyecatch"><img src="http://rewse.jp/blog/rsrc/uploads/2011/05/oracle_linux.png" alt="" title="Oracle Linux" width="288" height="332" class="alignnone size-full wp-image-5460" /></div>

<p>Oracle Linux 6.2 のErrataを含めたすべてのバイナリとソースは <a href="http://public-yum.oracle.com/">Oracle Public Yum Server</a> で無償公開されているが、<a href="http://www.centos.org/">CentOS</a> や <a href="http://www.scientificlinux.org/">Scientific Linux</a> で言うosディレクトリが存在しないため、このYumサーバーから<code>virt-install</code>コマンドでXenなどの仮想マシンを作成できない。そこでosディレクトリの代わりとなるYumサーバーを構築しようと思う。以下は <a href="http://www.scientificlinux.org/">Scientific Linux</a> (SL) 6.2 に構築しているが、<a href="http://www.jp.redhat.com/rhel/">Red Hat Enterprise Linux</a> (RHEL) / <a href="http://www.centos.org/">CentOS</a> / <a href="http://www.oracle.com/jp/technologies/linux/">Oracle Linux</a> でも同様だろう。</p>

<p>まずは Oracle Linux 6.2 のISOメディアを入手する。入手方法は <a href="http://rewse.jp/blog/p/5325">複眼中心: Oracle Linux 6.2 をインストール</a> を参照してほしい。このISOファイルをマウントし、ファイル内容をコピーする。あとでHTTPで公開するので、/var/www/html/os/ol62 をコピー先とした。<code>setenforce</code>と<code>restoecon</code>コマンドはSELinuxが有効な環境でのみ実行する必要がある。</p>

<pre class="screen">[root@charlie ~]# mount -o ro -o loop V29459-01.iso /media/cdrom
[root@charlie ~]# mkdir /var/www/html/os
[root@charlie ~]# setenforce 0
[root@charlie ~]# cp -a /media/cdrom /var/www/html/os/ol62
[root@charlie ~]# setenforce 1
[root@charlie ~]# restorecon -R /var/www/html/os</pre>

<p>Oracle Linux 6.2 のメディアにはboot.isoが含まれていないので、単にコピーしただけでは以下のようなエラーで作成できない。</p>
<span id="more-5345"></span>
<pre class="screen">[root@charlie ~]# DOMU=zulu
[root@charlie ~]# virt-install --paravirt --name=$DOMU --vcpus=1 --ram=1024 --disk="path=/var/lib/xen/images/$DOMU/system.img,size=20,sparse=false" --bridge=xenbr1 --location=http://charlie/os/ol62/


インストールを開始しています...
ファイル .treeinfo を読出中...                                                                          | 1.5 kB     00:00
ERROR    No option 'boot.iso' in section: 'images-x86_64'</pre>

<p>そこで、<a href="https://edelivery.oracle.com/linux">Oracle Software Delivery Cloud</a> の Oracle Linux Release 6 Update 2 Media Pack v1 for x86_64 (64 bit) に Oracle Linux Release 6 Update 2 Boot iso image for x86_64 (64 bit) というメディアが別にあるので、これをダウンロードして /var/www/html/os/ol6/images/boot.iso として保存する。</p>

<pre class="screen">[root@charlie ~]# mv V29608-01.img /var/www/html/os/ol62/images/boot.iso</pre>

<p>/var/www/html/os/ol62/.treeinfo の<code>[images-x86_64]</code>セクションに<code>boot.iso</code>を追加する。</p>

<pre class="brush: plain; first-line: 12; highlight: [15]; title: /var/www/html/os/ol62/.treeinfo; notranslate">[images-x86_64]
kernel = images/pxeboot/vmlinuz
initrd = images/pxeboot/initrd.img
boot.iso = images/boot.iso</pre>

<p>必須ではないが、以下のファイルを用意しておくとファイルが一覧表示されるようになるので、何かあったときにデバッグしやすいだろう。</p>

<pre class="brush: plain; title: /etc/httpd/conf.d/os.conf; notranslate">
&lt;Location /os&gt;
  Options Indexes
&lt;/Location&gt;</pre>

<p>Apache HTTP Server を起動して、http://$hostname/os/ol62/ にWebブラウザーでアクセスしてファイルが表示されればYumサーバーの完成だ。</p>

<pre class="screen">
[root@charlie ~]# service httpd start
httpd を起動中:                                            [  OK  ]</pre>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/index_of_os_ol62.png" alt="" title="index of /os/ol62" width="610" height="845" class="alignnone size-full wp-image-5533" /></div>

<p>これによって、以下のようにvirt-installから仮想マシンが作成できるようになった。</p>

<pre class="screen">[root@charlie ~]# DOMU=zulu
[root@charlie ~]# virt-install --paravirt --name=$DOMU --vcpus=1 --ram=1024 --disk="path=/var/lib/xen/images/$DOMU/system.img,size=20,sparse=false" --bridge=xenbr1 --location=http://charlie/os/ol62/</pre>

<p>ついでに、ボクのようにデフォルトでは最低限のパッケージしかインストールせずに必要なときに都度インストールするスタイルで運用していると、Oracle Public Yum Server が200KB/sくらいしか出ない点がもどかしいので、Errataがリリースされておらず Oracle Linux 6.2 のDVDに入ってるパッケージのバージョンをそのまま使う場合は、今回構築したYumサーバーから取得することにした。</p>

<p>Oracle Public Yum Server のlatestディレクトリにはErrataだけではなく、DVD内にあったものも含めたすべてのパッケージが存在する点に注意しよう。Yumは複数のリポジトリで同じバージョンを見つけた場合、リポジトリ名がアルファベット順で早いほうを優先するので、<a href="http://public-yum.oracle.com/public-yum-ol6.repo">public-yum-ol6.repo</a>の<code>ol6_u2_base</code>を<code>ol62_base</code>にして<code>ol6_latest</code>より優先させるようにすることで、<code>ol62_base</code>と<code>ol6_latest</code>に同じバージョンがあった場合には<code>ol62_base</code>、つまり今回構築したローカルのYumサーバーからダウンロードするようになる。</p>

<pre class="brush: plain; first-line: 22; highlight: [22,23,25,26]; title: /etc/yum.repos.s/public-yum-ol6.repo; notranslate">#[ol6_u2_base]
[ol62_base]
name=Oracle Linux $releasever Update 2 installation media copy ($basearch)
#baseurl=http://public-yum.oracle.com/repo/OracleLinux/OL6/2/base/$basearch/
baseurl=http://charlie/os/ol62/</pre>

<p>以下のようにバージョンが同じものは<code>ol62_base</code>からダウンロードするようになれば設定は完了だ。</p>

<pre class="screen">[root@zulu ~]# yum install ruby
......
================================================================================
 Package               Arch        Version                Repository       Size
================================================================================
Installing:
 ruby                  x86_64      1.8.7.352-4.el6_2      ol6_latest      532 k
Installing for dependencies:
 compat-readline5      x86_64      5.2-17.1.el6           ol62_base       129 k
 ruby-libs             x86_64      1.8.7.352-4.el6_2      ol6_latest      1.6 M
......</pre>]]></content:encoded>
			<wfw:commentRss>http://rewse.jp/blog/p/5345/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Oracle Linux 6.2 をインストール</title>
		<link>http://rewse.jp/blog/p/5325</link>
		<comments>http://rewse.jp/blog/p/5325#comments</comments>
		<pubDate>Mon, 26 Mar 2012 12:32:36 +0000</pubDate>
		<dc:creator>Tats Shibata</dc:creator>
				<category><![CDATA[linux]]></category>
		<category><![CDATA[software]]></category>

		<guid isPermaLink="false">http://rewse.jp/blog/?p=5325</guid>
		<description><![CDATA[<p><a href="http://www.oracle.com/jp/technologies/linux/index.html">Oracle Linux</a> が3月22日からバグ修正やセキュリティ・アップデートなどのErrataを含めたすべてのバイナリとソースを無償で提供するようになった。それまではマイナー・アップデートごとのISOメディアやYumでのRPM提供を無償で行っていたものの、Errataは119ドル/年の <a href="https://shop.oracle.com/pls/ostore/f?p=dstore:product:4152108715334100::NO:RP,6:P6_LPI:4510275205461805728469">Network Support</a> 契約がないと提供していなかったが、今回の変更によってその他の <a href="http://jp.redhat.com/products/enterprise-linux/">Red Hat Enterprise Linux</a> 互換ディストリビューションである<a href="http://www.centos.org/">CentOS</a>や <a href="http://www.scientificlinux.org/">Scientific Linux</a> の代替として検討するにも十分となっただろう。Oracle Linux はCentOSや Scientific Linux より Red Hat Enterprise Linux への追随が速く、また Linux Kernel 3.0.16 に独自のチューニングや機能向上を行った <a href="http://www.oracle.com/us/technologies/linux/uek-r2-features-and-benefits-1555063.pdf">Unbreakable Enterprise Kernel</a> (UEK) も無償で使用できるので、なかなか悪くない選択肢だと思う。</p> <a href="http://rewse.jp/blog/p/5325">続きを読む <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<div class="imgholder eyecatch"><img src="http://rewse.jp/blog/rsrc/uploads/2011/05/oracle_linux.png" alt="" title="Oracle Linux" width="288" height="332" class="alignnone size-full wp-image-5460" /></div>

<p><a href="http://www.oracle.com/jp/technologies/linux/index.html">Oracle Linux</a> が3月22日からバグ修正やセキュリティ・アップデートなどのErrataを含めたすべてのバイナリとソースを<a href="https://blogs.oracle.com/linux/entry/free_updates_and_errata_for" title="Oracle's Linux Blog: Free Updates and Errata for Oracle Linux">無償で提供するようになった</a>。それまではマイナー・アップデートごとのISOメディアやYumでのRPM提供を無償で行っていたものの、Errataは119ドル/年の <a href="https://shop.oracle.com/pls/ostore/f?p=dstore:product:4152108715334100::NO:RP,6:P6_LPI:4510275205461805728469">Network Support</a> 契約がないと提供していなかったが、今回の変更によってその他の <a href="http://jp.redhat.com/products/enterprise-linux/">Red Hat Enterprise Linux</a> 互換ディストリビューションである<a href="http://www.centos.org/">CentOS</a>や <a href="http://www.scientificlinux.org/">Scientific Linux</a> の代替として検討するにも十分となっただろう。Oracle Linux はCentOSや Scientific Linux より Red Hat Enterprise Linux への追随が速く、また Linux Kernel 3.0.16 に独自のチューニングや機能強化を行った <a href="http://www.oracle.com/us/technologies/linux/uek-r2-features-and-benefits-1555063.pdf">Unbreakable Enterprise Kernel</a> (UEK) も無償で使用できるので、なかなか悪くない選択肢だと思う。</p>

<p>以下では Oracle Linux 6.2 のダウンロードから、Errataを無償で提供する <a href="http://public-yum.oracle.com/">Oracle Public Yum Server</a> を使用できる状態にするまでを説明する。</p>

<p>ISOメディアは <a href="https://edelivery.oracle.com/linux">Oracle Software Delivery Cloud</a> からダウンロードできる。</p>
<span id="more-5325"></span>
<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/software_delivery_cloud.png" alt="" title="Oracle Software Delivery Cloud" width="610" height="320" class="alignnone size-full wp-image-5366" /></div>

<p>右上の「Launage (English)」から「日本語」を選ぶこともできる。「サインイン/登録」を押そう。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/software_delivery_cloud_ja.png" alt="" title="Oracle Software Delivery Cloud 日本語" width="610" height="358" class="alignnone size-full wp-image-5367" /></div>

<p>サインインが要求されるので、Oracleのアカウントを持っていない場合は「サインアップ」から登録する必要がある。ボクはアカウントを持っているのでそのままサインイン。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/single_signon.png" alt="" title="シングル・サインオン" width="610" height="545" class="alignnone size-full wp-image-5369" /></div>

<p>契約条項と輸出規制に同意できれば、それぞれのチェックボックスをオンにして「続行」を押す。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/terms_restrictions.png" alt="" title="条項および規制" width="610" height="855" class="alignnone size-full wp-image-5370" /></div>

<p>メディア・パック検索画面で「製品パック」に「Oracle Linux」、「プラットフォーム」に「x86 64 bit」を選び、「実行」を押す。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/media_pack_search.png" alt="" title="メディア・パック検索" width="610" height="417" class="alignnone size-full wp-image-5371" /></div>

<p>Oracle Linux 4.4 から6.2までいろいろ表示されるので、Oracle Linux Release 6 Update 2 Media Pack for x86_64 (64 bit) を選び、「続行」を押す。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/media_pack_search_results.png" alt="" title="メディア・パック検索結果" width="610" height="610" class="alignnone size-full wp-image-5372" /></div>

<p>Oracle Linux Release 6 Update 2 for x86_64 (64 Bit) の「ダウンロード」を押せばV29459-01.isoというファイルがダウンロードできるので、それをDVDに焼こう。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/oracle_linux_release_6.png" alt="" title="Oracle Linux Release 6 Update 2 Media Pack for x86_64 (64 bit)" width="610" height="843" class="alignnone size-full wp-image-5374" /></div>

<p>DVDでマシンを起動したら、あとは Red Hat Enterprise Linux / CentOS / Scientific Linux と同様だ。Install or upgrade an existing system を選んでEnterキーを押すとグラフィカル・インストールが始まる。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/welcome.png" alt="" title="Welcome to Oracle Linux Server 6.2!" width="610" height="458" class="alignnone size-full wp-image-5376" /></div>

<p>しばらくしたらインストール・メディアのチェックをするかどうか聞かれるが、時間が掛かるのでボクはSkipを選択した。DVDの書込みが怪しい場合はチェックしておいたほうが良いだろう。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/disc_found.png" alt="" title="Disc Found" width="610" height="381" class="alignnone size-full wp-image-5377" /></div>

<p>グラフィカル・インストーラー「Anaconda」が起動するので、ボタン「Next」を押す。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/anaconda.png" alt="" title="Anaconda" width="610" height="458" class="alignnone size-full wp-image-5385" /></div>

<p>インストール中に使用する言語を選択する。Japanese（日本語）を選択して、ボタン「Next」を押す。つづいて接続しているキーボードのキー配列を選択する。ボクのは日本語106キーボードなので「日本語」を選択して、ボタン「次」を押す。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/keyboard.png" alt="" title="キーボードを選択" width="610" height="458" class="alignnone size-full wp-image-5386" /></div>

<p>普通の内蔵ハードディスクであれば、「Basic Storage Device」を選択して、ボタン「次」を押す。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/storage.png" alt="" title="ストレージデバイス" width="610" height="458" class="alignnone size-full wp-image-5392" /></div>

<p>ハードディスクが一度も初期化されていない場合は以下の警告が出るので、ボタン「はい。含まれていません。どのようなデータであっても破棄してください。」を押す。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/contain.png" alt="" title="データを含んでいるかもしれません" width="610" height="458" class="alignnone size-full wp-image-5393" /></div>

<p>ホスト名を設定したら、ボタン「ネットワークの設定」を押す。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/hostname.png" alt="" title="ホスト名" width="610" height="458" class="alignnone size-full wp-image-5395" /></div>

<p>System eth0 を選択して、ボタン「編集…」を押す。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/network.png" alt="" title="ネットワーク接続" width="610" height="458" class="alignnone size-full wp-image-5397" /></div>

<p>方式を「手動」に変更し、アドレス / ネットワーク / ゲートウェイ / DNSサーバー / ドメインを検索を設定して、ボタン「適用…」を押す。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/ipv4.png" alt="" title="IPv4のセッティング" width="610" height="458" class="alignnone size-full wp-image-5399" /></div>

<p>最初の言語で日本語を選んでおくと、地域も「アジア/東京」が最初から選ばれているので、そのままボタン「次」を押す。Microsoft Windows とデュアル・ブートにしない限り「システムクロックでUTCを使用」はオンのままで良いだろう。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/timezone.png" alt="" title="タイムゾーン" width="610" height="458" class="alignnone size-full wp-image-5400" /></div>

<p>rootユーザーのパスワードを設定して、ボタン「次」を押す。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/password.png" alt="" title="rootユーザーのパスワード" width="610" height="458" class="alignnone size-full wp-image-5402" /></div>

<p>「Create Custom Layout」を選択して、ボタン「次」を押す。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/custom_layout.png" alt="" title="Create Custom Layout" width="610" height="458" class="alignnone size-full wp-image-5404" /></div>

<p>今回作成するパーティションは以下のとおり。Oracle Linux でUEKを使う場合は、kernelとkernel-uekの2つをインストールすることになるので /boot は少し大きめにしておいたほうが安心だ。なお、<a href="http://www.idema.org/?page_id=98">Advanced Format</a> なハードディスクは正しくパーティションを作成できないので、インストールの前に <a href="http://rewse.jp/blog/p/2466">複眼中心: Advanced Format Technology を使用したHDDをLinuxで正しくパーティション</a> に従ってパーティションを事前に切っておくことを勧める。</p>

<table>
<tr>
<th>デバイス名</th>
<th>容量</th>
<th>用途</th>
</tr>
<tr>
<td>/dev/xvda1</td>
<td>512MB</td>
<td>/boot</td>
</tr>
<tr>
<td>/dev/xvda2</td>
<td rowspan="3">19.5GB</td>
<td rowspan="3">LVM PV</td>
</tr>
</table>

<p>ボタン「作成」を押して、「標準パーティション」を選択して、ボタン「作成」を押す。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/standard_partition.png" alt="" title="標準パーティション" width="610" height="458" class="alignnone size-full wp-image-5407" /></div>

<p>マウントポイントを「/boot」、ファイルシステムを「ext4」、サイズを「512」、追加容量オプションを「固定容量」、基本パーティションにするをチェックして、ボタン「OK」を押す。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/boot_partition.png" alt="" title="/boot" width="610" height="458" class="alignnone size-full wp-image-5408" /></div>

<p>/boot ができたら再びボタン「作成」を押して、「LVM物理ボリューム」を選択して、ボタン「作成する」を押す。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/lvm_pv.png" alt="" title="LVM物理ボリューム" width="610" height="458" class="alignnone size-full wp-image-5409" /></div>

<p>ファイルシステムを「physical volume (LVM)」、追加容量オプションを「最大許容量まで使用」、基本パーティションにするをチェックして、ボタン「OK」を押す。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/pv_partition.png" alt="" title="物理ボリュームの追加" width="610" height="458" class="alignnone size-full wp-image-5411" /></div>

<p>LVMの物理ボリュームができたら、つづいてここにLVMを使ってパーティションを作成していく。LVMを使用したパーティション構成は以下のとおり。</p>

<table>
<tr>
<th>PV</th>
<th>VG名</th>
<th>LV名</th>
<th>容量</th>
<th>マウント・ポイント</th>
</tr>
<tr>
<td rowspan="8">/dev/xvda2</td>
<td rowspan="8">VGsystem</td>
<td>LVroot</td>
<td>1024MB</td>
<td>/</td>
</tr>
<tr>
<td>LVhome</td>
<td>1024MB</td>
<td>/home</td>
</tr>
<tr>
<td>LVopt</td>
<td>128MB</td>
<td>/opt</td>
</tr>
<tr>
<td>LVtmp</td>
<td>2048MB</td>
<td>/tmp</td>
</tr>
<tr>
<td>LVusr</td>
<td>1024MB</td>
<td>/usr</td>
</tr>
<tr>
<td>LVlocal</td>
<td>128MB</td>
<td>/usr/local</td>
</tr>
<tr>
<td>LVvar</td>
<td>1024MB</td>
<td>/var</td>
</tr>
<tr>
<td>LVswap</td>
<td>2048MB</td>
<td>スワップ領域</td>
</tr>
</table>

<p>物理ボリューム (PV) が1つなのでボリューム・グループ (VG) も1つとして、そこにすべての論理ボリューム (LV) を作成する。今回インストールするOSで使用するメモリーは1024MBの予定なので、/tmp とスワップ領域はメモリー容量の2倍の2048MBとした。また、物理エクステント (PE) がデフォルトの32MBだと一つのLVサイズは最大2TBになってしまって最近の大容量HDDではちょっと不安なので、最大8TBまで対応できる128MBにPEを変更することで最小LVサイズも128MBになっている。</p>

<p>ボタン「作成」を押したら、LVを作成するにはまずボリューム・グループ (VG) が必要なので、「LVMボリュームグループ」を選択して、ボタン「作成する」を押す。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/lvm_vg.png" alt="" title="LVMボリュームグループ" width="610" height="458" class="alignnone size-full wp-image-5413" /></div>

<p>ボリュームグループ名を「VGsystem」、物理エクステントを「128MB」、使用する物理ボリュームを「xvda2」にして、ボタン「追加」を押して論理ボリュームを追加する。すべてが追加できたらボタン「OK」を押す。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/vg_partition.png" alt="" title="ボリュームグループ" width="610" height="458" class="alignnone size-full wp-image-5415" /></div>

<p>これにて当初予定していたすべてのパーティションが作成された。ボタン「次」を押すとフォーマットの警告が出るのでフォーマットする。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/format.png" alt="" title="フォーマット" width="610" height="458" class="alignnone size-full wp-image-5447" /></div>

<p>ブートローダーについてはデフォルトから変更する点は特にないので、そのままボタン「次」を押す。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/boot_loader.png" alt="" title="ブートローダー" width="610" height="458" class="alignnone size-full wp-image-5418" /></div>

<p>インストールするパッケージ・グループを選択できるが、インストールするパッケージ数を最少にしたかったためMinimalを選択し、「今すぐカスタマイズ」を選択してボタン「次」を押す。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/repository.png" alt="" title="リポジトリ" width="610" height="458" class="alignnone size-full wp-image-5419" /></div>

<p>インストールするパッケージ数を最少にしたかったため、すべてのチェックを外してボタン「次」を押すとインストールが始まる。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/package.png" alt="" title="パッケージ" width="610" height="458" class="alignnone size-full wp-image-5420" /></div>

<p>しばらくするとインストールが終わり、以下の画面が表示される。DVDを取り出してボタン「再起動」を押す。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/congrats.png" alt="" title="おめでとうございます" width="610" height="458" class="alignnone size-full wp-image-5422" /></div>

<p>再起動が終わると、以下のような画面が表示される。Gnomeをインストールした人はグラフィカルなログイン画面が表示されるだろう。カーネルのバージョンにuekとついていることからも分かるが、デフォルトでは Unbreakable Enterprise Kernel Release 1 で起動する。</p>

<pre class="screen">Oracle Linux Server release 6.2
Kernel 2.6.32-300.3.1.el6uek.x86_64 on an x86_64

zulu.rewse.jp login:</pre>

<p>Red Hat 互換カーネルで起動したい場合は、起動時のGrubメニューで Oracle Linux Server (2.6.32-220.el6.x86_64) を選ぶか、永続的に変更したい場合は /etc/grub/grub.conf の<code>default</code>を書き換える。

<pre class="brush: plain; first-line: 10; highlight: [10,11]; title: /etc/grub/grub.conf; notranslate">#default=0
default=1</pre>

<p>Oracle Public Yum Server が使えるように設定ファイルをダウンロードする。</p>

<pre class="screen">[root@zulu ~]# cd /etc/yum.repos.d
[root@zulu yum.repos.d]# curl -O http://public-yum.oracle.com/public-yum-ol6.repo
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
104  1461  104  1461    0     0   2437      0 --:--:-- --:--:-- --:--:--  7689</pre>

<p>デフォルトでは Unbreakable Enterprise Kernel Release 2 が含まれるol6_UEK_latestリポジトリは無効になっているので、UEK R2 を使いたい場合は有効にする。</p>

<pre class="brush: plain; first-line: 29; highlight: [34,35]; title: ; notranslate">[ol6_UEK_latest]
name=Latest Unbreakable Enterprise Kernel for Oracle Linux $releasever ($basearch)
baseurl=http://public-yum.oracle.com/repo/OracleLinux/OL6/UEK/latest/$basearch/
gpgkey=http://public-yum.oracle.com/RPM-GPG-KEY-oracle-ol6
gpgcheck=1
#enabled=0
enabled=1</pre>

<p>以下のコマンドを実行するとErrataなどが Oracle Public Yum Server から取得され、OSが最新の状態となる。</p>

<pre class="screen">[root@zulu ~]# yum update
ol6_UEK_latest                                           |  951 B     00:00
ol6_UEK_latest/primary                                   | 344 kB     00:05
ol6_UEK_latest                                                            22/22
......</pre>

<p>なお、ボクの一部の環境ではkernel-uek-2.6.32-300.3.1.el6uek.x86_64では /boot に少しでも書き込むと以下のようにジャーナルが必ず壊れて /boot が読込みのみで再マウントされてしまうという問題が発生し、/boot に書き込めないとkernel-uekのアップデートできないという状況に陥ってしまったため、kernel-2.6.32-220.el6.x86_64で起動してからkernel-uekを更新した。更新後のkernel-uek-2.6.39-100.5.1.el6uek.x86_64では問題は起きない。</p>

<pre class="screen">end_request: I/O error, dev xvda, sector 526400
Aborting journal on device xvda1-8.
EXT4-fs error (device xvda1): ext4_journal_start_sb: Detected aborted journal
EXT4-fs (xvda1): Remounting filesystem read-only</pre>]]></content:encoded>
			<wfw:commentRss>http://rewse.jp/blog/p/5325/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>RapidSSL証明書購入からApache / Postfix / Dovecotでの設定まで</title>
		<link>http://rewse.jp/blog/p/5156</link>
		<comments>http://rewse.jp/blog/p/5156#comments</comments>
		<pubDate>Wed, 21 Mar 2012 13:24:43 +0000</pubDate>
		<dc:creator>Tats Shibata</dc:creator>
				<category><![CDATA[mail]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://rewse.jp/blog/?p=5156</guid>
		<description><![CDATA[<p>HTTPS / SMTP over SSL/TLS (SMTPS) / IMAP over SSL/TLS (IMAPS) / POP over SSL/TLS (POPS) を使用するには署名つきSSL証明書が必要だ。利用者が限られたサービスでは自己署名した、いわゆるオレオレ証明書でSSLを実現することも不可能ではないが、ボクは年間10.95ドル（913円）で<a href="http://www.rapidssl.com/">RapidSSL</a>を利用している。</p>

<p>RapidSSLは<a href="http://www.geotrust.co.jp/">GeoTrust</a>の最安ブランドで、GeoTrustは<a href="https://www.verisign.co.jp/">VeriSign</a>グループのひとつである。メール一通だけの確認なので手軽な一方、信用度はそれほど高くはないが、どこが発行しているかどうかを気にしてSSL通信しているユーザーはほとんどいないので、EV証明書（Webブラウザーのアドレス・バーに所有者名が出るやつ）ほどはいらないのであれば、悪くない選択だろう。</p> <a href="http://rewse.jp/blog/p/5156">続きを読む <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<div class="eyecatch imgholder"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/secure_connection.png" alt="" title="Secure Connection" width="332" height="312" class="alignnone size-full wp-image-5170" /></div>

<p>HTTPS / SMTP over SSL/TLS (SMTPS) / IMAP over SSL/TLS (IMAPS) / POP over SSL/TLS (POPS) を使用するには署名つきSSL証明書が必要だ。利用者が限られたサービスでは自己署名した、いわゆるオレオレ証明書でSSLを実現することも不可能ではないが、ボクは年間10.95ドル（913円）で<a href="http://www.rapidssl.com/">RapidSSL</a>を利用している。</p>

<p>RapidSSLは<a href="http://www.geotrust.co.jp/">GeoTrust</a>の最安ブランドで、GeoTrustは<a href="https://www.verisign.co.jp/">VeriSign</a>グループのひとつである。メール一通だけの確認なので手軽な一方、信用度はそれほど高くはないが、どこが発行しているかどうかを気にしてSSL通信しているユーザーはほとんどいないので、EV証明書（Webブラウザーのアドレス・バーに所有者名が出るやつ）ほどはいらないのであれば、悪くない選択だろう。</p>

<p>RapidSSLのルート証明書は2010年10月10日以降 <a href="https://www.geotrust.com/resources/root_certificates/certificates/GeoTrust_Global_CA.cer">GeoTrust Global CA</a> だが、それ以前と同様に <a href="https://www.geotrust.com/resources/root_certificates/certificates/Equifax_Secure_Certificate_Authority.cer">Equifax Secure Certificate Authority</a> をルート証明書にするクロス・ルート設定をすることもできる。携帯電話も最近の機種であればこの2つのどちらにも対応しているが、一部の<a href="http://www.android.com/">Android</a>がなにげに GeoTrust Global CA に対応していないので、Equifax Secure Certificate Authority をルート証明書にしたほうが良いだろう。会社から支給されている <a href="http://www.lg.com/jp/mobile-phones/all-phones/LG-L-04C.jsp">DOCOMO LG Optimus chat L-04C</a> は Android 2.2.2 にも関わらず、<a href="https://play.google.com/store/apps/details?id=info.guardianproject.cacert">CACertMan</a>で確認したところ GeoTrust Global CA には対応していなかった。<a href="http://www.apple.com/jp/iphone/">Apple iPhone</a> は <a href="http://support.apple.com/kb/HT3580?viewlocale=ja_JP">Apple: iOS 3.x: 信用できるルート証明書の一覧</a> によると、少なくとも iOS 3 からはどちらの証明書にも対応している。</p>
<span id="more-5156"></span>
<p>RapidSSLは直販だと1年契約で49ドル（4085円）だが代理店経由だともっと安く、ボクは<a href="https://www.namecheap.com/">Namecheap.com</a>で1年契約10.95ドル（896円）で購入した。上部メニューから SSL CERTIFICATES &gt; GeoTrust SSL Certificates で、RapidSSL を Add to Cart すれば良い。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/geotrust_ssl_certificates.png" alt="" title="GeoTrust SSL Certificates" width="610" height="525" class="alignnone size-full wp-image-5193" /></div>

<p>購入が完了したら秘密鍵と署名要求 (CSR) を作成しよう。以下は <a href="https://knowledge.rapidssl.com/support/ssl-certificate-support/index?page=content&#038;actp=CROSSLINK&#038;id=so6411">RapidSSL: Generate CSR for Apache-SSL</a> をベースに <a href="http://www.scientificlinux.org/">Scientific Linux</a> (SL) 6.2 を使用して作成しているが、<a href="http://www.jp.redhat.com/rhel/">Red Hat Enterprise Linux</a> (RHEL) / <a href="http://www.centos.org/">CentOS</a> / <a href="http://www.oracle.com/jp/technologies/linux/">Oracle Linux</a> でも同様だろう。</p>

<p>RapidSSL指定の方法や /etc/pki/tls/certs/Makefile を使った方法で秘密鍵を作成すると、鍵を使用するたびにパスワード入力が必要になり、SSLを使用する <a href="http://httpd.apache.org/">Apache HTTP Server</a> などを起動するたびにパスワード入力が必要になってしまうため、以下のような方法でパスワードなしの秘密鍵を作成する。2048ビットの鍵が必要なので、<code>2048</code>を必ずつけよう。</p>

<pre class="screen">[root@zulu ~]# openssl genrsa 2048 &gt; /etc/pki/tls/private/rewse.jp.2012.key
Generating RSA private key, 2048 bit long modulus
.+++
...........................................+++
e is 65537 (0x10001)</pre>

<p>つづいてCSRを作成する。Common Name はSSLでアクセスするときのサーバー名と一致しなければならない。つまり、Webなら<code>www.rewse.jp</code>、メールなら<code>mail.rewse.jp</code>などだ。<code>rewse.jp</code>のようにWebもメールも同一マシンで、サブドメインを使用せずにアクセスする場合は、1つの証明書で両方に使える。Email Address / A challenge password / An optional company name は空白のままにしよう。</p>

<pre class="screen">[root@zulu ~]# openssl req -new -key /etc/pki/tls/private/rewse.jp.2012.key -out /etc/pki/tls/certs/rewse.jp.2012.csr
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]:<kbd>JP</kbd>
State or Province Name (full name) []:<kbd>Tokyo</kbd>
Locality Name (eg, city) [Default City]:<kbd>Nakano-ku</kbd>
Organization Name (eg, company) [Default Company Ltd]:<kbd>Rewse Lab.</kbd>
Organizational Unit Name (eg, section) []:<kbd>[Enter]</kbd>
Common Name (eg, your name or your server's hostname) []:<kbd>rewse.jp</kbd>
Email Address []:<kbd>[Enter]</kbd>

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:<kbd>[Enter]</kbd>
An optional company name []:<kbd>[Enter]</kbd></pre>

<p>@namecheap.comから Namecheap.com Order Summary というメールが届いているはずなので、そのメールにある <a href="https://manage.www.namecheap.com/myaccount/ssl-list.asp?from=summaryemail">SSL listing page</a> から Activate Now をクリックし、Select web server を Apache + OpenSSL にして、Enter csr に先ほど作ったCSRをコピペする。</p>

<pre class="screen">[root@zulu ~]# cat /etc/pki/tls/certs/rewse.jp.2012.csr
-----BEGIN CERTIFICATE REQUEST-----
MIICnjCCAYYCAQAwWTELMAkGA1UEBhMCSlAxDjAMBgNVBAgMBVRva3lvMRIwEAYD
VQQHDAlOYWthbm8ta3UxEzARBgNVBAoMClJld3NlIExhYi4xETAPBgNVBAMMCHJl
......</pre>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/certificate_order_form.png" alt="" title="Certificate Order Form" width="610" height="419" class="alignnone size-full wp-image-5217" /></div>

<p>承認者のメールアドレスを選択する。ボクの環境ではpostmasterはrootのエイリアスとして指定されているので、こちらを選択した。事前に手元のメーラーから送信して、ちゃんと受信できるか試しておくと良いだろう。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/approver_email.png" alt="" title="Approver Email" width="610" height="414" class="alignnone size-full wp-image-5196" /></div>

<p>指定したアドレスに@geotrust.comから RapidSSL Certificate Request Confirmation というメールが届く。記載のURLをクリックすると以下のような画面になり、「承認します」をクリックすると署名つき証明書が発行される。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/order_approval.png" alt="" title="RapidSSL 注文の確認および承認" width="610" height="700" class="alignnone size-full wp-image-5218" /></div>

<p>再び@geotrust.comから Subject: <var>rewse.jp</var> RapidSSL Order: <var>9999999</var> Complete というメールが届き、Web Server CERTIFICATE というところに自分のドメイン名の署名つきSSL証明書が載っている。これを /etc/pki/tls/certs/rewse.jp.2012.crt にコピペし、有効期限を見てみよう。Validity Not After というのがこの証明書の有効期限だ。</p>

<pre class="screen">[root@zulu ~]# openssl x509 -text -in /etc/pki/tls/certs/rewse.jp.2012.crt | head
Certificate:
    Data:
        Version: 3 (0x2)
        Serial Number: 357021 (0x5729d)
        Signature Algorithm: sha1WithRSAEncryption
        Issuer: C=US, O=GeoTrust, Inc., CN=RapidSSL CA
        Validity
            Not Before: Mar  2 03:31:57 2012 GMT
            Not After : May  4 00:09:01 2013 GMT
        Subject: serialNumber=T4rtQlx61TWkscNTbJ3BfaWVGonKLh48, C=JP, O=rewse.jp, OU=GT29814907, OU=See www.rapidssl.com/resources/cps
 (c)12, OU=Domain Control Validated - RapidSSL(R), CN=rewse.jp</pre>

 <p>Apache 2.2 でSSLを設定する方法は <a href="https://knowledge.rapidssl.com/support/ssl-certificate-support/index?page=content&#038;actp=CROSSLINK&#038;id=SO6252">RapidSSL: Install certificate in Apache</a> に載っている。Subject: <var>rewse.jp</var> RapidSSL Order: <var>9999999</var> Complete メールに載っている中間認証局 (INTERMEDIATE CA) は ルート証明書が GeoTrust Global CA のもののため、GeoTrust Global CA → RapidSSL CA → rewse.jpというツリーになるが、このページに載っている<a href="https://knowledge.rapidssl.com/library/VERISIGN/ALL_OTHER/RapidSSL%20Intermediate/RapidSSL_CA_bundle.pem">intermediate_file</a>を使うと、Equifax Secure Certificate Authority → GeoTrust Global CA → RapidSSL CA → rewse.jpというツリーになる。先述のとおり、Android対策でintermediate_fileからコピペして /etc/pki/tls/certs/ca-rapidssl.2012.crt とするのがオススメだ。</p>

<p>ここまでで作成した秘密鍵 / 署名つき証明書 / 中間CA証明書を設定する。</p>

<pre class="brush: plain; first-line: 107; highlight: [113,121,131]; title: /etc/httpd/conf.d/ssl.conf; notranslate">#   Server Certificate:
# Point SSLCertificateFile at a PEM encoded certificate.  If
# the certificate is encrypted, then you will be prompted for a
# pass phrase.  Note that a kill -HUP will prompt again.  A new
# certificate can be generated using the genkey(1) command.
#SSLCertificateFile /etc/pki/tls/certs/localhost.crt
SSLCertificateFile /etc/pki/tls/certs/rewse.jp.2012.crt

#   Server Private Key:
#   If the key is not combined with the certificate, use this
#   directive to point at the key file.  Keep in mind that if
#   you've both a RSA and a DSA private key you can configure
#   both in parallel (to also allow the use of DSA ciphers, etc.)
#SSLCertificateKeyFile /etc/pki/tls/private/localhost.key
SSLCertificateKeyFile /etc/pki/tls/private/rewse.jp.2012.key

#   Server Certificate Chain:
#   Point SSLCertificateChainFile at a file containing the
#   concatenation of PEM encoded CA certificates which form the
#   certificate chain for the server certificate. Alternatively
#   the referenced file can be the same as SSLCertificateFile
#   when the CA certificates are directly appended to the server
#   certificate for convinience.
#SSLCertificateChainFile /etc/pki/tls/certs/server-chain.crt
SSLCertificateChainFile /etc/pki/tls/certs/ca-rapidssl.2012.crt</pre>

<p>Apacheを再起動したら、<a href="https://knowledge.geotrust.com/support/knowledge-base/index?page=content&#038;id=SO9557&#038;actp=LIST">Geotrust Certificate Installation Checker</a> でSuccessfulが出ることを確認しよう。また、<a href="http://www.google.co.jp/chrome/">Google Chrome</a> for Mac でURLの左にある鍵アイコンをクリックし、証明書情報ボタンを押すと以下のようなツリーを見ることができる。<a href="http://windows.microsoft.com/ja-JP/internet-explorer/products/ie/home">Internet Explorer</a> / <a href="http://mozilla.jp/firefox/">Mozilla Firefox</a> / Google Chrome for Windows / <a href="http://www.apple.com/jp/safari/">Apple Safari</a> では正しくクロス・ルートに設定していても GeoTrust Global CA がルート証明書に見えてしまうので注意しよう。</p>

<div class="imgholder"><img src="http://rewse.jp/blog/rsrc/uploads/2012/03/certificates.png" alt="" title="Certificates" width="427" height="83" class="alignnone size-full wp-image-5222" /></div>

<p>Postfix 2.3.3/2.6.6 で SMTP over SSL/TLS (SMTPS) を行う場合は中間CA証明書を含めた署名つき証明書を作成する必要がある。</p>

<pre class="screen">[root@zulu ~]# cd /etc/pki/tls/certs
[root@zulu ~]# cat rewse.jp.2012.crt ca-rapidssl.2012.crt &gt; rewse.jp.withintermediate.2012.crt</pre>

<pre class="brush: plain; title: /etc/postfix/main.cf; notranslate">smtpd_tls_cert_file = /etc/pki/tls/certs/rewse.jp.withintermediate.2012.crt
smtpd_tls_key_file = /etc/pki/tls/private/rewse.jp.2012.key</pre>

<p>同様にDovecotで IMAP over SSL/TLS (IMAPS) / POP over SSL/TLS (POPS) を行う場合は、この中間CA証明書を含めた署名つき証明書を指定する。以下は Dovecot 2.0.9 での設定方法だ。<code>&lt;</code>を忘れずに。</p>

<pre class="brush: plain; first-line: 12; highlight: [14,15]; title: /etc/devecot/conf.d/10-ssl.conf; notranslate">#ssl_cert = &lt;/etc/pki/dovecot/certs/dovecot.pem
#ssl_key = &lt;/etc/pki/dovecot/private/dovecot.pem
ssl_cert = &lt;/etc/pki/tls/certs/rewse.jp.withintermediate.2012.crt
ssl_key = &lt;/etc/pki/tls/private/rewse.jp.key</pre>

<p>以下は Dovecot 1.0.7 での設定方法だ。こちらは<code>&lt;</code>が必要ない。</p>

<pre class="brush: plain; first-line: 88; highlight: [92,93]; title: /etc/dovecot.conf; notranslate"># PEM encoded X.509 SSL/TLS certificate and private key. They're opened before
# dropping root privileges, so keep the key file unreadable by anyone but
# root. Included doc/mkcert.sh can be used to easily generate self-signed
# certificate, just make sure to update the domains in dovecot-openssl.cnf
ssl_cert_file = /etc/pki/tls/certs/rewse.jp.withintermediate.2012.crt
ssl_key = /etc/pki/tls/private/rewse.jp.key</pre>]]></content:encoded>
			<wfw:commentRss>http://rewse.jp/blog/p/5156/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Scientific Linux 6.1 に Zabbix 1.8.10 をインストール</title>
		<link>http://rewse.jp/blog/p/4378</link>
		<comments>http://rewse.jp/blog/p/4378#comments</comments>
		<pubDate>Thu, 23 Feb 2012 12:40:58 +0000</pubDate>
		<dc:creator>Tats Shibata</dc:creator>
				<category><![CDATA[linux]]></category>
		<category><![CDATA[software]]></category>

		<guid isPermaLink="false">http://rewse.jp/blog/?p=4378</guid>
		<description><![CDATA[<p>自宅の統合監視ツールをHobbit (現<a href="http://xymon.sourceforge.net/">Xymon</a>) から<a href="http://www.zabbix.com/jp/">Zabbix</a>に変更した。Xymonは手軽に導入できるのは良いのだけど、独自の監視項目を加えようとしたりちょっとカスタマイズしようと思うとデバッグ機能が弱かったりしてすごく面倒なので、柔軟性のあるZabbixに乗り換えることにした。オープンソースの統合監視というと<a href="http://www.nagios.org/">Nagios</a>が有名だけど、そのままでは履歴やグラフ機能が弱いのと、設定がかなり面倒なので採用しなかった。統合監視ツールの比較は <a href="http://thinkit.co.jp/free/article/0706/21/4/">ThinkIT: オープンソース統合監視ツール導入指南</a> が参考になるだろう。</p>

<p>以下は <a href="http://www.scientificlinux.org/">Scientific Linux</a> (SL) 6.1 にインストールする方法だが、<a href="http://www.jp.redhat.com/rhel/">Red Hat Enterprise Linux</a> (RHEL) / <a href="http://www.centos.org/">CentOS</a> / <a href="http://www.oracle.com/jp/technologies/linux/">Oracle Linux</a> でも同様だろう。ZabbixのRPMは<a href="http://www.zabbix.com/jp/download.php">Zabbix純正</a> / <a href="http://www.zabbix.jp/modules/download1/">ZABBIX-JP製</a> / <a href="http://download.fedora.redhat.com/pub/epel/6/x86_64/repoview/zabbix.html">EPEL製</a>などがあるが、Yumリポジトリがあって国内での利用者が多いZABBIX-JP製を利用することにした。データベースには <a href="http://www-jp.mysql.com/products/community/">MySQL Community Edition</a> を使用する。MySQLをインストールしていない場合は <a href="http://rewse.jp/blog/p/4370">複眼中心: Scientific Linux 6.1 に MySQL 5.1.52 をインストール</a> を参照してほしい。</p> <a href="http://rewse.jp/blog/p/4378">続きを読む <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<div class="imgholder eyecatch"><img src="http://rewse.jp/blog/rsrc/uploads/2012/01/zabbix.png" alt="" title="Zabbix" width="500" height="131" class="alignnone size-full wp-image-4391" /></div>

<p>自宅の統合監視ツールをHobbit (現<a href="http://xymon.sourceforge.net/">Xymon</a>) から<a href="http://www.zabbix.com/jp/">Zabbix</a>に変更した。Xymonは手軽に導入できるのは良いのだけど、独自の監視項目を加えようとしたりちょっとカスタマイズしようと思うとデバッグ機能が弱かったりしてすごく面倒なので、柔軟性のあるZabbixに乗り換えることにした。オープンソースの統合監視というと<a href="http://www.nagios.org/">Nagios</a>が有名だけど、そのままでは履歴やグラフ機能が弱いのと、設定がかなり面倒なので採用しなかった。統合監視ツールの比較は <a href="http://thinkit.co.jp/free/article/0706/21/4/">ThinkIT: オープンソース統合監視ツール導入指南</a> が参考になるだろう。</p>

<p>以下は <a href="http://www.scientificlinux.org/">Scientific Linux</a> (SL) 6.1 にインストールする方法だが、<a href="http://www.jp.redhat.com/rhel/">Red Hat Enterprise Linux</a> (RHEL) / <a href="http://www.centos.org/">CentOS</a> / <a href="http://www.oracle.com/jp/technologies/linux/">Oracle Linux</a> でも同様だろう。ZabbixのRPMは<a href="http://www.zabbix.com/jp/download.php">Zabbix純正</a> / <a href="http://zabbix.jp/documents/download">ZABBIX-JP製</a> / <a href="http://dl.fedoraproject.org/pub/epel/6/x86_64/repoview/zabbix.html">EPEL製</a>などがあるが、Yumリポジトリがあって国内での利用者が多いZABBIX-JP製を利用することにした。データベースには <a href="http://www-jp.mysql.com/products/community/">MySQL Community Edition</a> を使用する。MySQLをインストールしていない場合は <a href="http://rewse.jp/blog/p/4370">複眼中心: Scientific Linux 6.1 に MySQL 5.1.52 をインストール</a> を参照してほしい。</p>

<p>Zabbixは大きく分けると3つのコンポーネントで構成される。Zabbixサーバーは本体と言えるもので、各種監視結果を管理し、データベースに保存する。Zabbix Web インターフェースはデータベースに保存された情報をWebに表示する。Zabbixエージェントはインストールされたクライアント・マシンのリソース情報などを取得し、Zabbixサーバーに送信する。これら3つのコンポーネントとデータベースはそれぞれ別々のマシンにインストールすることも可能だが、このエントリーでは1台のマシンにすべてインストールしている。</p>
<span id="more-4378"></span>
<p>まずはZABBIX-JPのYumリポジトリを追加する。最新のzabbix-jp-releaseのバージョンは <a href="http://www.zabbix.jp/binaries/relatedpkgs/">http://www.zabbix.jp/binaries/relatedpkgs/</a> から確認してほしい。</p>

<pre class="screen">[root@oscar ~]# rpm -ivh http://www.zabbix.jp/binaries/relatedpkgs/rhel6/x86_64/zabbix-jp-release-6-5.noarch.rpm
http://www.zabbix.jp/binaries/relatedpkgs/rhel6/x86_64/zabbix-jp-release-6-5.noarch.rpm を取得中
警告 zabbix-jp-release-6-5.noarch.rpm: ヘッダ V4 DSA/SHA1 Signature, key ID f32904ff: NOKEY
準備中...                ########################################### [100%]
   1:zabbix-jp-release      ########################################### [100%]</pre>

<p>yum-priorities用の設定も追加した。EPELにもZabbixのパッケージがあるので、EPELも使っているのであればそれより優先される小さなpriority値にしておくのが良いだろう。</p>

<pre class="brush: plain; highlight: [7,15]; title: /etc/yum.repos.d/zabbix-jp.repo; notranslate">[zabbix-jp]
name=ZABBIX-JP - $basearch
baseurl=http://www.zabbix.jp/binaries/zabbix/zabbix-1.8/rhel6/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-JP
priority=15
......
[zabbix-jp-relatedpkgs]
name=ZABBIX-JP relatedpkgs - $basearch
baseurl=http://www.zabbix.jp/binaries/relatedpkgs/rhel6/$basearch/
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-JP
gpgcheck=1
priority=15</pre>

<h4>Zabbixサーバーのインストール</h4>

<p>MySQL対応のZabbixサーバーをインストールする。</p>

<pre class="screen">[root@oscar ~]# yum install zabbix-server-mysql
.......
================================================================================
 Package              Arch    Version              Repository              Size
================================================================================
Installing:
 zabbix-server-mysql  x86_64  1.8.10-1.el6.JP      zabbix-jp              343 k
Installing for dependencies:
 OpenIPMI-libs        x86_64  2.0.16-12.el6        sl                     474 k
 fping                x86_64  2.4b2-16.el6.JP      zabbix-jp-relatedpkgs   31 k
 iksemel              x86_64  1.4-2.el6.JP         zabbix-jp-relatedpkgs   47 k
 lm_sensors-libs      x86_64  3.1.1-10.el6         sl                      36 k
 net-snmp             x86_64  1:5.5-31.el6         sl                     297 k
 net-snmp-libs        x86_64  1:5.5-31.el6         sl                     1.5 M
 unixODBC             x86_64  2.2.14-11.el6        sl                     378 k
 zabbix               x86_64  1.8.10-1.el6.JP      zabbix-jp               14 k
 zabbix-server        x86_64  1.8.10-1.el6.JP      zabbix-jp              268 k
......</pre>

<p>MySQLにzabbixデーターベースとzabbixユーザーを作成する。今回の環境ではMySQLとZabbixサーバーが同じマシンなので、localhostから接続するzabbixユーザーのみに権限を与えている。</p>

<pre class="screen">[root@oscar ~]# mysql -u root -p
Enter password: <kbd><var>password</var></kbd>
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 13
Server version: 5.1.52-log Source distribution

Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
This software comes with ABSOLUTELY NO WARRANTY. This is free software,
and you are welcome to modify and redistribute it under the GPL v2 license

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql&gt; <kbd>CREATE DATABASE zabbix;</kbd>
Query OK, 1 row affected (0.05 sec)

mysql&gt; <kbd>GRANT ALL PRIVILEGES ON zabbix.* TO zabbix@localhost IDENTIFIED BY '<var>password</var>';</kbd>
Query OK, 0 rows affected (0.05 sec)

mysql&gt; <kbd>FLUSH PRIVILEGES;</kbd>
Query OK, 0 rows affected (0.01 sec)

mysql&gt; <kbd>EXIT</kbd>
Bye</pre>

<p>Zabbixの初期データをMySQLに読み込む。</p>

<pre class="screen">[root@oscar ~]# mysql -u zabbix -p zabbix &lt; /usr/share/doc/zabbix-server-1.8.10/schema/mysql.sql
Enter password: <kbd><var>password</var></kbd>
[root@oscar ~]# mysql -u zabbix -p zabbix &lt; /usr/share/doc/zabbix-server-1.8.10/data/data.sql
Enter password: <kbd><var>password</var></kbd>
[root@oscar ~]# mysql -u zabbix -p zabbix &lt; /usr/share/doc/zabbix-server-1.8.10/data/images_mysql.sql
Enter password: <kbd><var>password</var></kbd></pre>

<p>データベースの設定をZabbixサーバーの設定ファイルに反映させる。</p>

<pre class="brush: plain; first-line: 99; highlight: [106,107,116]; title: /etc/zabbix/zabbix_server.conf; notranslate">### Option: DBUser
# Database user. Ignored for SQLite.
#
# Mandatory: no
# Default:
# DBUser=

#DBUser=root
DBUser=zabbix
......
### Option: DBPassword
# Database password. Ignored for SQLite.
# Comment this line if no password is used.
#
# Mandatory: no
# Default:
# DBPassword=
DBPassword=password</pre>

<p>OS起動時にZabbixサーバーが自動起動するようにして、Zabbixサーバーを起動する。</p>

<pre class="screen">[root@oscar ~]# chkconfig zabbix-server on
[root@oscar ~]# service zabbix-server start
Starting zabbix server:                                    [  OK  ]</pre>

<h4>Webインターフェースのインストール</h4>

<p>MySQL対応のWebインターフェースをインストールする。</p>

<pre class="screen">[root@oscar ~]# yum install zabbix-web-mysql
......
================================================================================
 Package               Arch        Version               Repository        Size
================================================================================
Installing:
 zabbix-web-mysql      x86_64      1.8.10-1.el6.JP       zabbix-jp         12 k
Installing for dependencies:
 apr                   x86_64      1.3.9-3.el6_1.2       sl-security      122 k
 apr-util              x86_64      1.3.9-3.el6_0.1       sl                86 k
 apr-util-ldap         x86_64      1.3.9-3.el6_0.1       sl                15 k
 freetype              x86_64      2.3.11-6.el6_1.6      sl-security      357 k
 httpd                 x86_64      2.2.15-9.sl6.2        sl-security      812 k
 httpd-tools           x86_64      2.2.15-9.sl6.2        sl-security       68 k
 libX11                x86_64      1.3-2.el6             sl               581 k
 libX11-common         noarch      1.3-2.el6             sl               187 k
 libXau                x86_64      1.0.5-1.el6           sl                21 k
 libXpm                x86_64      3.5.8-2.el6           sl                58 k
 libjpeg               x86_64      6b-46.el6             sl               133 k
 libpng                x86_64      2:1.2.46-1.el6_1      sl-security      180 k
 libxcb                x86_64      1.5-1.el6             sl                99 k
 libxslt               x86_64      1.1.26-2.el6          sl               449 k
 mailcap               noarch      2.1.31-1.1.el6        sl                26 k
 php                   x86_64      5.3.3-3.el6           sl               1.1 M
 php-bcmath            x86_64      5.3.3-3.el6           sl                31 k
 php-cli               x86_64      5.3.3-3.el6           sl               2.2 M
 php-common            x86_64      5.3.3-3.el6           sl               520 k
 php-gd                x86_64      5.3.3-3.el6           sl               102 k
 php-mbstring          x86_64      5.3.3-3.el6           sl               451 k
 php-mysql             x86_64      5.3.3-3.el6           sl                77 k
 php-pdo               x86_64      5.3.3-3.el6           sl                71 k
 php-xml               x86_64      5.3.3-3.el6           sl                98 k
 zabbix-web            x86_64      1.8.10-1.el6.JP       zabbix-jp        4.2 M
......</pre>

<p>そのままでも動作するが、サーバーのメモリーに余裕があればPHPの設定値をZabbix推奨値に変更しよう。</p>

<pre class="brush: plain; first-line: 13; highlight: [13,14,16,17,18,19,20,21,22,23]; title: /etc/httpd/conf.d/zabbix.conf; notranslate">#   php_value max_execution_time 300
    php_value max_execution_time 600
    php_value date.timezone Asia/Tokyo
#   php_value memory_limit 128M
    php_value memory_limit 256M
#   php_value post_max_size 16M
    php_value post_max_size 32M
#   php_value upload_max_filesize 2M
    php_value upload_max_filesize 16M
#   php_value max_input_time 300
    php_value max_input_time 600
    php_value mbstring.func_overload 6</pre>

<p>OS起動時に Apache HTTP Server が自動起動するようにして、Apache HTTP Server を起動する。</p>

<pre class="screen">
[root@oscar ~]# chkconfig httpd on
[root@oscar ~]# service httpd start
httpd を起動中:                                            [  OK  ]</pre>

<p>Webブザウラーから <code>http://<var>hostname</var>/zabbix/</code> にアクセスすると、Introductionページが表示される。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/01/zabbixsetup01.png" alt="" title="Zabbix Setup: Introduction" width="610" height="472" class="alignnone size-full wp-image-4809" /></div>

<p>2. License agreement を読み、承諾なら I agree をチェックし、ボタン「Next」を押す。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/01/zabbixsetup02.png" alt="" title="Zabbix Setup: License agreement" width="610" height="472" class="alignnone size-full wp-image-4811" /></div>

<p>3. Check of pre-requisites で、すべての Current value がRequired以上でOkが表示されていることを確認する。上記で /etc/httpd.conf/zabbix.conf を変更している場合はRecommend以上になっているはずだ。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/01/zabbixsetup03.png" alt="" title="Zabbix Setup: Check of pre-requirements" width="610" height="472" class="alignnone size-full wp-image-4812" /></div>

<p>4. Configure DB connection で、Userを<code>zabbix</code>、Passwordを<code><var>password</var></code>に変更し、ボタン「Test connection」を押す。Okが出たらボタン「Next」を押す。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/01/zabbixsetup04.png" alt="" title="Zabbix Setup: Configure DB connection" width="610" height="472" class="alignnone size-full wp-image-4813" /></div>

<p>ZabbixサーバーとWebインターフェースは同じマシンなので、5. Zabbix server detail では特に設定変更する必要はない。そのままボタン「Next」を押す。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/01/zabbixsetup05.png" alt="" title="Zabbix Setup: Zabbix server details" width="610" height="472" class="alignnone size-full wp-image-4814" /></div>

<p>6. Pre-Installation summary で設定を確認し、ボタン「Next」を押す。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/01/zabbixsetup06.png" alt="" title="Zabbix Setup: Pre-Installation summary" width="610" height="472" class="alignnone size-full wp-image-4815" /></div>

<p>SELinuxが有効だと /usr/share/zabbix/conf/zabbix.conf.php はapacheユーザーから書き込めないので、ボタン「Save configuration file」を押して構成ファイルをダウンロードし、それを /etc/zabbix/zabbix.conf.php に写す。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/01/zabbixsetup07.png" alt="" title="Zabbix Setup: Install" width="610" height="472" class="alignnone size-full wp-image-4816" /></div>

<pre class="brush: php; title: /etc/zabbix/zabbix.conf.php; notranslate">&lt;?php
// Zabbix GUI configuration file
global $DB;

$DB[&quot;TYPE&quot;]             = 'MYSQL';
$DB[&quot;SERVER&quot;]           = 'localhost';
$DB[&quot;PORT&quot;]             = '0';
$DB[&quot;DATABASE&quot;]         = 'zabbix';
$DB[&quot;USER&quot;]             = 'zabbix';
$DB[&quot;PASSWORD&quot;]         = 'password';
// SCHEMA is relevant only for IBM_DB2 database
$DB[&quot;SCHEMA&quot;]           = '';

$ZBX_SERVER             = 'localhost';
$ZBX_SERVER_PORT        = '10051';
$ZBX_SERVER_NAME        = '';

$IMAGE_FORMAT_DEFAULT   = IMAGE_FORMAT_PNG;
?&gt;</pre>

<p>写しおえたらボタン「Retry」を押す。Okが出たらボタン「Next」を押す。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/01/zabbixsetup07.1.png" alt="" title="Zabbix Setup: Install" width="610" height="472" class="alignnone size-full wp-image-4817" /></div>

<p>8. Finish で初期設定は終わり。ボタン「Finish」を押すと、Zabbixのログイン画面が表示される。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/01/zabbixsetup08.png" alt="" title="Zabbix Setup: Finish" width="754" height="583" class="alignnone size-full wp-image-4818" /></div>

<p>なお、/etc/zabbix/zabbix.conf.php の所有者がapacheになっているので、不正な書き込みが行われないようにrootに変更しておこう。</p>

<pre class="screen">[root@oscar ~]# chown root:root /etc/zabbix/zabbix.conf.php
[root@oscar ~]# chmod 644 /etc/zabbix/zabbix.conf.php</pre>

<h4>Zabbixエージェントのインストール</h4>

<p>Zebbixエージェントをインストールする。</p>

<pre class="screen">[root@oscar ~]# yum install zabbix-agent
......
================================================================================
 Package             Arch          Version               Repository        Size
================================================================================
Installing:
 zabbix-agent        x86_64        1.8.10-1.el6.JP       zabbix-jp        217 k
......</pre>

<p>設定ファイルを編集する。今回はZabbixエージェントとZabbixサーバーが同じなので<code>Server</code>値は変更しないが、異なる場合はこれを変更する。127.0.0.1ままの場合、サーバー側で設定するクライアントのIPアドレスも127.0.0.1にする必要があることとは注意しよう。<code>Hostname</code>はエージェントをインストールしたマシンのホスト名か分かりやすい一意の名前にしておく。<code>ListenIP</code>はなにも設定しなければすべてのIPアドレスで待ち受ける。</p>

<pre class="brush: plain; first-line: 77; highlight: [97,98,107]; title: /etc/zabbix/zabbix_agentd.conf; notranslate">
### Option: Server
# List of comma delimited IP addresses (or hostnames) of Zabbix servers.
# No spaces allowed. First entry is used for receiving list of and sending active checks.
# If IPv6 support is enabled then '127.0.0.1', '::127.0.0.1', '::ffff:127.0.0.1' are treated equally.
#
# Mandatory: yes
# Default:
# Server=

Server=127.0.0.1
......
### Option: Hostname
# Unique, case sensitive hostname.
# Required for active checks and must match hostname as configured on the server.
# Value is acquired from HostnameItem if undefined.
#
# Mandatory: no
# Default:
# Hostname=

#Hostname=Zabbix server
Hostname=oscar
......
### Option: ListenIP
# List of comma delimited IP addresses that the agent should listen on.
#
# Mandatory: no
# Default:
# ListenIP=0.0.0.0

#ListenIP=127.0.0.1</pre>

<p>OS起動時にZabbixエージェントが自動起動するようにして、 Zabbixエージェントを起動する。</p>

<pre class="screen">[root@oscar ~]# chkconfig zabbix-agent on
[root@oscar ~]# service zabbix-agent start
Starting zabbix agent:                                     [  OK  ]</pre>

<h4>動作確認</h4>

<p>http://<var>hostname</var>/zabbix/ に、アカウント名「Admin」、パスワード「zabbix」でログインする。</p>

<div class="imgholder-l"><img src="http://rewse.jp/blog/rsrc/uploads/2012/01/zabbixlogin.png" alt="" title="Zabbix ログイン" width="610" height="472" class="alignnone size-full wp-image-4823" /></div>

<p>Zabbixサーバーが起動しているのに、メニュー「監視データ &gt; ダッシュボード」のダイアログ「Zabbixサーバの状態」の「Zabbixサーバの起動」が「いいえ」になっている場合はSELinuxがブロックしている可能性がある。<code>httpd_can_network_connect</code>を有効にしよう。</p>

<pre class="screen">[root@oscar ~]# setsebool -P httpd_can_network_connect 1</pre>

<p>同様に、SELinuxが有効な環境ではfpingとfping6がブロックされてしまうので、以下のようなTEファイルを用意してポリシーを変更した。独自のTEファイルを作成する場合は <a href="http://rewse.jp/blog/p/4825">複眼中心: Scientific Linux 6 でのSELinux管理コマンドまとめ</a> を参照してほしい。</p>

<pre class="brush: plain; title: /usr/share/selinux/devel/zabbixlocal.te; notranslate">module zabbixlocal 1.0;

require {
  type ping_t;
  type initrc_tmp_t;
  class file { getattr read };
}

#============= ping_t ==============
allow ping_t initrc_tmp_t:file { getattr read };</pre>

<pre class="screen">[root@oscar ~]# cd /usr/share/selinux/devel
[root@oscar devel]# make
......
[root@oscar devel]# semodule -i zabbixlocal.pp</pre>

<p>tracerouteのパスが異なるので、メニュー「管理 &gt; スクリプト」から、Tracerouteのコマンドを <code>/usr/bin/traceroute {HOST.CONN}</code> から <code>/bin/traceroute {HOST.CONN}</code> に変更する。</p>

<p>Zabbixサーバー自身を監視する設定はすでに行われているものの無効になっているので、メニュー「設定 &gt; ホスト」から名前「Zabbix server」のステータス「無効」を押すことで有効にする。少ししてからWebブラウザーを再読み込みすると、エージェントの状態のZアイコンが緑になるはずだ。赤であれば、それをマウス・オーバーすると原因が表示される。</p>

<p>メニュー「監視データ &amp; 最新データ」を見ると、いろいろなリソース情報が表示できるはずだ。ひととおり動くことを確認したら、Adminユーザーのパスワードを変更しておこう。右上のリンク「プロファイル」を押した画面のボタン「パスワード変更」でパスワードを変更する。</p>

<p>あとは監視項目（アイテム）の設定と異常時のトリガー設定、トリガー時のアクションの設定を行っていく。最初からテンプレートが用意されているのでそれを適用するだけでも良いが、Zabbixはいろいろできるので自分でいろいろ監視項目を増やしたくなることだろう。これらの設定方法は<a href="http://www.zabbix.com/jp/documentation.php">公式マニュアル</a>か<a href="http://www.amazon.co.jp/gp/product/4774142131/ref=as_li_ss_tl?ie=UTF8&#038;tag=rewse-22&#038;linkCode=as2&#038;camp=247&#038;creative=7399&#038;creativeASIN=4774142131">寺島広大『Zabbix統合監視「実践」入門』（技術評論社）</a>を参照してほしい。ボクのテンプレートは <a href="https://github.com/rewse/zabbix">GitHub: rewse / zabbix</a> で公開している。</p>]]></content:encoded>
			<wfw:commentRss>http://rewse.jp/blog/p/4378/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Scientific Linux 6.1 で OpenLDAP 2.4.23 をインストール</title>
		<link>http://rewse.jp/blog/p/4843</link>
		<comments>http://rewse.jp/blog/p/4843#comments</comments>
		<pubDate>Tue, 21 Feb 2012 13:16:50 +0000</pubDate>
		<dc:creator>Tats Shibata</dc:creator>
				<category><![CDATA[database]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[software]]></category>

		<guid isPermaLink="false">http://rewse.jp/blog/?p=4843</guid>
		<description><![CDATA[<p>ボクの環境では複数の仮想マシンが動いており、OS / Postfix / Devecot / Samba / Apache HTTP Server などがそれぞれ別々にパスワード管理していると面倒なので、LDAPで一元管理している。以下は OpenLDAP 2.4.23 を <a href="http://www.scientificlinux.org/">Scientifc Linux</a> (SL) 6.1 にインストールする方法だが、<a href="http://www.jp.redhat.com/rhel/">Red Hat Enterprise Linux</a> (RHEL) / <a href="http://www.centos.org/">CentOS</a> / <a href="http://www.oracle.com/jp/technologies/linux/">Oracle Linux</a> でも同様だろう。</p>

<p>OpenLDAP 2.3 から非推奨になっていたslapd.confは2.4でついに廃止され、slapd-configを使う方法だけになったのだが、slapd-configでの設定方法が <a href="http://www.openldap.org/doc/admin24/">OpenLDAP Software 2.4 Administrator&#8217;s Guide</a> を読んでも <a href="http://docs.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/6/html/Deployment_Guide/ch-Directory_Servers.html">Red Hat Enterprise Linux 6 Deployment Guide: Directory Servers</a> を読んでもさっぱり分からないので、この記事では従来のsplad.confをslapd-config用に変換するという手法を取っている。公式ガイドの <a href="http://www.openldap.org/doc/admin24/quickstart.html">A Quick-Start Guide</a> もslapd.confを変換して使っているので（おい）、それほど時代遅れって感じでもないと信じたい。</p> <a href="http://rewse.jp/blog/p/4843">続きを読む <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<div class="imgholder eyecatch"><img src="http://rewse.jp/blog/rsrc/uploads/2012/01/directory.png" alt="" title="Directory" width="434" height="332" class="alignnone size-full wp-image-4991" /></div>

<p>ボクの環境では複数の仮想マシンが動いており、OS / Postfix / Devecot / Samba / Apache HTTP Server などがそれぞれ別々にパスワード管理していると面倒なので、LDAPで一元管理している。以下は OpenLDAP 2.4.23 を <a href="http://www.scientificlinux.org/">Scientifc Linux</a> (SL) 6.1 にインストールする方法だが、<a href="http://www.jp.redhat.com/rhel/">Red Hat Enterprise Linux</a> (RHEL) / <a href="http://www.centos.org/">CentOS</a> / <a href="http://www.oracle.com/jp/technologies/linux/">Oracle Linux</a> でも同様だろう。</p>

<p>OpenLDAP 2.3 から非推奨になっていたslapd.confは2.4でついに廃止され、slapd-configを使う方法だけになったのだが、slapd-configでの設定方法が <a href="http://www.openldap.org/doc/admin24/">OpenLDAP Software 2.4 Administrator&rsquo;s Guide</a> を読んでも <a href="http://docs.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/6/html/Deployment_Guide/ch-Directory_Servers.html">Red Hat Enterprise Linux 6 Deployment Guide: Directory Servers</a> を読んでもさっぱり分からないので、この記事では従来のsplad.confをslapd-config用に変換するという手法を取っている。公式ガイドの <a href="http://www.openldap.org/doc/admin24/quickstart.html">A Quick-Start Guide</a> もslapd.confを変換して使っているので（おい）、それほど時代遅れって感じでもないと信じたい。</p>
<span id="more-4843"></span>
<p>そんなわけでインストール。インストール自体はRPMを入れるだけなので簡単だ。</p>

<pre class="screen">[root@oscar ~]# yum install openldap-servers openldap-clients
......
================================================================================
 Package                  Arch           Version               Repository  Size
================================================================================
Installing:
 openldap-clients         x86_64         2.4.23-15.el6         sl         157 k
 openldap-servers         x86_64         2.4.23-15.el6         sl         2.0 M
......</pre>

<p>LDAPサービスの管理者であるrootdnのパスワードを作成する。</p>

<pre class="screen">[root@oscar ~]# slappasswd
New password: <kbd><var>password</var></kbd>
Re-enter new password: <kbd><var>password</var></kbd>
{SSHA}2kMGre6X2HahyBu2pTQ/kGOgNamKsaVx</pre>

<p>slapd.confのサンプルとなるファイルをコピーし、<code>suffix</code> / <code>rootdn</code> / <code>rootpw</code>を設定する。<code>rootpw</code>は先ほど<code>slappasswd</code>で作成したものだ。</p>

<pre class="screen">[root@oscar ~]# cp -a /usr/share/openldap-servers/slapd.conf.obsolete /etc/openldap/slapd.conf</pre>

<pre class="brush: plain; first-line: 102; highlight: [103,104,106,107,113]; title: ; notranslate">
database  bdb
#suffix    &quot;dc=my-domain,dc=com&quot;
suffix    &quot;dc=rewse,dc=jp&quot;
checkpoint  1024 15
#rootdn    &quot;cn=Manager,dc=my-domain,dc=com&quot;
rootdn    &quot;cn=Manager,dc=rewse,dc=jp&quot;
# Cleartext passwords, especially for the rootdn, should
# be avoided.  See slappasswd(8) and slapd.conf(5) for details.
# Use of strong authentication encouraged.
# rootpw    secret
# rootpw    {crypt}ijFYNcSNctBYg
rootpw    {SSHA}2kMGre6X2HahyBu2pTQ/kGOgNamKsaVx</pre>

<p>加えてLDAPデータベースのアクセス権限を設定する。以下では、<code>userPassword</code>属性は自分自身のものであれば変更可能だが他人は認証にしか使えず、それ以外の属性は自分自身のものであれば変更可能だが他人は読込みしか行えない。</p>

<pre class="brush: plain; first-line: 137; highlight: [138,139,140,141,142,143,144,145,146,147,148,149,150,151,152]; title: /etc/openldap/slapd.conf; notranslate">
# allow onlu rootdn to read the monitor
#access to *
#        by dn.exact=&quot;cn=Manager,dc=my-domain,dc=com&quot; read
#        by * none
access to *
        by dn.exact=&quot;cn=Manager,dc=rewse,dc=jp&quot; read
        by * none

access to attrs=userPassword
  by self =rwcsx
  by anonymous auth
  by * none

access to *
  by self =rwcsx
  by * read</pre>

<p>作成したslapd.confが文法的に正しいかテストしよう。</p>

<pre class="screen">[root@oscar ~]# slaptest -f /etc/openldap/slapd.conf
config file testing succeeded</pre>

<p>すでに設定されているslapd-configの設定を削除し、<code>slaptest</code>でslapd.confの設定をslapd-configでの設定に変換する。その後、ファイル所有者を<code>ldap</code>に変更しよう。今後slapd.confを変更したら、この作業を毎回行う必要がある。</p>

<pre class="screen">[root@oscar ~]# rm -rf /etc/openldap/slapd.d/*
[root@oscar ~]# slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d
config file testing succeeded
[root@oscar ~]# chown -R ldap:ldap /etc/openldap/slapd.d</pre>

<p>OpenLDAPが内部で使用している <a href="http://www.oracle.com/jp/products/database/berkeley-db/">Oracle Berkeley DB</a> の設定ファイルのサンプルをコピーし、ファイル所有者を変更する。小規模環境ならサンプル・ファイルそのままで問題ないだろう。</p>

<pre class="screen">[root@oscar ~]# cp -a /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG
[root@oscar ~]# chown ldap:ldap /var/lib/ldap/DB_CONFIG</pre>

<p>OpenLDAPサーバーを起動し、OS起動時に同時起動するように設定する。</p>

<pre class="screen">[root@oscar ~]# service slapd start
slapd を起動中:                                            [  OK  ]
[root@oscar ~]# chkconfig slapd on</pre>

<p>LDAPデータベースの中身はまだ空っぽなので、ボクは以下のようなディレクトリをまずは用意した。</p>

<pre class="brush: plain; title: /var/lib/ldap/ldif/init.ldif; notranslate">dn: dc=rewse,dc=jp
objectClass: organization
objectClass: dcObject
o: Rewse Lab.
dc: rewse

dn: cn=Manager,dc=rewse,dc=jp
objectClass: organizationalRole
cn: Manager

dn: ou=People,dc=rewse,dc=jp
objectClass: organizationalUnit
ou: People

dn: ou=Services,dc=rewse,dc=jp
objectClass: organizationalUnit
ou: Services

dn: ou=Groups,dc=rewse,dc=jp
objectClass: organizationalUnit
ou: Groups

dn: ou=Machines,dc=rewse,dc=jp
objectClass: organizationalUnit
ou: Machines</pre>

<p>作成したLDIFを追加する。</p>

<pre class="screen">[root@oscar ~]# ldapadd -xW -D cn=Manager,dc=rewse,dc=jp -h localhost -f /var/lib/ldap/ldif/init.ldif
Enter LDAP Password: <kbd><var>password</var></kbd>
adding new entry "dc=rewse,dc=jp"

adding new entry "cn=Manager,dc=rewse,dc=jp"

adding new entry "ou=People,dc=rewse,dc=jp"

adding new entry "ou=Services,dc=rewse,dc=jp"

adding new entry "ou=Groups,dc=rewse,dc=jp"

adding new entry "ou=Machines,dc=rewse,dc=jp"</pre>

<p>正しく追加できたか確認し、問題なければOpenLDAPサーバーは一通り動作したことになる。</p>

<pre class="screen">[root@oscar ~]# ldapsearch -xW -D cn=Manager,dc=rewse,dc=jp -h localhost
Enter LDAP Password: <kbd><var>password</var></kbd>
# extended LDIF
#
# LDAPv3
# base <dc=rewse,dc=jp> (default) with scope subtree
# filter: (objectclass=*)
# requesting: ALL
#

# rewse.jp
dn: dc=rewse,dc=jp
objectClass: organization
objectClass: dcObject
o: Rewse Lab.
dc: rewse
......</pre>

<p>ちなみにslapd-configでさっぱり分からない点は「<code>cn=config</code>の<code>olcRootPW</code>を<code>ldapadd</code>するときのパスワードってなに？ パスワードなしだとログインできないし、/etc/openldap/slapd.d 以下は直接編集するなって書いてあるし……」と「<code>include samba.schema</code> ってLDIFにどうやってするの!?」の2つ。こんな基本的なことがマニュアルに書いてないなんて絶対おかしいよ。</p>]]></content:encoded>
			<wfw:commentRss>http://rewse.jp/blog/p/4843/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Scientific Linux 6.1 に MySQL 5.1.52 をインストール</title>
		<link>http://rewse.jp/blog/p/4370</link>
		<comments>http://rewse.jp/blog/p/4370#comments</comments>
		<pubDate>Wed, 15 Feb 2012 13:20:23 +0000</pubDate>
		<dc:creator>Tats Shibata</dc:creator>
				<category><![CDATA[database]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[software]]></category>

		<guid isPermaLink="false">http://rewse.jp/blog/?p=4370</guid>
		<description><![CDATA[<p>ボクは <a href="http://www-jp.mysql.com/products/community/">MySQL Community Edition</a> を<a href="http://ja.wordpress.org/">WordPress</a>と<a href="http://www.zabbix.com/jp/">Zabbix</a>で使用しているが、このように自宅でちょっと使う程度の小規模環境でとりあえずMySQLを動かす方法をメモしておく。以下は <a href="http://www.scientificlinux.org/">Scientific Linux</a> (SL) 6.1 にインストールする方法だが、<a href="http://www.jp.redhat.com/rhel/">Red Hat Enterprise Linux</a> (RHEL) / <a href="http://www.centos.org/">CentOS</a> / <a href="http://www.oracle.com/jp/technologies/linux/">Oracle Linux</a> でも同様だろう。</p>

<p>MySQLのRPMは各Linuxディストリビューションに含まれるもの、<a href="http://dev.mysql.com/downloads/mysql/">MySQL純正</a>、<a href="http://iuscommunity.org/">IUS Community</a> 製などがあるが、バージョンにこだわりがないのであればLinuxディストリビューションに含まれるものが依存性解決でトラブらないので簡単だろう。</p> <a href="http://rewse.jp/blog/p/4370">続きを読む <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<div class="imgholder eyecatch"><img src="http://rewse.jp/blog/rsrc/uploads/2012/01/mysql.png" alt="" title="MySQL" width="489" height="332" class="alignnone size-full wp-image-4393" /></div>

<p>ボクは <a href="http://www-jp.mysql.com/products/community/">MySQL Community Edition</a> を<a href="http://ja.wordpress.org/">WordPress</a>と<a href="http://www.zabbix.com/jp/">Zabbix</a>で使用しているが、このように自宅でちょっと使う程度の小規模環境でとりあえずMySQLを動かす方法をメモしておく。以下は <a href="http://www.scientificlinux.org/">Scientific Linux</a> (SL) 6.1 にインストールする方法だが、<a href="http://jp.redhat.com/products/enterprise-linux/">Red Hat Enterprise Linux</a> (RHEL) / <a href="http://www.centos.org/">CentOS</a> / <a href="http://www.oracle.com/jp/technologies/linux/">Oracle Linux</a> でも同様だろう。</p>

<p>MySQLのRPMは各Linuxディストリビューションに含まれるもの、<a href="http://dev.mysql.com/downloads/mysql/">MySQL純正</a>、<a href="http://iuscommunity.org/">IUS Community</a> 製などがあるが、バージョンにこだわりがないのであればLinuxディストリビューションに含まれるものが依存性解決でトラブらないので簡単だろう。</p>

<pre class="screen">[root@oscar ~]# yum install mysql-server
......
================================================================================
 Package               Arch          Version                    Repository
                                                                           Size
================================================================================
Installing:
 mysql-server          x86_64        5.1.52-1.el6_0.1           sl        8.1 M
Installing for dependencies:
 mysql                 x86_64        5.1.52-1.el6_0.1           sl        888 k
 perl-DBD-MySQL        x86_64        4.013-3.el6                sl        133 k
 perl-DBI              x86_64        1.609-4.el6                sl        704 k
......</pre>
<span id="more-4370"></span>
<p>MySQLのサーバー設定を変更する。搭載メモリーが1GBのマシンでは、ボクは以下のような値で始めている。</p>

<pre class="brush: plain; highlight: [2,3,4,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,35,38,39]; title: /etc/my.cnf; notranslate">[mysqld]
#datadir=/var/lib/mysql
datadir=/var/lib/mysql/data
log-bin=/var/lib/mysql/binlog/binlog
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
character-set-server=utf8
default-storage_engine=InnoDB
innodb_additional_mem_pool_size=5M
innodb_buffer_pool_size=262M
innodb_log_buffer_size=3M
innodb_log_file_size=52M
key_buffer_size=135M
myisam_sort_buffer_size=154M
query_cache_size=86M
read_buffer_size=64K
read_rnd_buffer_size=256K
sort_buffer_size=256K
tmp_table_size=154M
binlog_cache_size=1M
table_cache=302
thread_cache_size=8
slow_query_log=1
slow_query_log_file=/var/log/mysql/slow_query.log
long_query_time=2
expire_logs_days=3
myisam-recover=BACKUP,FORCE
skip_show_database
secure-auth
local-infile=0

[mysqld_safe]
log-error=/var/log/mysql/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

[mysql]
default-character-set=utf8</pre>

<p>また、忘れないうちにログのローテーションの設定も行っておこう。</p>

<pre class="brush: plain; title: /etc/logrotate.d/mysqld; notranslate">/var/log/mysqld.log {
  notifempty
  missingok
}</pre>

<p>必要なディレクトリを作成し、OS起動時にMySQLが自動起動するようにし、MySQLを起動する。</p>

<pre class="screen">[root@oscar ~]# mkdir /var/lib/mysql/data /var/lib/mysql/binlog
[root@oscar ~]# chown -R mysql:mysql /var/lib/mysql
[root@oscar ~]# chkconfig mysqld on
[root@oscar ~]# service mysqld start
MySQL データベースを初期化中:  Installing MySQL system tables...
OK
Filling help tables...
OK

To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system

PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:

/usr/bin/mysqladmin -u root password 'new-password'
/usr/bin/mysqladmin -u root -h oscar.rewse.jp password 'new-password'

Alternatively you can run:
/usr/bin/mysql_secure_installation

which will also give you the option of removing the test
databases and anonymous user created by default.  This is
strongly recommended for production servers.

See the manual for more instructions.

You can start the MySQL daemon with:
cd /usr ; /usr/bin/mysqld_safe &amp;

You can test the MySQL daemon with mysql-test-run.pl
cd /usr/mysql-test ; perl mysql-test-run.pl

Please report any problems with the /usr/bin/mysqlbug script!

                                                           [  OK  ]
mysqld を起動中:                                           [  OK  ]</pre>

<p>初期パスワード設定などは<code>mysql_secure_installation</code>を使うのが簡単だろう。</p>

<pre class="screen">[root@oscar ~]# mysql_secure_installation

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!

In order to log into MySQL to secure it, we'll need the current
password for the root user.  If you've just installed MySQL, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.</pre>

<p>MySQLのrootパスワードを設定する。</p>

<pre class="screen">Enter current password for root (enter for none): <kbd>[Enter]</kbd>
OK, successfully used password, moving on...
Setting the root password ensures that nobody can log into the MySQL
root user without the proper authorisation.

Set root password? [Y/n] <kbd>Y</kbd>
New password: <kbd><var>password</var></kbd>
Re-enter new password: <kbd><var>password</var></kbd>
Password updated successfully!
Reloading privilege tables..
 ... Success!</pre>

<p>通常は必要ない匿名ユーザーを削除する。</p>

<pre class="screen">By default, a MySQL installation has an anonymous user, allowing anyone
to log into MySQL without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n] <kbd>Y</kbd>
 ... Success!</pre>

<p>rootはリモートからログインできないようする。</p>

<pre class="screen">Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] <kbd>Y</kbd>
 ... Success!</pre>

<p>必要なければtestデータベースを削除する。</p>

<pre class="screen">By default, MySQL comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] <kbd>Y</kbd>
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!</pre>

<p>権限テーブルを再読み込みし、設定を即座に反映させる。</p>

<pre class="screen">Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] <kbd>Y</kbd>
 ... Success!

Cleaning up...

All done!  If you've completed all of the above steps, your MySQL
installation should now be secure.

Thanks for using MySQL!</pre>

<p>これでとりあえず動くMySQLは用意できた。つづいてバックアップを行うCronスクリプトを設置する。以下のソースコードは<a href="http://rewse.jp/license/2011.01.txt">BSDライセンスを元としたこちらのライセンス</a>に従って再頒布および使用ができる。このスクリプトの最新版は <a href="https://github.com/rewse/mysqlbackup.cron">GitHub: rewse / mysqlbackup.cron</a> にある。</p>

<pre class="brush: bash; title: /etc/cron.daily/0-mysqlbackup.cron; notranslate">#!/bin/sh

# Password for MySQL root
password=

target_dir=&quot;/var/lib/mysql/bak&quot;

mysqldump \
  --user=root \
  --password=$password \
  --single-transaction \
  --flush-logs \
  --default-character-set=utf8 \
  --all-databases \
  &gt; $target_dir/mysql.dump.new

if [ $? != 0 ]; then
  echo &quot;[ERROR] mysqldump was failed.&quot; 1&gt;&amp;2
  exit 1
fi

mv -f $target_dir/mysql.dump.new $target_dir/mysql.dump</pre>

<p>ボクの場合、データ量もそれほど大きくないことから、mysqldumpで表ロックをかけた状態で毎日フルバックアップしているが、そうも行かない場合は差分バックアップや <a href="http://www-jp.mysql.com/products/enterprise/backup.html">MySQL Enterprise Backup</a> を検討してほしい。ローカルに出力されたMySQLバックアップは、その後の<a href="https://github.com/rewse/backup.cron" title="GitHub: rewse / backup.cron">システム全体のバックアップ・スクリプト</a>で別サーバーにコピーされる。</p>]]></content:encoded>
			<wfw:commentRss>http://rewse.jp/blog/p/4370/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic page generated in 1.217 seconds. -->
<!-- Cached page generated by WP-Super-Cache on 2012-05-17 20:33:08 -->
<!-- Compression = gzip -->
