<?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://jfut.integ.jp/feed/" rel="self" type="application/rss+xml" />
	<link>http://jfut.integ.jp</link>
	<description></description>
	<lastBuildDate>Fri, 20 Apr 2012 02:15:44 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>RHEL 6 系で HP 製品のファームウェア更新時に file not found が出たら 別解</title>
		<link>http://jfut.integ.jp/2012/04/20/update-hp-firmware-error-on-rhel6-another/</link>
		<comments>http://jfut.integ.jp/2012/04/20/update-hp-firmware-error-on-rhel6-another/#comments</comments>
		<pubDate>Fri, 20 Apr 2012 02:09:04 +0000</pubDate>
		<dc:creator>jfut</dc:creator>
				<category><![CDATA[Admin]]></category>
		<category><![CDATA[Server]]></category>

		<guid isPermaLink="false">http://jfut.integ.jp/?p=1173</guid>
		<description><![CDATA[RHEL 6 系で HP ProLiant ML110 G6 の Lights-Out 100 Remote Management のファームウェアを更新しようとすると次のようなエラーが出る問題。 # chmod 700 [...]
関連する記事:<ol>
<li><a href='http://jfut.integ.jp/2012/03/18/update-hp-firmware-error-on-rhel6/' rel='bookmark' title='RHEL 6 系で HP 製品のファームウェア更新時に file not found が出たら'>RHEL 6 系で HP 製品のファームウェア更新時に file not found が出たら</a> <small>[2012-04-20 追記] もっと簡単な方法があったので別記事にまとめました。RHEL 6 系で HP 製品のファームウェア更新時に file not found...</small></li>
<li><a href='http://jfut.integ.jp/2005/12/04/apache-2-2-dav_svn%E3%81%8C%E3%82%A8%E3%83%A9%E3%83%BC-%E8%A7%A3%E6%B1%BA/' rel='bookmark' title='Apache 2.2 dav_svnがエラー (解決)'>Apache 2.2 dav_svnがエラー (解決)</a> <small> ...</small></li>
<li><a href='http://jfut.integ.jp/2006/12/16/sparc%E6%A9%9F%E3%81%AEtoshiba-dvd-rom-sd-m1401%E3%81%A7dvd%E3%81%8C%E3%83%96%E3%83%BC%E3%83%88%E3%81%97%E3%81%AA%E3%81%84/' rel='bookmark' title='Sparc機のTOSHIBA DVD-ROM SD-M1401でDVDがブートしない'>Sparc機のTOSHIBA DVD-ROM SD-M1401でDVDがブートしない</a> <small> ...</small></li>
</ol>]]></description>
			<content:encoded><![CDATA[				<div id="fswiki_content3" class="fswiki_content">
				<p>RHEL 6 系で HP ProLiant ML110 G6 の Lights-Out 100 Remote Management のファームウェアを更新しようとすると次のようなエラーが出る問題。</p>
				<pre># chmod 700 CP017117.scexe
# ./CP017117.scexe
./hpsetup: line 2: .: lo100.sh: file not found
Parameters are: --source /usr/local/src/hardware/lightsout
./hpsetup: line 7: lo100main: command not found
</pre>
				<p>以前書いた <a href="http://jfut.integ.jp/2012/03/18/update-hp-firmware-error-on-rhel6/">RHEL 6 系で HP 製品のファームウェア更新時に file not found が出たら</a> では、ファームウェアの更新インストーラを展開して実行していましたが、<a href="http://twitter.com/#!/satoh_fumiyasu">@satoh_fumiyasu</a> さんからアドバイスをいただきました。</p>
				<div class="otweet" style="background-image:url(http://a0.twimg.com/images/themes/theme7/bg.gif)">
				<div class="otweet_content">
				    <div class="otweet_header">
				        <div class="text">一時的に $PATH に「.」を含めると大丈夫かもしれない。中で $PATH を上書きしていたら駄目だけど。/ RHEL 6 系で HP 製品のファームウェア更新時に file not found が出たら <a href="http://t.co/GHdX0A03">http://t.co/GHdX0A03</a></div>
				        <div class="created_at"><a href="http://twitter.com/#!/satoh_fumiyasu/status/193144788059557888">2012/04/20 10:11:20</a> via <a href="http://twitter.com/tweetbutton" rel="nofollow">Tweet Button</a></div>
				    </div><!--end .otweet_header-->
				    <div class="otweet_footer">
				        <div class="profile_image"><a href="http://twitter.com/#!/satoh_fumiyasu"><img src="http://a0.twimg.com/profile_images/1980137886/x_normal.jpg" alt="satoh_fumiyasu" /></a></div>
				        <div class="name"><a href="http://twitter.com/#!/satoh_fumiyasu">佐藤文優 (fumiyas)</a></div>
				        <div class="screen_name">satoh_fumiyasu</div>
				    </div><!--end .otweet_footer-->
				</div><!--end .otweet_content-->
				</div><!--end .otweet-->
				<p>というわけで次のようにして試してみました。</p>
				<pre># PATH=${PATH}:. ./CP017117.scexe
Parameters are: --source /usr/local/src/hardware/lightsout
HP Lights Out 100 Offline Firmware Update Engine
     Copyright (c) 2009 - Hewlett Packard
-----------------------------------------------
Running with --source /usr/local/src/hardware/lightsout
Parsing --source /usr/local/src/hardware/lightsout
CHECKING: --source
CHECKING: /usr/local/src/hardware/lightsout
Found IPMI - checking results
Package 4.23 - currently at 4.22
Firmware binary payload is LdrImage.bin
Firmware package is version 4.23
Not forced - checking version
           -Update needed
Flashing firmware
HP Proliant Lights-Out 100 Flash Utility v1.2-00
Copyright (c) 2003, 2010 Hewlett-Packard Development Company, L.P.
[10:43:03] Validating Input File Run-time Image.
Validating Input File Image...................
[10:43:03] Run-time Image Checksum Validated
[10:43:03] Run-time Image Size (Bytes to Flash): 2071280
[10:43:03] Current BMC FW Revision: 4.22
*WARNING: FLASH PROCESS MAY TAKE A FEW MINUTES TO COMPLETE.
*WARNING: DO NOT CYCLE POWER OR IN ANY WAY INTERRUPT THE FLASH PROCESS.
Erasing Sectors...............................................................
Writing Sectors.............................................
Performing BMC Warm Reset...
Restoring BMC Sensors...
[10:45:49] Flash Process Complete.
[10:45:49] Current BMC FW Revision: 4.23
[10:45:49] Total elapsed time                                166.00 sec(s)
</pre>
				<p>上手く動きました。いちいちインストーラを展開する必要が無くなり、とても楽になりました。<a href="http://twitter.com/#!/satoh_fumiyasu">@satoh_fumiyasu</a> さんありがとうございます！</p>
				</div>
<p>関連する記事:<ol>
<li><a href='http://jfut.integ.jp/2012/03/18/update-hp-firmware-error-on-rhel6/' rel='bookmark' title='RHEL 6 系で HP 製品のファームウェア更新時に file not found が出たら'>RHEL 6 系で HP 製品のファームウェア更新時に file not found が出たら</a> <small>[2012-04-20 追記] もっと簡単な方法があったので別記事にまとめました。RHEL 6 系で HP 製品のファームウェア更新時に file not found...</small></li>
<li><a href='http://jfut.integ.jp/2005/12/04/apache-2-2-dav_svn%E3%81%8C%E3%82%A8%E3%83%A9%E3%83%BC-%E8%A7%A3%E6%B1%BA/' rel='bookmark' title='Apache 2.2 dav_svnがエラー (解決)'>Apache 2.2 dav_svnがエラー (解決)</a> <small> ...</small></li>
<li><a href='http://jfut.integ.jp/2006/12/16/sparc%E6%A9%9F%E3%81%AEtoshiba-dvd-rom-sd-m1401%E3%81%A7dvd%E3%81%8C%E3%83%96%E3%83%BC%E3%83%88%E3%81%97%E3%81%AA%E3%81%84/' rel='bookmark' title='Sparc機のTOSHIBA DVD-ROM SD-M1401でDVDがブートしない'>Sparc機のTOSHIBA DVD-ROM SD-M1401でDVDがブートしない</a> <small> ...</small></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://jfut.integ.jp/2012/04/20/update-hp-firmware-error-on-rhel6-another/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>RHEL 6 系で HP 製品のファームウェア更新時に file not found が出たら</title>
		<link>http://jfut.integ.jp/2012/03/18/update-hp-firmware-error-on-rhel6/</link>
		<comments>http://jfut.integ.jp/2012/03/18/update-hp-firmware-error-on-rhel6/#comments</comments>
		<pubDate>Sun, 18 Mar 2012 05:29:33 +0000</pubDate>
		<dc:creator>jfut</dc:creator>
				<category><![CDATA[Admin]]></category>
		<category><![CDATA[Server]]></category>

		<guid isPermaLink="false">http://jfut.integ.jp/?p=1147</guid>
		<description><![CDATA[[2012-04-20 追記] もっと簡単な方法があったので別記事にまとめました。RHEL 6 系で HP 製品のファームウェア更新時に file not found が出たら 別解 RHEL 6 系で HP ProLi [...]
関連する記事:<ol>
<li><a href='http://jfut.integ.jp/2012/04/20/update-hp-firmware-error-on-rhel6-another/' rel='bookmark' title='RHEL 6 系で HP 製品のファームウェア更新時に file not found が出たら 別解'>RHEL 6 系で HP 製品のファームウェア更新時に file not found が出たら 別解</a> <small>RHEL 6 系で HP ProLiant ML110 G6 の Lights-Out 100...</small></li>
<li><a href='http://jfut.integ.jp/2011/07/13/rhel-sl-centos-5-to-rhel-sl-centos-6/' rel='bookmark' title='RHEL/Scientific Linux/CentOS 5 から RHEL/Scientific Linux/CentOS 6 へ'>RHEL/Scientific Linux/CentOS 5 から RHEL/Scientific Linux/CentOS 6 へ</a> <small>概要 [2011-07-17追記]: sl-fastbugs　の国内リポジトリミラーを追加しました。 CentOS 6.0 がリリースされ、これから Red Hat Enterprise Linux...</small></li>
<li><a href='http://jfut.integ.jp/2012/02/16/scientific-linux-61-upgrade-to-62/' rel='bookmark' title='Scientific Linux 6.2 環境へ 6.1 環境からアップグレードする方法'>Scientific Linux 6.2 環境へ 6.1 環境からアップグレードする方法</a> <small>概要 Scientific Linux 6.2 (SL 6.2) が Beta 1 -&gt;...</small></li>
</ol>]]></description>
			<content:encoded><![CDATA[				<div id="fswiki_content12" class="fswiki_content">
				<ul>
				<li> [2012-04-20 追記] もっと簡単な方法があったので別記事にまとめました。<a href="http://jfut.integ.jp/2012/04/20/update-hp-firmware-error-on-rhel6-another/">RHEL 6 系で HP 製品のファームウェア更新時に file not found が出たら 別解</a></ll>
				</ul>
				<p>RHEL 6 系で HP ProLiant ML110 G6 の Lights-Out 100 Remote Management のファームウェアを更新しようとすると次のようなエラーが出ました。試した環境は、Scientific Linux 6.2 x86_64 です。</p>
				<pre># chmod 700 CP017117.scexe
# ./CP017117.scexe
./hpsetup: line 2: .: lo100.sh: file not found
Parameters are: --source /usr/local/src/hardware/lightsout
./hpsetup: line 7: lo100main: command not found
</pre>
				<p>最初、これが起きる原因が良く判らず、毎回 USB メモリを作ってブートして更新していました。でも、USB メモリで更新するのはマシンをそこそこの時間止めないといけないし、現地作業も面倒なので、原因を調べてみたら解決できたのでまとめます。</p>
				<p>まず原因は、RHEL 6 系になって、/bin/sh でシェルを起動した時に、「. ファイル名」で指定したファイル名を見つけられなくなっていることでした。RHEL 5 系では見つけられるので、bash のバージョンが 3 系から 4 系になって挙動が変わったのだと思います。/bin/bash でシェルを起動すれば動作するので、ファームウェアの更新インストーラを展開し、シェルの指定を書き換えて実行します。</p>
				<p>まずは展開します。特にヘルプなどないのですが、CP017117.scexe ファイルを less で見ると &#8211;unpack オプションが用意されていました。下記の例では、setup フォルダが作成され、そこに展開されます。</p>
				<pre># ./CP017117.scexe --unpack=setup
</pre>
				<p>実行シェルスクリプトである、hpsetup に書かれたシェルの指定を /bin/sh から /bin/bash に書き換えます。</p>
				<pre># cd setup
# perl -pi -e 's|#!/bin/sh|#!/bin/bash|' hpsetup
</pre>
				<p>そして、hpsetup を実行すれば無事更新されます。</p>
				<pre># ./hpsetup
Parameters are:
HP Lights Out 100 Offline Firmware Update Engine
     Copyright (c) 2009 - Hewlett Packard
-----------------------------------------------
Running with
Parsing
Found IPMI - checking results
Package 4.23 - currently at 4.22
Firmware binary payload is LdrImage.bin
Firmware package is version 4.23
Not forced - checking version
           -Update needed
Flashing firmware
HP Proliant Lights-Out 100 Flash Utility v1.2-00
Copyright (c) 2003, 2010 Hewlett-Packard Development Company, L.P.
[03:07:51] Validating Input File Run-time Image.
Validating Input File Image...................
[03:07:51] Run-time Image Checksum Validated
[03:07:51] Run-time Image Size (Bytes to Flash): 2071280
[03:07:51] Current BMC FW Revision: 4.22
*WARNING: FLASH PROCESS MAY TAKE A FEW MINUTES TO COMPLETE.
*WARNING: DO NOT CYCLE POWER OR IN ANY WAY INTERRUPT THE FLASH PROCESS.
Erasing Sectors...............................................................
Writing Sectors.............................................
Performing BMC Warm Reset...
Restoring BMC Sensors...
[03:10:15] Flash Process Complete.
[03:10:15] Current BMC FW Revision: 4.23
[03:10:15] Total elapsed time                                144.00 sec(s)
</pre>
				<p>これでアップデートが簡単にできるようになりました。</p>
				</div>
<p>関連する記事:<ol>
<li><a href='http://jfut.integ.jp/2012/04/20/update-hp-firmware-error-on-rhel6-another/' rel='bookmark' title='RHEL 6 系で HP 製品のファームウェア更新時に file not found が出たら 別解'>RHEL 6 系で HP 製品のファームウェア更新時に file not found が出たら 別解</a> <small>RHEL 6 系で HP ProLiant ML110 G6 の Lights-Out 100...</small></li>
<li><a href='http://jfut.integ.jp/2011/07/13/rhel-sl-centos-5-to-rhel-sl-centos-6/' rel='bookmark' title='RHEL/Scientific Linux/CentOS 5 から RHEL/Scientific Linux/CentOS 6 へ'>RHEL/Scientific Linux/CentOS 5 から RHEL/Scientific Linux/CentOS 6 へ</a> <small>概要 [2011-07-17追記]: sl-fastbugs　の国内リポジトリミラーを追加しました。 CentOS 6.0 がリリースされ、これから Red Hat Enterprise Linux...</small></li>
<li><a href='http://jfut.integ.jp/2012/02/16/scientific-linux-61-upgrade-to-62/' rel='bookmark' title='Scientific Linux 6.2 環境へ 6.1 環境からアップグレードする方法'>Scientific Linux 6.2 環境へ 6.1 環境からアップグレードする方法</a> <small>概要 Scientific Linux 6.2 (SL 6.2) が Beta 1 -&gt;...</small></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://jfut.integ.jp/2012/03/18/update-hp-firmware-error-on-rhel6/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Scientific Linux 6.2 環境へ 6.1 環境からアップグレードする方法</title>
		<link>http://jfut.integ.jp/2012/02/16/scientific-linux-61-upgrade-to-62/</link>
		<comments>http://jfut.integ.jp/2012/02/16/scientific-linux-61-upgrade-to-62/#comments</comments>
		<pubDate>Thu, 16 Feb 2012 04:12:46 +0000</pubDate>
		<dc:creator>jfut</dc:creator>
				<category><![CDATA[Admin]]></category>
		<category><![CDATA[Server]]></category>

		<guid isPermaLink="false">http://jfut.integ.jp/?p=1134</guid>
		<description><![CDATA[概要 Scientific Linux 6.2 (SL 6.2) が Beta 1 -&#62; Beta 2 -&#62; Release Candidate 1 -&#62; Release Candidate 2 を経て [...]
関連する記事:<ol>
<li><a href='http://jfut.integ.jp/2011/07/29/scientific-linux-60-upgrade-to-61/' rel='bookmark' title='Scientific Linux 6.0 環境を 6.1 環境へアップグレードする方法'>Scientific Linux 6.0 環境を 6.1 環境へアップグレードする方法</a> <small>概要 2011-07-29追記: アップデートすると 6.0 時代に設定した yum のリポジトリ設定が上書きされ、初期化されていました。詳細は Scientific Linux 6.1...</small></li>
<li><a href='http://jfut.integ.jp/2011/07/29/scientific-linux-61-yumrepositories/' rel='bookmark' title='Scientific Linux 6.1 での yum リポジトリ設定'>Scientific Linux 6.1 での yum リポジトリ設定</a> <small>今朝 Scientific Linux 6.0 環境を 6.1 環境へアップグレードする方法 を書きましたが、6.0 時代に設定した yum...</small></li>
<li><a href='http://jfut.integ.jp/2011/07/13/rhel-sl-centos-5-to-rhel-sl-centos-6/' rel='bookmark' title='RHEL/Scientific Linux/CentOS 5 から RHEL/Scientific Linux/CentOS 6 へ'>RHEL/Scientific Linux/CentOS 5 から RHEL/Scientific Linux/CentOS 6 へ</a> <small>概要 [2011-07-17追記]: sl-fastbugs　の国内リポジトリミラーを追加しました。 CentOS 6.0 がリリースされ、これから Red Hat Enterprise Linux...</small></li>
</ol>]]></description>
			<content:encoded><![CDATA[				<div id="fswiki_content23" class="fswiki_content">
				<h3> 概要</h3>
				<p>Scientific Linux 6.2 (SL 6.2) が Beta 1 -&gt; Beta 2 -&gt; Release Candidate 1 -&gt; Release Candidate 2 を経て本日リリースされました。</p>
				<ul>
				<li> <a href="http://www.scientificlinux.org/distributions/6x/62/">Scientific Linux &#8211; Scientific Linux 6.2</a>
				<ul>
				<li> Release Notes や Differences between SL6.1 and SL6.2、Changed RPM&#8217;s specific など、変更点がまとまっているので目を通しておきましょう。</ll>
				</ul>
				<p></ll>
				</ul>
				<p>前回の <a href="http://jfut.integ.jp/2011/07/29/scientific-linux-60-upgrade-to-61/">Scientific Linux 6.0 環境を 6.1 環境へアップグレードする方法</a> に続いて、6.1 環境から 6.2 環境へアップグレードする方法をまとめます。基本的に前回と一緒です。</p>
				<p>前回も書きましたが、以下、重要なのでおさらいです。</p>
				<p>Scientific Linux では /etc/yum.repos.d/sl.repo などで参照されている変数 $releasever の中身が 6 ではなく 6.1 とマイナーバージョンまで含めて定義されています。そのため、最新マイナーバージョンの yum リポジトリが参照されず、そのままでは自動的に 6.2 に更新することはできません。</p>
				<p>これは商用製品などで特定マイナーバージョンでないと動作保証が得られない環境がある方には嬉しい仕様です。以前仕事で携わったところで、環境構築をしている方々が RHEL 5.x では自動的にマイナーバージョンが上げることを把握しておらず、タイミング良く新しいマイナーバージョンがリリースされ、その夜の自動更新でバージョンが上がってしまい問題が発生したことがあったので、そういったマイナーバージョンを固定したい環境では役立つでしょう。</p>
				<p>一方で、ずっと古いマイナーバージョンのままにするのも良くないので、アップグレードして良いタイミングになったら次のようにしてアップグレードします。</p>
				<h3> 現在バージョンの確認</h3>
				<p>現在のバージョンを確認します。</p>
				<pre># cat /etc/redhat-release
Scientific Linux release 6.1 (Carbon)
# rpm -qa sl-release --qf '%{v}\n'
6.1
</pre>
				<p>変数 $release の中身が 6.1 になっています。</p>
				<h3> sl-release の更新</h3>
				<p>一気にすべてのパッケージを 6.2 のものに更新しても良いと思いますが、まずは sl-release だけを更新します。</p>
				<pre># yum --releasever=6.2 update sl-release
... 省略 ...
Dependencies Resolved

========================================================================================================================
 Package                         Arch                        Version                      Repository               Size
========================================================================================================================
Updating:
 sl-release                      x86_64                      6.2-1.1                      sl                       35 k

Transaction Summary
========================================================================================================================
Install       0 Package(s)
Upgrade       1 Package(s)

Is this ok [y/N]: y
Downloading Packages:
sl-release-6.2-1.1.x86_64.rpm                                                                    |  35 kB     00:00
... 省略 ...
Running Transaction
  Updating       : sl-release-6.2-1.1.x86_64                                                                        1/2
warning: /etc/yum.repos.d/sl.repo saved as /etc/yum.repos.d/sl.repo.rpmsave

Updated:
  sl-release.x86_64 0:6.2-1.1

Complete!
</pre>
				<h3> 更新されたバージョンの確認</h3>
				<p>更新されたバージョンを確認します。</p>
				<pre># cat /etc/redhat-release
Scientific Linux release 6.2 (Carbon)
# rpm -qa sl-release --qf '%{v}\n'
6.2
</pre>
				<p>6.2 になりました。</p>
				<h3> sl.repo の置き換え注意</h3>
				<p>今回のアップデートでは、sl-release を更新すると /etc/yum.repos.d/sl.repo が自動的に置き換わります。これにより、リポジトリ優先度設定や参照するリポジトリミラーの変更など、カスタマイズしていた内容がすべてリセットされるので要注意です。なお、古い sl.repo は、/etc/yum.repos.d/sl.repo.rpmsave として保存されています。</p>
				<p>具体的な変更点は、gpgkey の指定から RPM-GPG-KEY-dawson を削除し、RPM-GPG-KEY-sl6 と RPM-GPG-KEY-cern が追加されています。RPM-GPG-KEY-dawson は、Troy Dawson 氏の gpgkey だったようですが、同氏は Scientific Linux プロジェクトから離れたことで gpgkey も変更になったようです。ちなみに sl-other.repo にも RPM-GPG-KEY-dawson が使われていますが、そちらはまだ更新されていませんが、RPM-GPG-KEY-sl が一緒に定義されているので動作には問題ないようです。</p>
				<ul>
				<li> 参考: <a href="https://www.scientificlinux.org/documentation/gpg/">Scientific Linux &#8211; GPG Keys</a></li>
				<li> 参考: 6.1 と 6.2 におけるデフォルト設定の違い</ll>
				</ul>
				<pre># diff sl.repo.sl6.1 sl.repo.sl6.2
10c10
&lt; gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-sl file:///etc/pki/rpm-gpg/RPM-GPG-KEY-dawson
---
&gt; gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-sl file:///etc/pki/rpm-gpg/RPM-GPG-KEY-sl6 file:///etc/pki/rpm-gpg/RPM-GPG-KEY-cern
21c21
&lt; gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-sl file:///etc/pki/rpm-gpg/RPM-GPG-KEY-dawson
---
&gt; gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-sl file:///etc/pki/rpm-gpg/RPM-GPG-KEY-sl6 file:///etc/pki/rpm-gpg/RPM-GPG-KEY-cern
32,34c32
&lt; gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-sl file:///etc/pki/rpm-gpg/RPM-GPG-KEY-dawson
&lt;
&lt;
---
&gt; gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-sl file:///etc/pki/rpm-gpg/RPM-GPG-KEY-sl6 file:///etc/pki/rpm-gpg/RPM-GPG-KEY-cern
</pre>
				<p>必要に応じて、保存された旧設定である sl.repo.rpmsave を参考に再度カスタマイズしましょう。</p>
				<ul>
				<li> 参考: <a href="http://jfut.integ.jp/2011/07/29/scientific-linux-61-yumrepositories/">Scientific Linux 6.1 での yum リポジトリ設定</a></ll>
				</ul>
				<h3> すべてのパッケージを更新</h3>
				<p>最後に、残りのすべてのパッケージを更新します。</p>
				<pre># yum update
... 省略 ...
Transaction Summary
========================================================================================================================
Install       2 Package(s)
Upgrade     144 Package(s)

Total download size: 119 M
Is this ok [y/N]: y
</pre>
				<p>これで無事 Scientific Linux 6.2 環境へのアップグレードが完了しました。</p>
				<p>今日(2012-02-16)時点では、Scientific Linux 6.1 のリポジトリで既に RHEL 6.2 の更新を先取りした最新 Kernel まで更新されていたので、既にその最新 Kernel を使用していたのであれば OS ごと再起動しなくても良いですが、更新前に最新 Kernel を使っていなかった場合や、いろいろ更新されたのですっきりしたい方は一度 OS ごと再起動しておくと良いです。</p>
				</div>
<p>関連する記事:<ol>
<li><a href='http://jfut.integ.jp/2011/07/29/scientific-linux-60-upgrade-to-61/' rel='bookmark' title='Scientific Linux 6.0 環境を 6.1 環境へアップグレードする方法'>Scientific Linux 6.0 環境を 6.1 環境へアップグレードする方法</a> <small>概要 2011-07-29追記: アップデートすると 6.0 時代に設定した yum のリポジトリ設定が上書きされ、初期化されていました。詳細は Scientific Linux 6.1...</small></li>
<li><a href='http://jfut.integ.jp/2011/07/29/scientific-linux-61-yumrepositories/' rel='bookmark' title='Scientific Linux 6.1 での yum リポジトリ設定'>Scientific Linux 6.1 での yum リポジトリ設定</a> <small>今朝 Scientific Linux 6.0 環境を 6.1 環境へアップグレードする方法 を書きましたが、6.0 時代に設定した yum...</small></li>
<li><a href='http://jfut.integ.jp/2011/07/13/rhel-sl-centos-5-to-rhel-sl-centos-6/' rel='bookmark' title='RHEL/Scientific Linux/CentOS 5 から RHEL/Scientific Linux/CentOS 6 へ'>RHEL/Scientific Linux/CentOS 5 から RHEL/Scientific Linux/CentOS 6 へ</a> <small>概要 [2011-07-17追記]: sl-fastbugs　の国内リポジトリミラーを追加しました。 CentOS 6.0 がリリースされ、これから Red Hat Enterprise Linux...</small></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://jfut.integ.jp/2012/02/16/scientific-linux-61-upgrade-to-62/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>Scientific Linux 6.1 での yum リポジトリ設定</title>
		<link>http://jfut.integ.jp/2011/07/29/scientific-linux-61-yumrepositories/</link>
		<comments>http://jfut.integ.jp/2011/07/29/scientific-linux-61-yumrepositories/#comments</comments>
		<pubDate>Fri, 29 Jul 2011 04:17:56 +0000</pubDate>
		<dc:creator>jfut</dc:creator>
				<category><![CDATA[Admin]]></category>
		<category><![CDATA[Server]]></category>

		<guid isPermaLink="false">http://jfut.integ.jp/?p=1097</guid>
		<description><![CDATA[今朝 Scientific Linux 6.0 環境を 6.1 環境へアップグレードする方法 を書きましたが、6.0 時代に設定した yum のリポジトリ設定が上書きされ、初期化されていました。どうやら SL 6.1 で [...]
関連する記事:<ol>
<li><a href='http://jfut.integ.jp/2011/07/13/rhel-sl-centos-5-to-rhel-sl-centos-6/' rel='bookmark' title='RHEL/Scientific Linux/CentOS 5 から RHEL/Scientific Linux/CentOS 6 へ'>RHEL/Scientific Linux/CentOS 5 から RHEL/Scientific Linux/CentOS 6 へ</a> <small>概要 [2011-07-17追記]: sl-fastbugs　の国内リポジトリミラーを追加しました。 CentOS 6.0 がリリースされ、これから Red Hat Enterprise Linux...</small></li>
<li><a href='http://jfut.integ.jp/2012/02/16/scientific-linux-61-upgrade-to-62/' rel='bookmark' title='Scientific Linux 6.2 環境へ 6.1 環境からアップグレードする方法'>Scientific Linux 6.2 環境へ 6.1 環境からアップグレードする方法</a> <small>概要 Scientific Linux 6.2 (SL 6.2) が Beta 1 -&gt;...</small></li>
<li><a href='http://jfut.integ.jp/2011/07/29/scientific-linux-60-upgrade-to-61/' rel='bookmark' title='Scientific Linux 6.0 環境を 6.1 環境へアップグレードする方法'>Scientific Linux 6.0 環境を 6.1 環境へアップグレードする方法</a> <small>概要 2011-07-29追記: アップデートすると 6.0 時代に設定した yum のリポジトリ設定が上書きされ、初期化されていました。詳細は Scientific Linux 6.1...</small></li>
</ol>]]></description>
			<content:encoded><![CDATA[				<div id="fswiki_content34" class="fswiki_content">
				<p>今朝 <a href="http://jfut.integ.jp/2011/07/29/scientific-linux-60-upgrade-to-61/">Scientific Linux 6.0 環境を 6.1 環境へアップグレードする方法</a> を書きましたが、<strong>6.0 時代に設定した yum のリポジトリ設定が上書きされ、初期化されていました</strong>。どうやら SL 6.1 で yum のリポジトリ設定ファイルの構成が変わったようです。</p>
				<ul>
				<li> <a href="http://www.scientificlinux.org/distributions/6x/61/differences">Differences between SL6.0 and SL6.1</a></ll>
				</ul>
				<p>具体的には次のようになりました。</p>
				<ul>
				<li> /etc/yum.repos.d/sl.repo が上書きされた。
				<ul>
				<li> 古い設定は /etc/yum.repos.d/sl-other.repo.rpmsave に保存されています。</li>
				<li> 中身が sl, sl-security(元々 sl-updates.repo にあった設定), sl-source になった</li>
				</ul>
				</li>
				<li> /etc/yum.repos.d/sl-updates.repo が無くなった。
				<ul>
				<li> 古い設定は /etc/yum.repos.d/sl-updates.repo.rpmsave に保存されています。</li>
				<li> 旧 sl, sl-updates に含まれていた sl-fastbugs を含む他のリポジトリは yum-conf-sl-other パッケージを別途入れなければならなくなった。</ll>
				</ul>
				<p></ll>
				</ul>
				<p>というわけで、SL 6.1 になったら次のようにインストール・設定するようにしました。普段設定しているやり方で紹介します。6.0 から更新された方も設定が上書きされているので同じように設定すれば良いです。</p>
				<h3> yum に関連したパッケージのインストール</h3>
				<p>yum に関連したパッケージをインストールします。</p>
				<ul>
				<li> yum-conf-sl-other: sl-fastbugs を使うためにインストールします。</li>
				<li> yum-plugin-fastestmirror: ミラーリポジトリリストのうち最もレスポンスの早いミラーリポジトリを使うためにインストールします。</li>
				<li> yum-plugin-priorities: 外部リポジトリと混ぜて使用する際に標準リポジトリのバージョンを優先するためにインストールします。
				<ul>
				<li> <strong>2011-08-28修正: torakitty さんにコメントでご指摘いただいたように yum-plugin-priorities が yum-conf-sl-other と誤って記述していたのを修正しました。</strong></ll>
				</ul>
				<p></ll>
				</ul>
				<pre># yum -y install yum-conf-sl-other yum-plugin-fastestmirror yum-plugin-priorities
</pre>
				<h3> オリジナルの設定ファイルのバックアップ</h3>
				<p>オリジナルの設定ファイルをバックアップします。</p>
				<pre>yes no | cp -ai /etc/yum.repos.d/sl.repo /etc/yum.repos.d/sl.repo.default
yes no | cp -ai /etc/yum.repos.d/sl-other.repo /etc/yum.repos.d/sl-other.repo.default
</pre>
				<h3> sl.repo の設定</h3>
				<p>リポジトリミラーとして国内ミラーを優先して使うように設定します。</p>
				<ul>
				<li> sl: 標準で有効化し、priority を最優先の 1 にします。</li>
				<li> sl-security: 標準で有効化し、priority を最優先の 1 にします。</li>
				<li> sl-source: 標準で無効化し、priority を最優先の 1 にします。</ll>
				</ul>
				<pre>cat &lt;&lt; '_EOF_' &gt; /etc/yum.repos.d/sl.repo
[sl]
name=Scientific Linux $releasever - $basearch
mirrorlist = file:///etc/yum.repos.d/mirrors-sl
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-sl file:///etc/pki/rpm-gpg/RPM-GPG-KEY-dawson
priority=1

[sl-security]
name=Scientific Linux $releasever - $basearch - security updates
mirrorlist = file:///etc/yum.repos.d/mirrors-sl-security
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-sl file:///etc/pki/rpm-gpg/RPM-GPG-KEY-dawson
priority=1

[sl-source]
name=Scientific Linux $releasever - Source
mirrorlist = file:///etc/yum.repos.d/mirrors-sl-source
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-sl file:///etc/pki/rpm-gpg/RPM-GPG-KEY-dawson
priority=1
_EOF_
cat &lt;&lt; '_EOF_' &gt; /etc/yum.repos.d/mirrors-sl

http://ftp.ne.jp/Linux/packages/scientificlinux/$releasever/$basearch/os/

http://ftp.jaist.ac.jp/pub/Linux/scientific/$releasever/$basearch/os/

http://ftp.riken.jp/Linux/scientific/$releasever/$basearch/os/

http://ftp.scientificlinux.org/linux/scientific/$releasever/$basearch/os/

http://ftp1.scientificlinux.org/linux/scientific/$releasever/$basearch/os/

http://ftp2.scientificlinux.org/linux/scientific/$releasever/$basearch/os/

ftp://ftp.scientificlinux.org/linux/scientific/$releasever/$basearch/os/
_EOF_
cat &lt;&lt; '_EOF_' &gt; /etc/yum.repos.d/mirrors-sl-security

http://ftp.ne.jp/Linux/packages/scientificlinux/$releasever/$basearch/updates/security/

http://ftp.jaist.ac.jp/pub/Linux/scientific/$releasever/$basearch/updates/security/

http://ftp.riken.jp/Linux/scientific/$releasever/$basearch/updates/security/

http://ftp.scientificlinux.org/linux/scientific/$releasever/$basearch/updates/security/

http://ftp1.scientificlinux.org/linux/scientific/$releasever/$basearch/updates/security/

http://ftp2.scientificlinux.org/linux/scientific/$releasever/$basearch/updates/security/

ftp://ftp.scientificlinux.org/linux/scientific/$releasever/$basearch/updates/security/
_EOF_
cat &lt;&lt; '_EOF_' &gt; /etc/yum.repos.d/mirrors-sl-source

http://ftp.ne.jp/Linux/packages/scientificlinux/$releasever/SRPMS/

http://ftp.jaist.ac.jp/pub/Linux/scientific/$releasever/SRPMS/

http://ftp.riken.jp/Linux/scientific/$releasever/SRPMS/

http://ftp.scientificlinux.org/linux/scientific/$releasever/SRPMS/

http://ftp1.scientificlinux.org/linux/scientific/$releasever/SRPMS/

http://ftp2.scientificlinux.org/linux/scientific/$releasever/SRPMS/

ftp://ftp.scientificlinux.org/linux/scientific/$releasever/SRPMS/
_EOF_
</pre>
				<h3> sl-other.repo の設定</h3>
				<p>リポジトリミラーとして国内ミラーを優先して使うように設定します。</p>
				<ul>
				<li> sl-fastbugs: 標準で有効化し、priority を最優先の 1 にします。</li>
				<li> sl-debuginfo: 標準で無効化し、priority を最優先の 1 にします。</li>
				<li> sl-testing: 標準で無効化し、priority を最優先の 1 にします。</li>
				<li> sl-testing-source: 標準で無効化し、priority を最優先の 1 にします。</ll>
				</ul>
				<pre>cat &lt;&lt; '_EOF_' &gt; /etc/yum.repos.d/sl-other.repo
[sl-fastbugs]
name=Scientific Linux $releasever - $basearch - fastbug updates
mirrorlist = file:///etc/yum.repos.d/mirrors-sl-fastbugs
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-sl file:///etc/pki/rpm-gpg/RPM-GPG-KEY-dawson
priority=1

[sl-debuginfo]
name=Scientific Linux Debuginfo
mirrorlist = file:///etc/yum.repos.d/mirrors-sl-debuginfo
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-sl file:///etc/pki/rpm-gpg/RPM-GPG-KEY-dawson
priority=1

[sl-testing]
name=Scientific Linux Testing - $basearch
mirrorlist = file:///etc/yum.repos.d/mirrors-sl-testing
enabled=0
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-sl file:///etc/pki/rpm-gpg/RPM-GPG-KEY-dawson
priority=1

[sl-testing-source]
name=Scientific Linux Testing - Source
mirrorlist = file:///etc/yum.repos.d/mirrors-sl-testing-source
enabled=0
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-sl file:///etc/pki/rpm-gpg/RPM-GPG-KEY-dawson
priority=1
_EOF_
cat &lt;&lt; '_EOF_' &gt; /etc/yum.repos.d/mirrors-sl-fastbugs

http://ftp.ne.jp/Linux/packages/scientificlinux/$releasever/$basearch/updates/fastbugs/

http://ftp.jaist.ac.jp/pub/Linux/scientific/$releasever/$basearch/updates/fastbugs/

http://ftp.riken.jp/Linux/scientific/$releasever/$basearch/updates/fastbugs/

http://ftp.scientificlinux.org/linux/scientific/$releasever/$basearch/updates/fastbugs/

http://ftp1.scientificlinux.org/linux/scientific/$releasever/$basearch/updates/fastbugs/

http://ftp2.scientificlinux.org/linux/scientific/$releasever/$basearch/updates/fastbugs/

ftp://ftp.scientificlinux.org/linux/scientific/$releasever/$basearch/updates/fastbugs/
_EOF_
cat &lt;&lt; '_EOF_' &gt; /etc/yum.repos.d/mirrors-sl-debuginfo

http://ftp.ne.jp/Linux/packages/scientificlinux/$releasever/archive/debuginfo/

http://ftp.jaist.ac.jp/pub/Linux/scientific/$releasever/archive/debuginfo/

http://ftp.riken.jp/Linux/scientific/$releasever/archive/debuginfo/

http://ftp.scientificlinux.org/linux/scientific/$releasever/archive/debuginfo/

http://ftp1.scientificlinux.org/linux/scientific/$releasever/archive/debuginfo/

http://ftp2.scientificlinux.org/linux/scientific/$releasever/archive/debuginfo/

ftp://ftp.scientificlinux.org/linux/scientific/$releasever/archive/debuginfo/
_EOF_
cat &lt;&lt; '_EOF_' &gt; /etc/yum.repos.d/mirrors-sl-testing

http://ftp.ne.jp/Linux/packages/scientificlinux/6rolling/testing/$basearch/

http://ftp.jaist.ac.jp/pub/Linux/scientific/6rolling/testing/$basearch/

http://ftp.riken.jp/Linux/scientific/6rolling/testing/$basearch/

http://ftp.scientificlinux.org/linux/scientific/6rolling/testing/$basearch/

http://ftp1.scientificlinux.org/linux/scientific/6rolling/testing/$basearch/

http://ftp2.scientificlinux.org/linux/scientific/6rolling/testing/$basearch/

ftp://ftp.scientificlinux.org/linux/scientific/6rolling/testing/$basearch/
_EOF_
cat &lt;&lt; '_EOF_' &gt; /etc/yum.repos.d/mirrors-sl-testing-source

http://ftp.ne.jp/Linux/packages/scientificlinux/6rolling/testing/SRPMS/

http://ftp.jaist.ac.jp/pub/Linux/scientific/6rolling/testing/SRPMS/

http://ftp.riken.jp/Linux/scientific/6rolling/testing/SRPMS/

http://ftp.scientificlinux.org/linux/scientific/6rolling/testing/SRPMS/

http://ftp1.scientificlinux.org/linux/scientific/6rolling/testing/SRPMS/

http://ftp2.scientificlinux.org/linux/scientific/6rolling/testing/SRPMS/

ftp://ftp.scientificlinux.org/linux/scientific/6rolling/testing/SRPMS/
_EOF_
</pre>
				<h3> 設定の確認</h3>
				<p>yum コマンドを実行して設定を確認します。</p>
				<pre># yum update
Loaded plugins: fastestmirror, priorities
Loading mirror speeds from cached hostfile
 * sl: ftp.ne.jp
 * sl-fastbugs: ftp.ne.jp
 * sl-security: ftp.ne.jp
Setting up Update Process
... 省略 ...
</pre>
				<p>上記のように Loading mirror の後、sl, sl-fastbugs, sl-security が表示されれば設定が出来ています。</p>
				<h3> まとめ</h3>
				<p>SL 6.1 用の yum リポジトリの設定方法を紹介しました。SL 6.0 からリポジトリ設定ファイルの構成が変わっていますので、SL 6.1 環境では設定をし直した方が良いです。</p>
				<p>設定中の priority は、<a href="http://jfut.integ.jp/2011/07/13/rhel-sl-centos-5-to-rhel-sl-centos-6/">RHEL/Scientific Linux/CentOS 5 から RHEL/Scientific Linux/CentOS 6 へ</a> で触れた yum-conf-* を入れたら、1 より大きい数字を設定しておかないと優先度が反映されないので注意が必要です。</p>
				</div>
<p>関連する記事:<ol>
<li><a href='http://jfut.integ.jp/2011/07/13/rhel-sl-centos-5-to-rhel-sl-centos-6/' rel='bookmark' title='RHEL/Scientific Linux/CentOS 5 から RHEL/Scientific Linux/CentOS 6 へ'>RHEL/Scientific Linux/CentOS 5 から RHEL/Scientific Linux/CentOS 6 へ</a> <small>概要 [2011-07-17追記]: sl-fastbugs　の国内リポジトリミラーを追加しました。 CentOS 6.0 がリリースされ、これから Red Hat Enterprise Linux...</small></li>
<li><a href='http://jfut.integ.jp/2012/02/16/scientific-linux-61-upgrade-to-62/' rel='bookmark' title='Scientific Linux 6.2 環境へ 6.1 環境からアップグレードする方法'>Scientific Linux 6.2 環境へ 6.1 環境からアップグレードする方法</a> <small>概要 Scientific Linux 6.2 (SL 6.2) が Beta 1 -&gt;...</small></li>
<li><a href='http://jfut.integ.jp/2011/07/29/scientific-linux-60-upgrade-to-61/' rel='bookmark' title='Scientific Linux 6.0 環境を 6.1 環境へアップグレードする方法'>Scientific Linux 6.0 環境を 6.1 環境へアップグレードする方法</a> <small>概要 2011-07-29追記: アップデートすると 6.0 時代に設定した yum のリポジトリ設定が上書きされ、初期化されていました。詳細は Scientific Linux 6.1...</small></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://jfut.integ.jp/2011/07/29/scientific-linux-61-yumrepositories/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Scientific Linux 6.0 環境を 6.1 環境へアップグレードする方法</title>
		<link>http://jfut.integ.jp/2011/07/29/scientific-linux-60-upgrade-to-61/</link>
		<comments>http://jfut.integ.jp/2011/07/29/scientific-linux-60-upgrade-to-61/#comments</comments>
		<pubDate>Thu, 28 Jul 2011 21:24:39 +0000</pubDate>
		<dc:creator>jfut</dc:creator>
				<category><![CDATA[Admin]]></category>
		<category><![CDATA[Server]]></category>

		<guid isPermaLink="false">http://jfut.integ.jp/?p=1061</guid>
		<description><![CDATA[概要 2011-07-29追記: アップデートすると 6.0 時代に設定した yum のリポジトリ設定が上書きされ、初期化されていました。詳細は Scientific Linux 6.1 での yum リポジトリ設定 に [...]
関連する記事:<ol>
<li><a href='http://jfut.integ.jp/2012/02/16/scientific-linux-61-upgrade-to-62/' rel='bookmark' title='Scientific Linux 6.2 環境へ 6.1 環境からアップグレードする方法'>Scientific Linux 6.2 環境へ 6.1 環境からアップグレードする方法</a> <small>概要 Scientific Linux 6.2 (SL 6.2) が Beta 1 -&gt;...</small></li>
<li><a href='http://jfut.integ.jp/2011/07/13/rhel-sl-centos-5-to-rhel-sl-centos-6/' rel='bookmark' title='RHEL/Scientific Linux/CentOS 5 から RHEL/Scientific Linux/CentOS 6 へ'>RHEL/Scientific Linux/CentOS 5 から RHEL/Scientific Linux/CentOS 6 へ</a> <small>概要 [2011-07-17追記]: sl-fastbugs　の国内リポジトリミラーを追加しました。 CentOS 6.0 がリリースされ、これから Red Hat Enterprise Linux...</small></li>
<li><a href='http://jfut.integ.jp/2009/01/22/red-hat-enterprise-linux-5-3-rhel-5-3-%E3%81%AE%E6%B0%97%E3%81%AB%E3%81%AA%E3%82%8B%E3%81%A8%E3%81%93%E3%81%BE%E3%81%A8%E3%82%81/' rel='bookmark' title='Red Hat Enterprise Linux 5.3 (RHEL 5.3) の気になるとこまとめ'>Red Hat Enterprise Linux 5.3 (RHEL 5.3) の気になるとこまとめ</a> <small> ...</small></li>
</ol>]]></description>
			<content:encoded><![CDATA[				<div id="fswiki_content43" class="fswiki_content">
				<h3> 概要</h3>
				<ul>
				<li> 2011-07-29追記: アップデートすると <strong>6.0 時代に設定した yum のリポジトリ設定が上書きされ、初期化されていました</strong>。詳細は <a href="http://jfut.integ.jp/2011/07/29/scientific-linux-61-yumrepositories/">Scientific Linux 6.1 での yum リポジトリ設定</a> に書きました。</ll>
				</ul>
				<p>Scientific Linux 6.1 (SL 6.1) がリリースされました。</p>
				<ul>
				<li> <a href="http://www.scientificlinux.org/news/sl61">Scientific Linux &#8211; Scientific Linux 6.1</a></ll>
				</ul>
				<p>早速 SL 6.0 環境を yum update で 6.1 にアップグレードしようとしてみましたが、RHEL/CentOS と違ってそのままでは 6.1 にアップグレードされませんでした。</p>
				<p>Scientific Linux では /etc/yum.repos.d/sl.repo などで定義されている $releasever の変数の中身が 6 ではなく 6.0 とマイナーバージョンまで含めて入っているようで、最新マイナーバージョンの yum リポジトリが参照されず更新されないようです。</p>
				<p>これは商用製品などで特定マイナーバージョンでないと動作保証が得られない環境がある方には嬉しい仕様です。以前仕事で携わったところで、環境構築をしている方々が RHEL 5.x では自動的にマイナーバージョンが上げることを把握しておらず、タイミング良く新しいマイナーバージョンがリリースされ、その夜の自動更新でバージョンが上がってしまい問題が発生したことがあったので、そういったマイナーバージョンを固定したい環境では役立つでしょう。</p>
				<p>一方で、ずっと古いマイナーバージョンのままにするのも良くないので、アップグレードして良いタイミングになったら次のようにしてアップグレードします。</p>
				<h3> 現在バージョンの確認</h3>
				<p>現在のバージョンを確認します。</p>
				<pre># cat /etc/redhat-release
Scientific Linux release 6.0 (Carbon)
# rpm -qa sl-release --qf '%{v}\n'
6.0
</pre>
				<p>$release 変数の中身が 6.0 になっています。</p>
				<h3> sl-release の更新</h3>
				<p>一気にすべてのパッケージを 6.1 のものに更新しても良いと思いますが、まずは sl-release だけを更新します。</p>
				<pre># yum --releasever=6.1 update sl-release
... 省略 ...
Dependencies Resolved

========================================================================================================================
 Package                         Arch                        Version                      Repository               Size
========================================================================================================================
Updating:
 sl-release                      x86_64                      6.1-2                        sl                       32 k

Transaction Summary
========================================================================================================================
Install       0 Package(s)
Upgrade       1 Package(s)

Is this ok [y/N]: y
Downloading Packages:
sl-release-6.1-2.x86_64.rpm                                                                      |  32 kB     00:00
</pre>
				<h3> 更新されたバージョンの確認</h3>
				<p>更新されたバージョンを確認します。</p>
				<pre># cat /etc/redhat-release
Scientific Linux release 6.1 (Carbon)
# rpm -qa sl-release --qf '%{v}\n'
6.1
</pre>
				<p>6.1 になりました。</p>
				<h3> すべてのパッケージを更新</h3>
				<p>すべてのパッケージを更新します。</p>
				<pre># yum update
... 省略 ...
Transaction Summary
========================================================================================================================
Install       1 Package(s)
Upgrade     147 Package(s)

Total download size: 132 M
Is this ok [y/N]: y
</pre>
				<p>これで無事 Scientific Linux 6.1 環境へのアップグレードが完了しました。</p>
				<p>今日(2011-07-29)時点では、Scientific Linux 6.0 のリポジトリで既に RHEL 6.1 の更新を先取りした最新 Kernel まで更新されていたので、既にその最新 Kernel を使用していたのであれば OS ごと再起動しなくても良いですが、更新前に最新 Kernel を使っていなかった場合や、いろいろ更新されたのですっきりしたい方は一度 OS ごと再起動しておくと良いです。</p>
				</div>
<p>関連する記事:<ol>
<li><a href='http://jfut.integ.jp/2012/02/16/scientific-linux-61-upgrade-to-62/' rel='bookmark' title='Scientific Linux 6.2 環境へ 6.1 環境からアップグレードする方法'>Scientific Linux 6.2 環境へ 6.1 環境からアップグレードする方法</a> <small>概要 Scientific Linux 6.2 (SL 6.2) が Beta 1 -&gt;...</small></li>
<li><a href='http://jfut.integ.jp/2011/07/13/rhel-sl-centos-5-to-rhel-sl-centos-6/' rel='bookmark' title='RHEL/Scientific Linux/CentOS 5 から RHEL/Scientific Linux/CentOS 6 へ'>RHEL/Scientific Linux/CentOS 5 から RHEL/Scientific Linux/CentOS 6 へ</a> <small>概要 [2011-07-17追記]: sl-fastbugs　の国内リポジトリミラーを追加しました。 CentOS 6.0 がリリースされ、これから Red Hat Enterprise Linux...</small></li>
<li><a href='http://jfut.integ.jp/2009/01/22/red-hat-enterprise-linux-5-3-rhel-5-3-%E3%81%AE%E6%B0%97%E3%81%AB%E3%81%AA%E3%82%8B%E3%81%A8%E3%81%93%E3%81%BE%E3%81%A8%E3%82%81/' rel='bookmark' title='Red Hat Enterprise Linux 5.3 (RHEL 5.3) の気になるとこまとめ'>Red Hat Enterprise Linux 5.3 (RHEL 5.3) の気になるとこまとめ</a> <small> ...</small></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://jfut.integ.jp/2011/07/29/scientific-linux-60-upgrade-to-61/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>RHEL/Scientific Linux/CentOS 5 から RHEL/Scientific Linux/CentOS 6 へ</title>
		<link>http://jfut.integ.jp/2011/07/13/rhel-sl-centos-5-to-rhel-sl-centos-6/</link>
		<comments>http://jfut.integ.jp/2011/07/13/rhel-sl-centos-5-to-rhel-sl-centos-6/#comments</comments>
		<pubDate>Wed, 13 Jul 2011 03:28:57 +0000</pubDate>
		<dc:creator>jfut</dc:creator>
				<category><![CDATA[Admin]]></category>
		<category><![CDATA[Server]]></category>

		<guid isPermaLink="false">http://jfut.integ.jp/?p=977</guid>
		<description><![CDATA[概要 [2011-07-17追記]: sl-fastbugs　の国内リポジトリミラーを追加しました。 CentOS 6.0 がリリースされ、これから Red Hat Enterprise Linux 6.0 (RHEL  [...]
関連する記事:<ol>
<li><a href='http://jfut.integ.jp/2011/07/29/scientific-linux-61-yumrepositories/' rel='bookmark' title='Scientific Linux 6.1 での yum リポジトリ設定'>Scientific Linux 6.1 での yum リポジトリ設定</a> <small>今朝 Scientific Linux 6.0 環境を 6.1 環境へアップグレードする方法 を書きましたが、6.0 時代に設定した yum...</small></li>
<li><a href='http://jfut.integ.jp/2011/07/29/scientific-linux-60-upgrade-to-61/' rel='bookmark' title='Scientific Linux 6.0 環境を 6.1 環境へアップグレードする方法'>Scientific Linux 6.0 環境を 6.1 環境へアップグレードする方法</a> <small>概要 2011-07-29追記: アップデートすると 6.0 時代に設定した yum のリポジトリ設定が上書きされ、初期化されていました。詳細は Scientific Linux 6.1...</small></li>
<li><a href='http://jfut.integ.jp/2012/02/16/scientific-linux-61-upgrade-to-62/' rel='bookmark' title='Scientific Linux 6.2 環境へ 6.1 環境からアップグレードする方法'>Scientific Linux 6.2 環境へ 6.1 環境からアップグレードする方法</a> <small>概要 Scientific Linux 6.2 (SL 6.2) が Beta 1 -&gt;...</small></li>
</ol>]]></description>
			<content:encoded><![CDATA[				<div id="fswiki_content53" class="fswiki_content">
				<h2> 概要</h2>
				<ul>
				<li> [2011-07-17追記]: sl-fastbugs　の国内リポジトリミラーを追加しました。</ll>
				</ul>
				<p>CentOS 6.0 がリリースされ、これから Red Hat Enterprise Linux 6.0 (RHEL 6.0) 系 に更新するのに Scientific Linux 6.0 (SL 6.0) と CentOS 6.0 のどちらに更新しようか迷っている方が多いと思います。</p>
				<p>そんな方向けに 5.x から 6.0 になって何が変わったのか、そして、SL と CentOS で何が違うのか気付いた点をまとめておきます。前者は有償サポートのある RHEL 6.0 へ移行する際にも参考になると思います。</p>
				<h2> RHEL 6.0、SL 6.0、CentOS 6.0 の収録パッケージの違い</h2>
				<p>まずは、一番気になるであろう RHEL 6.0、SL 6.0、CentOS 6.0 の収録パッケージの違いをまとめます。6.0 では、収録パッケージの違いは SL も CentOS も下記にあげるように最小限に留まっており、基本的にオリジナルの RHEL 6.0 リリース時点と同じバージョンが収録されています。</p>
				<h3> RHEL 6.0 と SL 6.0 の違い</h3>
				<p>SL 5.x では、RHEL 5.x に R や graphviz などのパッケージも加えていましたが、6.0 では最低限の追加しかされていません。</p>
				<p>下記は SL 6.0 に追加・修正されているパッケージの一覧です。それぞれのパッケージの詳細は、<a href="http://www.scientificlinux.org/distributions/6x/rnotes/sl-release-notes-6.0.html">Scientific Linux 6.0 Release Notes</a> に書かれています。</p>
				<h4> 追加されたパッケージ</h4>
				<ul>
				<li> SL_desktop_tweaks-6-3.src.rpm</li>
				<li> SL_enable_serialconsole-4.0-1.src.rpm</li>
				<li> SL_no_colorls-1.0-3.src.rpm</li>
				<li> SL_password_for_singleuser-3.0-1.src.rpm</li>
				<li> glib-1.2.10-33.el6.src.rpm</li>
				<li> gtk+-1.2.10-70.el6.src.rpm</li>
				<li> icewm-1.2.37-1.2.src.rpm</li>
				<li> imlib-1.9.15-14.el6.src.rpm</li>
				<li> livecd-tools-0.3.6-3.el6.src.rpm</li>
				<li> liveusb-creator-3.9.2-sl6.0.7.rolling.src.rpm</li>
				<li> openafs-firstboot-1.6-1.sl6.src.rpm</li>
				<li> openafs.SLx-1.6.0-91.pre2.src.rpm</li>
				<li> revisor-2.2-2.sl6.4.src.rpm</li>
				<li> sl-release-6.0-6.0.0.37.sl6.0.92rolling.src.rpm</li>
				<li> sl-revisor-configs-1-6.0.src.rpm</li>
				<li> yum-autoupdate-2-1.src.rpm</li>
				<li> yum-conf-adobe-6-1.src.rpm</li>
				<li> yum-conf-atrpms-6-1.src.rpm</li>
				<li> yum-conf-elrepo-6-1.src.rpm</li>
				<li> yum-conf-epel-6-1.src.rpm</li>
				<li> yum-conf-rpmforge-6-1.src.rpm</li>
				<li> yum-conf-sl6x-1-1.src.rpm</ll>
				</ul>
				<p>最小構成で自動的にインストールされるのは、sl-release と yum-autoupdate のみです。</p>
				<h4> 修正されたパッケージ</h4>
				<ul>
				<li> anaconda-13.21.82-1.sl6.2.src.rpm</li>
				<li> epydoc-3.0.1-5.1.el6.0.sl6.src.rpm</li>
				<li> guile-1.8.7-4.el6.0.sl6.src.rpm</li>
				<li> httpd-2.2.15-5.sl6.src.rpm</li>
				<li> kdepim-runtime-4.3.4-4.el6.0.sl6.src.rpm</li>
				<li> linuxdoc-tools-0.9.65-3.el6.0.sl.src.rpm</li>
				<li> mod_auth_kerb-5.4-6.el6.0.sl6.src.rpm</li>
				<li> nss-3.12.7-2.el6.0.sl6.src.rpm</li>
				<li> opal-3.6.6-4.el6.0.sl6.src.rpm</li>
				<li> pilot-link-0.12.4-6.el6.0.sl6.src.rpm</li>
				<li> plymouth-0.8.3-17.sl6.2.src.rpm</li>
				<li> redhat-logos-60.0.14-1.sl6.1.src.rpm</li>
				<li> report-0.18-7.sl6.src.rpm</li>
				<li> rome-0.9-4.2.el6.0.sl6.src.rpm</li>
				<li> ruby-1.8.7.299-4.el6.0.sl6.1.src.rpm</li>
				<li> sl-bookmarks-6-1.sl6.src.rpm</li>
				<li> sl-indexhtml-6-1.sl6.src.rpm</li>
				<li> sl-release-6.0-6.0.1.src.rpm</li>
				<li> sl-release-notes-6.0-0.1.rolling.src.rpm</ll>
				</ul>
				<p>追加パッケージのうち運用時に便利なのは、yum-autoupdate と yum-conf-* です。yum-autoupdate は後述しますが、yum による自動更新を実行するツールです。yum-conf-* は、外部リポジトリを使用するリポジトリファイルです。メジャーな外部リポジトリは収録されていて、すぐに外部リポジトリを使用できるのは使い勝手が良いです。</p>
				<h3> RHEL 6.0 と CentOS 6.0 の違い</h3>
				<p>CentOS のインストールメディアはなるべく RHEL と同じになるように追加パッケージは基本的にありません。ただし、extras リポジトリで独自のパッケージを追加していくので、一概に SL と比較できません。なお、執筆時点では、6.0 の extras リポジトリはまだ空です。したがって、CentOS 5.x で extras リポジトリにあるものを期待して使用していた方は、今すぐ 6.0 に乗り換えると困るかもしれません。</p>
				<p>下記は CentOS 6.0 に追加・修正されているパッケージの一覧です。<a href="http://wiki.centos.org/Manuals/ReleaseNotes/CentOS6.0/Japanese">CentOS 6.0 リリースノート</a> には、削除したパッケージも書かれています。</p>
				<h4> 追加されたパッケージ</h4>
				<ul>
				<li> centos-indexhtml-6-1.el6.centos.src.rpm</li>
				<li> centos-release-6-0.el6.centos.5.src.rpm</ll>
				</ul>
				<h4> 修正されたパッケージ</h4>
				<ul>
				<li> anaconda-13.21.82-1.el6.centos.1.src.rpm</li>
				<li> firefox-3.6.9-2.el6.centos.src.rpm</li>
				<li> httpd-2.2.15-5.el6.centos.src.rpm</li>
				<li> kabi-whitelists-20100820-1.el6.centos.src.rpm</li>
				<li> kabi-yum-plugins-1.0-2.el6.centos.src.rpm</li>
				<li> kde-settings-4.3.1-1.el6.centos.src.rpm</li>
				<li> luci-0.22.2-14.el6.centos.src.rpm</li>
				<li> openssl098e-0.9.8e-17.el6.centos.src.rpm</li>
				<li> plymouth-0.8.3-17.el6.centos.src.rpm</li>
				<li> redhat-bookmarks-6-1.el6.centos.src.rpm</li>
				<li> report-0.18-7.el6.centos.src.rpm</li>
				<li> yum-3.2.27-14.el6.centos.src.rpm</ll>
				</ul>
				<p>CentOS 6.0 では、リリース時点で自動更新のためのツールが含まれていません。従来あった yum-updated や yum-cron も無くなっているため、自動更新をするには何らかの仕組みを自分で用意する必要があります。</p>
				<h2> 5.x と 6.0 の違い</h2>
				<p>5.x から 6.0 になってメジャーバージョンが変わったこともあって、いろいろと大きく変わっています。主に下記の点が変わっています。</p>
				<h3> インストールモード</h3>
				<p>インストールモードにはこれまで同様、Text mode と Graphical mode がありますが、Text mode では次のことができなくなっています。</p>
				<ul>
				<li> ストレージの構成とパーティションレイアウトの修正</li>
				<li> インストールパッケージの選択</ll>
				</ul>
				<p>5.x の時にも Text mode では、Linux MD や LVM の VG を一部編集することができない制限がありましたが、6.0 からはストレージの構成とパーティションレイアウトの修正も出来なくなったので、多くの場合、Graphical mode でインストールする必要があります。</p>
				<p>なお、搭載メモリが 652MB 以下の場合、自動的に Text mode でインストーラが起動します。それ以外で Text mode でインストールしたい場合は、インストーラメディアブート時の grub メニューで Tab を押して、ブートパラメータの末尾に text を付けて起動すれば良いです。</p>
				<p>Graphical mode では、Shift + Print Screen を押すと、画面のスクリーンキャプチャが下記のディレクトリに保存されるので記録を残したい方はこれを利用すると良いです。</p>
				<ul>
				<li> /root/anaconda-screenshot/screenshot-NNNN.png</ll>
				</ul>
				<h3> インストールパッケージ</h3>
				<p>インストールパッケージはサーバとして使用するなら インストールタイプを Minimal にし、Customize now をチェックして、次のパッケージグループを足すのが良いでしょう。他の必要なサーバソフトウェアは後から yum で入れれば良いです。</p>
				<ul>
				<li> Base System
				<ul>
				<li> Base</li>
				</ul>
				</li>
				<li> Development
				<ul>
				<li> Additional Development</li>
				<li> Development tools</ll>
				</ul>
				<p></ll>
				</ul>
				<p>CentOS 6.0 の場合、デフォルトで Minimal が選択されています。一方、Scientific Linux 6.0 の場合、デフォルトで Desktop が選択されているので一番下にある Minimal を選択する必要があります。さらに、Scientific Linux 6.0 の場合、Minimal にしても次のパッケージグループがインストールするようにチェックされています。</p>
				<ul>
				<li> SL Addons
				<ul>
				<li> Misc Scientific Linux Packages</li>
				</ul>
				</li>
				<li> Scalable Filesystem Support
				<ul>
				<li> Scalable Filesystems</ll>
				</ul>
				<p></ll>
				</ul>
				<p>これらが不要な場合はチェックを外してしまって問題ありません。参考までにチェックしたままだと、それぞれ下記のパッケージがインストールされます。内容から判るとおり xfs を使わない限り必要ないです。</p>
				<h4> Misc Scientific Linux Packages</h4>
				<p>このパッケージグループには下記のパッケージが所属していますが、optional 指定になっているため、実際にはインストールされません。</p>
				<ul>
				<li> SL_desktop_tweaks</li>
				<li> SL_enable_serialconsole</li>
				<li> SL_enable_serialconsole-192</li>
				<li> SL_enable_serialconsole-384</li>
				<li> SL_enable_serialconsole-1152</li>
				<li> SL_no_colorls</li>
				<li> SL_password_for_singleuser</li>
				<li> revisor</ll>
				</ul>
				<h4> Scalable Filesystems</h4>
				<ul>
				<li> xfsprogs</li>
				<li> xfsdump</ll>
				</ul>
				<p>また、CentOS では yum-plugin-fastestmirror が自動的にインストールされますが、SL ではインストールされません。</p>
				<h3> NIC の識別</h3>
				<p>6.0 から NIC の識別には /etc/udev/rules.d/70-persistent-net.rules が使用されています。このファイルには、ethX と NIC の MAC アドレスを紐づける設定が書かれていて、NIC を増減しても常に同じ NIC に同じ ethX が割り当てられることが保証されます。しかし、VM などでイメージをコピーして使いまわす時にはこの仕組みが邪魔となり、VM コピーに伴い NIC の MAC アドレスが変わると NIC を認識できなくなります。</p>
				<p>したがてって、VM イメージをコピーする時には、次のどちらかの方法で対処する必要があります。</p>
				<ol>
				<li> /etc/udev/rules.d/70-persistent-net.rules を削除して再起動します。
				<ul>
				<li> 再起動後、自動的にファイルが生成されます。</li>
				</ul>
				</li>
				<li> /etc/udev/rules.d/70-persistent-net.rules を修正して再起動します。
				<ul>
				<li> MAC アドレスを正しいものに書き換えるか、不要な NIC の情報を削除します。</li>
				<li> 再起動後、自動的にファイルが修正されます。</ll>
				</ul>
				<p></ll>
				</ol>
				<h3> 国内リポジトリミラー</h3>
				<p>SL も CentOS も国内リポジトリミラーは充実しています。必要に応じて mirrorlist を修正すると良いです。</p>
				<h4> SL 6.0</h4>
				<ul>
				<li> sl (/etc/yum.repos.d/sl.repo)</ll>
				</ul>
				<pre>http://ftp.riken.jp/Linux/scientific/$releasever/$basearch/os/

http://ftp.ne.jp/Linux/packages/scientificlinux/$releasever/$basearch/os/

http://ftp.jaist.ac.jp/pub/Linux/scientific/$releasever/$basearch/os/
</pre>
				<ul>
				<li> sl-security (/etc/yum.repos.d/sl-updates.repo)</ll>
				</ul>
				<pre>http://ftp.riken.jp/Linux/scientific/$releasever/$basearch/updates/security/

http://ftp.ne.jp/Linux/packages/scientificlinux/$releasever/$basearch/updates/security/

http://ftp.jaist.ac.jp/pub/Linux/scientific/$releasever/$basearch/updates/security/
</pre>
				<ul>
				<li> sl-fastbugs (/etc/yum.repos.d/sl-updates.repo)
				<ul>
				<li> CentOS 6　では updates に含まれている バグ fix </ll>
				</ul>
				<p></ll>
				</ul>
				<pre>http://ftp.riken.jp/Linux/scientific/$releasever/$basearch/updates/fastbugs/

http://ftp.ne.jp/Linux/packages/scientificlinux/$releasever/$basearch/updates/fastbugs/

http://ftp.jaist.ac.jp/pub/Linux/scientific/$releasever/$basearch/updates/fastbugs/
</pre>
				<h4> CentOS 6.0</h4>
				<ul>
				<li> base (/etc/yum.repos.d/CentOS-Base.repo)</ll>
				</ul>
				<pre>http://ftp.riken.jp/Linux/centos/$releasever/os/$basearch/

http://ftp.ne.jp/Linux/packages/CentOS/$releasever/os/$basearch/

http://ftp.jaist.ac.jp/pub/Linux/CentOS/$releasever/os/$basearch/

http://ftp.iij.ad.jp/pub/linux/centos/$releasever/os/$basearch/
</pre>
				<ul>
				<li> updates (/etc/yum.repos.d/CentOS-Base.repo)</ll>
				</ul>
				<pre>http://ftp.riken.jp/Linux/centos/$releasever/updates/$basearch/

http://ftp.ne.jp/Linux/packages/CentOS/$releasever/updates/$basearch/

http://ftp.jaist.ac.jp/pub/Linux/CentOS/$releasever/updates/$basearch/

http://ftp.iij.ad.jp/pub/linux/centos/$releasever/updates/$basearch/
</pre>
				<h3> 自動更新</h3>
				<p>SL 6.0 と CentOS 6.0 の自動更新について説明します。</p>
				<h4> SL 6.0</h4>
				<p>SL 6.0 では yum-autoupdate が自動的にインストールされます。このパッケージは、SL 独自に追加されているパッケージであるため CentOS ではインストールされません。</p>
				<p>yum-autoupdate の設定ファイルは、/etc/sysconfig/yum-autoupdate にあります。デフォルトでは下記のパッケージが自動更新から除外されています。</p>
				<ul>
				<li> kernel*</li>
				<li> openafs*</li>
				<li> *-kmdl-*</li>
				<li> kmod-*</li>
				<li> *firmware*</ll>
				</ul>
				<p>これらも自動更新したい場合は設定ファイルの EXCLUDE を空にするか、コメントアウトすれば良いです。</p>
				<pre>$ diff -u /etc/sysconfig/yum-autoupdate.default /etc/sysconfig/yum-autoupdate
--- /etc/sysconfig/yum-autoupdate.default       2011-02-17 07:19:32.000000000 +0900
+++ /etc/sysconfig/yum-autoupdate       2011-06-06 14:01:48.736885290 +0900
@@ -24,7 +24,7 @@
 # EXCLUDE
 #   This is a space deliminated list
 #   Example:  EXCLUDE=&quot;kernel* openafs* *-kmdl-* kmod-* *firmware*&quot;
-EXCLUDE=&quot;kernel* openafs* *-kmdl-* kmod-* *firmware*&quot;
+#EXCLUDE=&quot;kernel* openafs* *-kmdl-* kmod-* *firmware*&quot;

 # DEBUG
 #     true - turn on debug mode (be more verbose)
</pre>
				<p>yum-autoupdate は /etc/cron.daily/yum-autoupdate から毎朝実行されます。また、更新パッケージがある時は root 宛に更新したパッケージ一覧が記載されたメールが送信されます。この宛先は設定ファイルで変更できます。</p>
				<h4> CentOS 6.0</h4>
				<p>前述したように CentOS 6.0 では自動更新の仕組みが提供されていません。今後、何らかの公式のパッケージが提供されるかもしれませんが、実運用に困る方は下記のような /etc/cron.daily/yum.cron などを作っておくのが良いと思います。</p>
				<pre>cat &lt;&lt; '_EOF_' &gt; /etc/cron.daily/yum.cron
#!/bin/sh

/usr/bin/yum -R 120 -e 0 -d 0 -y update yum
_EOF_
chmod 755 /etc/cron.daily/yum.cron
</pre>
				<h3> その他の 5.x から 6.0 になって変わったこと</h3>
				<p>その他、SL と CentOS に限らず、RHEL 5.x から 6.0 になって個人的に影響があった変更点を箇条書きします。</p>
				<p>その他の違いや詳細は、Red Hat 社の <a href="http://docs.redhat.com/docs/ja-JP/Red_Hat_Enterprise_Linux/6/html/Migration_Planning_Guide/index.html">Red Hat Enterprise Linux 6 移行計画ガイド</a> を見ると良いです。</p>
				<ul>
				<li> デフォルトのファイルシステムが ext3 から ext4 に変更されました</li>
				<li> Xen が無くなり、KVM のみになりました
				<ul>
				<li> KVM: -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0&#215;4 がない時、-balloon virtio をオプション指定しないとバルーンメモリが有効になりませんでした</li>
				</ul>
				</li>
				<li> iptables で ! を使う時はオプションの前にしないとエラーになるようになりました
				<ul>
				<li> NG: -s ! 10.0.0.0/24</li>
				<li> OK: ! -s 10.0.0.0/24</li>
				</ul>
				</li>
				<li> BIND の caching-nameserver は bind パッケージに統合されました</li>
				<li> Dovecot の設定書式が変わりました</li>
				<li> OpenLDAP の設定書式が変わりました
				<ul>
				<li> 設定も DB で持てるようになりました</li>
				</ul>
				</li>
				<li> LDAP クライアント化するのに nscd に加えて nslcd デーモンが必要になりました</ll>
				</ul>
				<h2> まとめ</h2>
				<p>メジャーバージョンが 5.x から 6.0 になったことで多くのパッケージにもメジャーバージョンが更新されました。パッケージによっては設定書式が変わっていて一から調べなおす必要があることもあります。</p>
				<p>6.0 では SL 6.0 と CentOS 6.0 で大きな違いはありません。個人的には yum-autoupdate と yum-conf-* が気に入ったのと、SL の方がリリースサイクルが早そうだという理由でこれから作るサーバで OS を決めて良い時はすべて SL にしようと考えています。</p>
				<p>SL を使用する難点としては、まだ VPS サーバなどでは CentOS の方がサポートされていることが多いことですが、これも最近の状況からすると徐々に SL のシェアが増えるんじゃないかなと思います。</p>
				</div>
<p>関連する記事:<ol>
<li><a href='http://jfut.integ.jp/2011/07/29/scientific-linux-61-yumrepositories/' rel='bookmark' title='Scientific Linux 6.1 での yum リポジトリ設定'>Scientific Linux 6.1 での yum リポジトリ設定</a> <small>今朝 Scientific Linux 6.0 環境を 6.1 環境へアップグレードする方法 を書きましたが、6.0 時代に設定した yum...</small></li>
<li><a href='http://jfut.integ.jp/2011/07/29/scientific-linux-60-upgrade-to-61/' rel='bookmark' title='Scientific Linux 6.0 環境を 6.1 環境へアップグレードする方法'>Scientific Linux 6.0 環境を 6.1 環境へアップグレードする方法</a> <small>概要 2011-07-29追記: アップデートすると 6.0 時代に設定した yum のリポジトリ設定が上書きされ、初期化されていました。詳細は Scientific Linux 6.1...</small></li>
<li><a href='http://jfut.integ.jp/2012/02/16/scientific-linux-61-upgrade-to-62/' rel='bookmark' title='Scientific Linux 6.2 環境へ 6.1 環境からアップグレードする方法'>Scientific Linux 6.2 環境へ 6.1 環境からアップグレードする方法</a> <small>概要 Scientific Linux 6.2 (SL 6.2) が Beta 1 -&gt;...</small></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://jfut.integ.jp/2011/07/13/rhel-sl-centos-5-to-rhel-sl-centos-6/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>Munin Plugin: ipmitool_sensor_ 1.5 &amp; 1.6</title>
		<link>http://jfut.integ.jp/2011/01/28/munin-plugin-ipmitool_sensor_-1-5/</link>
		<comments>http://jfut.integ.jp/2011/01/28/munin-plugin-ipmitool_sensor_-1-5/#comments</comments>
		<pubDate>Thu, 27 Jan 2011 16:13:46 +0000</pubDate>
		<dc:creator>jfut</dc:creator>
				<category><![CDATA[Admin]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Server]]></category>

		<guid isPermaLink="false">http://jfut.integ.jp/?p=960</guid>
		<description><![CDATA[Munin Plugin である ipmitool_sensor_ plugin の新しいバージョン 1.5 をリリースしました。 [2011-02-07追記]: コメントにて kikumoto さんよりご指摘いただいた [...]
関連する記事:<ol>
<li><a href='http://jfut.integ.jp/2008/10/29/munin-ipmitool_sensor_-plugin/' rel='bookmark' title='Munin ipmitool_sensor_ Plugin'>Munin ipmitool_sensor_ Plugin</a> <small>Muninでマシンのファン回転数、温度、電圧をグラフ化するにはsensor_というPluginを使うのが楽です。ただし、このPluginはlm_sensorsの値を見るので、比較的新しい対応していないマザーボードだと値を [...]...</small></li>
<li><a href='http://jfut.integ.jp/2009/02/08/munin-plugin-ipmitool_sensor_-1-4/' rel='bookmark' title='Munin Plugin: ipmitool_sensor_ 1.4'>Munin Plugin: ipmitool_sensor_ 1.4</a> <small>以前、2008-10-29 (Wed) &#8211; Munin ipmitool_sensor_ Pluginで紹介したMunin用のipmitool_sensor_ Pluginの新しいバージョンをリリースしました [...]...</small></li>
<li><a href='http://jfut.integ.jp/2011/01/05/wp-freestyle-wiki/' rel='bookmark' title='WP FreeStyle Wiki の Plugin Directory への登録'>WP FreeStyle Wiki の Plugin Directory への登録</a> <small>去年の年末年始(2009-2010)に書いた WP FreeStyle Wiki を、WordPress の Plugin Directory に登録しました。 WP...</small></li>
</ol>]]></description>
			<content:encoded><![CDATA[				<div id="fswiki_content64" class="fswiki_content">
				<p>Munin Plugin である ipmitool_sensor_ plugin の新しいバージョン 1.5 をリリースしました。</p>
				<p>[2011-02-07追記]: コメントにて kikumoto さんよりご指摘いただいたとおり、temp_upper_warning と temp_upper_critical が逆になっていたので修正したバージョン 1.6 をアップロードしました。</p>
				<ul>
				<li> <a href="http://exchange.munin-monitoring.org/plugins/ipmitool_sensor_/">Munin Exchange | ipmitool_sensor_ plugin</a></ll>
				</ul>
				<p>このバージョンの変更点は下記のとおりです。</p>
				<ul>
				<li> temp_upper_warning と temp_upper_critical の設定が有効に動作していなかったのを修正</ll>
				</ul>
				<p>設定値を取得するところで指定する設定名を typo していて正常に動作していませんでした。なお、今回の修正は、メールでご指摘いただきました(メールでお名前載せてよいか確認し忘れたのでとりあえず未記載で)。ご指摘ありがとうございました。</p>
				<p>久しぶりに Munin Exchange を除いてみたところ、IPMI 関係の Plugin は現在 7 個あるようです。</p>
				<ul>
				<li> <a href="http://exchange.munin-monitoring.org/plugins/search?keyword=ipmi">http://exchange.munin-monitoring.org/plugins/search?keyword=ipmi</a></ll>
				</ul>
				<p>各ページに飛ぶとダウンロード数が出ます。ipmitool_sensor_ plugin は、今のところ 431 回ダウンロードされていて、ipmi plugin の中では一番使っていただけているようでした。IPMI という超マイナー需要向けの Plugin なので、他カテゴリの Plugin に比べたら全然少ない回数ですが嬉しいです。</p>
				</div>
<p>関連する記事:<ol>
<li><a href='http://jfut.integ.jp/2008/10/29/munin-ipmitool_sensor_-plugin/' rel='bookmark' title='Munin ipmitool_sensor_ Plugin'>Munin ipmitool_sensor_ Plugin</a> <small>Muninでマシンのファン回転数、温度、電圧をグラフ化するにはsensor_というPluginを使うのが楽です。ただし、このPluginはlm_sensorsの値を見るので、比較的新しい対応していないマザーボードだと値を [...]...</small></li>
<li><a href='http://jfut.integ.jp/2009/02/08/munin-plugin-ipmitool_sensor_-1-4/' rel='bookmark' title='Munin Plugin: ipmitool_sensor_ 1.4'>Munin Plugin: ipmitool_sensor_ 1.4</a> <small>以前、2008-10-29 (Wed) &#8211; Munin ipmitool_sensor_ Pluginで紹介したMunin用のipmitool_sensor_ Pluginの新しいバージョンをリリースしました [...]...</small></li>
<li><a href='http://jfut.integ.jp/2011/01/05/wp-freestyle-wiki/' rel='bookmark' title='WP FreeStyle Wiki の Plugin Directory への登録'>WP FreeStyle Wiki の Plugin Directory への登録</a> <small>去年の年末年始(2009-2010)に書いた WP FreeStyle Wiki を、WordPress の Plugin Directory に登録しました。 WP...</small></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://jfut.integ.jp/2011/01/28/munin-plugin-ipmitool_sensor_-1-5/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>WP FreeStyle Wiki の Plugin Directory への登録</title>
		<link>http://jfut.integ.jp/2011/01/05/wp-freestyle-wiki/</link>
		<comments>http://jfut.integ.jp/2011/01/05/wp-freestyle-wiki/#comments</comments>
		<pubDate>Tue, 04 Jan 2011 17:04:13 +0000</pubDate>
		<dc:creator>jfut</dc:creator>
				<category><![CDATA[Diary]]></category>
		<category><![CDATA[Server]]></category>

		<guid isPermaLink="false">http://jfut.integ.jp/?p=953</guid>
		<description><![CDATA[去年の年末年始(2009-2010)に書いた WP FreeStyle Wiki を、WordPress の Plugin Directory に登録しました。 WP FreeStyle Wiki Plugin Dire [...]
関連する記事:<ol>
<li><a href='http://jfut.integ.jp/2010/01/01/wp-fswiki/' rel='bookmark' title='WP FreeStyle Wiki'>WP FreeStyle Wiki</a> <small>tDiaryからWordPressに乗り換え、これから書いていくのに標準のエディタで書くのがどうしても面倒だったので、一番慣れ親しんでいるFreeStyle Wikiの記法で書けるPlugin、WP FreeStyle [...]...</small></li>
<li><a href='http://jfut.integ.jp/2008/10/29/munin-ipmitool_sensor_-plugin/' rel='bookmark' title='Munin ipmitool_sensor_ Plugin'>Munin ipmitool_sensor_ Plugin</a> <small>Muninでマシンのファン回転数、温度、電圧をグラフ化するにはsensor_というPluginを使うのが楽です。ただし、このPluginはlm_sensorsの値を見るので、比較的新しい対応していないマザーボードだと値を [...]...</small></li>
<li><a href='http://jfut.integ.jp/2011/01/28/munin-plugin-ipmitool_sensor_-1-5/' rel='bookmark' title='Munin Plugin: ipmitool_sensor_ 1.5 &amp; 1.6'>Munin Plugin: ipmitool_sensor_ 1.5 &#038; 1.6</a> <small>Munin Plugin である ipmitool_sensor_ plugin の新しいバージョン 1.5 をリリースしました。 [2011-02-07追記]: コメントにて...</small></li>
</ol>]]></description>
			<content:encoded><![CDATA[				<div id="fswiki_content77" class="fswiki_content">
				<p><a href="http://jfut.integ.jp/2010/01/01/wp-fswiki/">去年の年末年始(2009-2010)に書いた WP FreeStyle Wiki</a> を、WordPress の Plugin Directory に登録しました。</p>
				<ul>
				<li> <a href="http://wordpress.org/extend/plugins/wp-freestyle-wiki/">WP FreeStyle Wiki</a></ll>
				</ul>
				<p>Plugin Directory に登録したことで、WordPress の管理画面のプラグインから新規追加や自動更新できるようになりました。また、同封する FreeStyle Wiki を FreeStyle Wiki 3.6.4 にバージョンアップして、Plugin Directory 用に修正した WP FreeStyle Wiki 0.2.2 をリリースしてあります。</p>
				</div>
<p>関連する記事:<ol>
<li><a href='http://jfut.integ.jp/2010/01/01/wp-fswiki/' rel='bookmark' title='WP FreeStyle Wiki'>WP FreeStyle Wiki</a> <small>tDiaryからWordPressに乗り換え、これから書いていくのに標準のエディタで書くのがどうしても面倒だったので、一番慣れ親しんでいるFreeStyle Wikiの記法で書けるPlugin、WP FreeStyle [...]...</small></li>
<li><a href='http://jfut.integ.jp/2008/10/29/munin-ipmitool_sensor_-plugin/' rel='bookmark' title='Munin ipmitool_sensor_ Plugin'>Munin ipmitool_sensor_ Plugin</a> <small>Muninでマシンのファン回転数、温度、電圧をグラフ化するにはsensor_というPluginを使うのが楽です。ただし、このPluginはlm_sensorsの値を見るので、比較的新しい対応していないマザーボードだと値を [...]...</small></li>
<li><a href='http://jfut.integ.jp/2011/01/28/munin-plugin-ipmitool_sensor_-1-5/' rel='bookmark' title='Munin Plugin: ipmitool_sensor_ 1.5 &amp; 1.6'>Munin Plugin: ipmitool_sensor_ 1.5 &#038; 1.6</a> <small>Munin Plugin である ipmitool_sensor_ plugin の新しいバージョン 1.5 をリリースしました。 [2011-02-07追記]: コメントにて...</small></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://jfut.integ.jp/2011/01/05/wp-freestyle-wiki/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>古いサーバでJDK 6 Update 18に更新したらタイムゾーンがJSTからGMTに変わった件と対処法</title>
		<link>http://jfut.integ.jp/2010/01/20/jdk-6-update-18-default-timezone-on-old-server/</link>
		<comments>http://jfut.integ.jp/2010/01/20/jdk-6-update-18-default-timezone-on-old-server/#comments</comments>
		<pubDate>Wed, 20 Jan 2010 13:09:50 +0000</pubDate>
		<dc:creator>jfut</dc:creator>
				<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://jfut.integ.jp/?p=910</guid>
		<description><![CDATA[とある古いサーバにインストールされているJDK 6 Update 17をJDK 6 Update 18に更新したらデフォルトのタイムゾーンがJSTからGMTに変わってしまいました。他のサーバでは問題なかったのでこの古いサ [...]
関連する記事:<ol>
<li><a href='http://jfut.integ.jp/2005/12/04/apache-2-2-dav_svn%E3%81%8C%E3%82%A8%E3%83%A9%E3%83%BC-%E8%A7%A3%E6%B1%BA/' rel='bookmark' title='Apache 2.2 dav_svnがエラー (解決)'>Apache 2.2 dav_svnがエラー (解決)</a> <small> ...</small></li>
<li><a href='http://jfut.integ.jp/2006/05/28/jdk-5-0-update-7/' rel='bookmark' title='JDK 5.0 Update 7'>JDK 5.0 Update 7</a> <small> ...</small></li>
<li><a href='http://jfut.integ.jp/2007/11/17/devloader-ex-mayaa/' rel='bookmark' title='DevLoader改変、Mayaa対応編'>DevLoader改変、Mayaa対応編</a> <small>昨日のDevLoader改変により、最近のSeasarを使ったプロジェクトに対応したものの、今日いざ自分のMayaaを使ったプロジェクトのjarファイルをMavenで管理させたら見事に上手く動きませんでした。 というわけ [...]...</small></li>
</ol>]]></description>
			<content:encoded><![CDATA[				<div id="fswiki_content85" class="fswiki_content">
				<p>とある古いサーバにインストールされているJDK 6 Update 17をJDK 6 Update 18に更新したらデフォルトのタイムゾーンがJSTからGMTに変わってしまいました。<strong>他のサーバでは問題なかったのでこの古いサーバ限定の問題です。</strong></p>
				<p>状況を確認するためにサンプルコードを動かして確認しました。</p>
				<pre>import java.util.Date;

public class DateTest {
    public static void main(String[] args) {
        System.out.println(new java.util.Date());
    }
}
</pre>
				<p>実行してみます。</p>
				<pre># /usr/local/java/jdk1.6.0_17/bin/java DateTest
Wed Jan 20 21:42:44 JST 2010
# /usr/local/java/jdk1.6.0_18/bin/java DateTest
Wed Jan 20 12:42:56 GMT 2010
</pre>
				<p>というようにJDK 6 Update 17ではJSTなのにJDK 6 Update 18だとGMTになってしまいました。<a href="http://sel.ist.osaka-u.ac.jp/~m-itii/php/d/soliloquy.php?mode=daily&#038;date=2007%2F3%2F15">JVMのタイムゾーンがGMTになる 追記</a>と同じ原因のようで、/etc/localtime を調べてみたら /usr/share/zoneinfo/Asia/Tokyo と違うものでした。</p>
				<pre># ls -al /etc/localtime
-rw-r--r--  1 root root 73 Feb 26  2004 /etc/localtime
# ls -al /usr/share/zoneinfo/Asia/Tokyo
-rw-r--r--  2 root root 125 Mar 22  2006 /usr/share/zoneinfo/Asia/Tokyo
</pre>
				<p>というわけで、コピーして直します。</p>
				<pre>cp -a /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
</pre>
				<p>再び確認します。</p>
				<pre># /usr/local/java/jdk1.6.0_17/bin/java DateTest
Wed Jan 20 21:49:58 JST 2010
# /usr/local/java/jdk1.6.0_18/bin/java DateTest
Wed Jan 20 21:50:07 JST 2010
</pre>
				<p>無事直りました。良かった良かった。</p>
				<p>/etc/localtime が食い違ってのは、/etc/localtimeのタイムスタンプが2004-02-26 という古いサーバなので、インストール時に何かミスったか、これまでの運用の中での更新で何かがおきたのかなと思います。ただ、JDK更新したらいきなしWEBアプリが書き込むデータのタイムスタンプが9時間ずれ初めてたのでビックリしました。</p>
				</div>
<p>関連する記事:<ol>
<li><a href='http://jfut.integ.jp/2005/12/04/apache-2-2-dav_svn%E3%81%8C%E3%82%A8%E3%83%A9%E3%83%BC-%E8%A7%A3%E6%B1%BA/' rel='bookmark' title='Apache 2.2 dav_svnがエラー (解決)'>Apache 2.2 dav_svnがエラー (解決)</a> <small> ...</small></li>
<li><a href='http://jfut.integ.jp/2006/05/28/jdk-5-0-update-7/' rel='bookmark' title='JDK 5.0 Update 7'>JDK 5.0 Update 7</a> <small> ...</small></li>
<li><a href='http://jfut.integ.jp/2007/11/17/devloader-ex-mayaa/' rel='bookmark' title='DevLoader改変、Mayaa対応編'>DevLoader改変、Mayaa対応編</a> <small>昨日のDevLoader改変により、最近のSeasarを使ったプロジェクトに対応したものの、今日いざ自分のMayaaを使ったプロジェクトのjarファイルをMavenで管理させたら見事に上手く動きませんでした。 というわけ [...]...</small></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://jfut.integ.jp/2010/01/20/jdk-6-update-18-default-timezone-on-old-server/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Cubbyのアクションクラスで定数を利用してリファクタリングしやすくする</title>
		<link>http://jfut.integ.jp/2010/01/11/cubby-actionclass-with-static-field/</link>
		<comments>http://jfut.integ.jp/2010/01/11/cubby-actionclass-with-static-field/#comments</comments>
		<pubDate>Mon, 11 Jan 2010 03:10:12 +0000</pubDate>
		<dc:creator>jfut</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Seasar]]></category>

		<guid isPermaLink="false">http://jfut.integ.jp/?p=884</guid>
		<description><![CDATA[Cubbyのアクションクラスにはバリデーションルールの定義時やアノテーションに文字列が登場します。文字列で指定しているのでリファクタリングする時に修正漏れなどがおきそうでちょっと怖いです。そこで、それらの文字列を定数にし [...]
関連する記事:<ol>
<li><a href='http://jfut.integ.jp/2010/01/10/cubby-actionmethod-annotation-order/' rel='bookmark' title='Cubbyでアクションメソッドに指定するアノテーションの順番'>Cubbyでアクションメソッドに指定するアノテーションの順番</a> <small>しばらく時間が空いてからCubbyを使ったWEBアプリケーションを書く時に、アクションメソッドに指定するアノテーションの順番どうだったかなっと考えるのでまとめます。アノテーションなので適当な順番に書いても問題なく動作しま [...]...</small></li>
<li><a href='http://jfut.integ.jp/2009/04/16/cubby-regex-trim-required-validator/' rel='bookmark' title='入力された文字の前後の空白スペースなどの文字列を除去しても有効な文字があるか検証するValidatorと実際に取り除く処理'>入力された文字の前後の空白スペースなどの文字列を除去しても有効な文字があるか検証するValidatorと実際に取り除く処理</a> <small>入力フォームでユーザに文字を入力させると、前後に空白スペースなどを入れちゃったりしますよね。Validatorで前後に空白スペースがあればエラーにしても良いですが、それはちょっと不親切なので自動的に取り除いてあげるのが親 [...]...</small></li>
<li><a href='http://jfut.integ.jp/2007/01/09/1action-1actionform%E3%82%921event-1actionform%E3%81%B8/' rel='bookmark' title='1Action 1ActionFormを1Event 1ActionFormへ'>1Action 1ActionFormを1Event 1ActionFormへ</a> <small> ...</small></li>
</ol>]]></description>
			<content:encoded><![CDATA[				<div id="fswiki_content93" class="fswiki_content">
				<p>Cubbyのアクションクラスにはバリデーションルールの定義時やアノテーションに文字列が登場します。文字列で指定しているのでリファクタリングする時に修正漏れなどがおきそうでちょっと怖いです。そこで、それらの文字列を定数にしてしまえば、少しだけリファクタリングしやすくなりそうです。また、IDE上での参照元・参照先への移動や使われているかどうかのチェックも簡単になります。</p>
				<p>例えば、次のようなアクションクラスがあるとします。</p>
				<pre>@Path(&quot;hoge&quot;)
public class HogeAction extends AbstractAction {

    @Binding(bindingType = BindingType.NONE)
    protected ValidationRules processApplyValidation =
        new DefaultValidationRules() {
            @Override
            public void initialize() {
                add(&quot;token&quot;, new TokenValidator());
                add(&quot;name&quot;, new TokenValidator());
                add(&quot;comment&quot;, new TokenValidator());
            }
        };

    @RequestParameter
    public HogeParameterDto hogeParameterDto;

    @Path(&quot;process&quot;)
    @Accept(POST)
    @OnSubmit(&quot;apply&quot;)
    @Form(&quot;hogeParameterDto&quot;)
    @Validation(rules = &quot;processApplyValidation&quot;, errorPage = &quot;/hoge/edit.html&quot;)
    public ActionResult processApply() {
        return new Forward(&quot;/hoge/edit.html&quot;);
    }

}
</pre>
				<p>これを次のようにします。</p>
				<pre>import static org.example.test.entity.names.Names.*;

@Path(&quot;hoge&quot;)
public class HogeAction extends AbstractAction {

    private static final String processApplyValidationName
        = &quot;processApplyValidation&quot;;
    @Binding(bindingType = BindingType.NONE)
    protected ValidationRules processApplyValidation =
        new DefaultValidationRules() {
            @Override
            public void initialize() {
                add(TOKEN, new TokenValidator());
                add(post().name().toString(), new TokenValidator());
                add(post().comment().toString(), new TokenValidator());
            }
        };

    private static final String hogeParameterDtoName = &quot;hogeParameterDto&quot;;
    @RequestParameter
    public HogeParameterDto hogeParameterDto;

    @Path(&quot;process&quot;)
    @Accept(POST)
    @OnSubmit(&quot;apply&quot;)
    @Form(hogeParameterDtoName)
    @Validation(rules = processApplyValidationName, errorPage = &quot;/hoge/edit.html&quot;)
    public ActionResult processApply() {
        return new Forward(&quot;/hoge/edit.html&quot;);
    }

}
</pre>
				<p>変更した箇所を説明します。</p>
				</div>
				<p><span id="more-884"></span></p>
				<div id="fswiki_content94" class="fswiki_content">
				<h3> 説明</h3>
				<h4> S2JDBC-GenのNamesクラス内のstatic関数をStatic Import</h4>
				<pre>import static org.example.test.entity.names.Names.*;
</pre>
				<p>S2JDBC-Gen 2.4.40で導入されたNamesクラス内のstatic関数をStatic Importします。バリデーションルールのinitialize()内で使います。</p>
				<ul>
				<li> 参考: <a href="http://d.hatena.ne.jp/taedium/20091008/p1">Namesクラス と SqlFilesクラス &#8211; taediumの日記</a></ll>
				</ul>
				<h4> バリデーションルールの変数名を定数定義</h4>
				<pre>private static final String processApplyValidationName = &quot;processApplyValidation&quot;;
</pre>
				<p>バリデーションルールprocessApplyValidationの変数名を表す定数です。アクションメソッドの @Validation にはここで指定した定数を使うようにすることでリファクタリングしやすくします。</p>
				<h4> バリデーションルール: TokenValidatorに使用するパラメータの定数化と使用</h4>
				<pre>add(TOKEN, new TokenValidator());
</pre>
				<p>Cubbyで標準提供されている2重サブミットを検証するTokenValidatorで仕様するパラメータ名を指定します。TOKEN は AbstractAction で次のように定義しておきます。</p>
				<pre>protected static final String TOKEN = &quot;token&quot;;
</pre>
				<p>この例では、パラメータ名に &quot;token&quot; を使用しています。</p>
				<h4> バリデーションルール: リクエストパラメータに定数を使用</h4>
				<pre>add(post().name().toString(), new TokenValidator());
add(post().comment().toString(), new TokenValidator());
</pre>
				<p>本来NamesクラスからStatic Importした静的関数はS2JDBCでjoinやwhereで指定するのに使うのに便利な関数ですが、ここではその文字列表現を流用してパラメータの指定に使用します。例ではテーブルpostが持つ属性名nameとcommentの文字列表現を流用しています。</p>
				<p>リクエストパラメータ名とテーブルの属性名は一緒なことが多いと思うので、多くの場合で流用できると思います。これでS2JBDC同様バリデーションの項目名もリファクタリングしやすくなります。</p>
				<h4> リクエストパラメータのバインド先の変数名を定数定義</h4>
				<pre>private static final String hogeParameterDtoName = &quot;hogeParameterDto&quot;;
</pre>
				<p>バリデーションルールの変数名同様、リクエストパラメータのバインド先hogeParameterDtoの変数名を表す定数です。アクションメソッドの @Form にはここで指定した定数を使うようにすることでリファクタリングしやすくします。</p>
				<h4> @Form で定数を使用する</h4>
				<pre>...
@Form(hogeParameterDtoName)
...
public ActionResult processApply() {
    ...
}
</pre>
				<p>先に定義した リクエストパラメータのバインド先hogeParameterDtoの変数名 をアクションメソッドに対するアノテーション @Form に指定します。</p>
				<h4> @Validation で定数を使用する</h4>
				<pre>...
@Validation(rules = processApplyValidationName, errorPage = &quot;/hoge/edit.html&quot;)
...
public ActionResult processApply() {
    ...
}
</pre>
				<p>先に定義した バリデーションルールprocessApplyValidationの変数名 をアクションメソッドに対するアノテーション @Validation に指定します。</p>
				<hr />
				<p>以上です。</p>
				<p>やろうと思えば、@Path や @OnSubmit などでも定数を使えますがそこは定数にしていません。@OnSubmitはHTMLファイルの中身と対応するので定数化してもリファクタリングのしやすさには影響しないですが、@PathはHTMLファイル名の変更や移動の時に使えるので定数化しても良いかもしれないですね。</p>
				</div>
<p>関連する記事:<ol>
<li><a href='http://jfut.integ.jp/2010/01/10/cubby-actionmethod-annotation-order/' rel='bookmark' title='Cubbyでアクションメソッドに指定するアノテーションの順番'>Cubbyでアクションメソッドに指定するアノテーションの順番</a> <small>しばらく時間が空いてからCubbyを使ったWEBアプリケーションを書く時に、アクションメソッドに指定するアノテーションの順番どうだったかなっと考えるのでまとめます。アノテーションなので適当な順番に書いても問題なく動作しま [...]...</small></li>
<li><a href='http://jfut.integ.jp/2009/04/16/cubby-regex-trim-required-validator/' rel='bookmark' title='入力された文字の前後の空白スペースなどの文字列を除去しても有効な文字があるか検証するValidatorと実際に取り除く処理'>入力された文字の前後の空白スペースなどの文字列を除去しても有効な文字があるか検証するValidatorと実際に取り除く処理</a> <small>入力フォームでユーザに文字を入力させると、前後に空白スペースなどを入れちゃったりしますよね。Validatorで前後に空白スペースがあればエラーにしても良いですが、それはちょっと不親切なので自動的に取り除いてあげるのが親 [...]...</small></li>
<li><a href='http://jfut.integ.jp/2007/01/09/1action-1actionform%E3%82%921event-1actionform%E3%81%B8/' rel='bookmark' title='1Action 1ActionFormを1Event 1ActionFormへ'>1Action 1ActionFormを1Event 1ActionFormへ</a> <small> ...</small></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://jfut.integ.jp/2010/01/11/cubby-actionclass-with-static-field/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

