<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title>Natz&apos;s Digital 漂流記</title>
	<link rel="alternate" type="text/html" href="http://www.natzworks.com/digital/" />
	<link rel="self" type="application/atom+xml" href="http://www.natzworks.com/digital/atom.xml" />
	<id>tag:www.natzworks.com,2009-04-07:/digital//8</id>
	<updated>2010-03-07T18:04:47Z</updated>
	<subtitle>Natz の PC/サーバー/デジタル機器に翻弄される(?)日々</subtitle>
	<generator uri="http://www.sixapart.com/movabletype/">Movable Type 4.26</generator>


<entry>
	<title>Windows 7 RC 自動シャットダウン開始</title>
	<link rel="alternate" type="text/html" href="http://www.natzworks.com/digital/entries/2010/000264.html" />
	<id>tag:www.natzworks.com,2010:/digital//8.264</id>

	<published>2010-03-06T15:34:51Z</published>
	<updated>2010-03-07T18:04:47Z</updated>

	<summary>妻のマシンを Windows 7 化して (グラフィックス・カードは Aero が使えず、オンボードのオーディオは存在自体が認識されず、それぞれ必要最低限クラスのグラフィックス・カードとサウンド・カードを買ったりして少々手間取った) アレコレいじっていた先日、Windows 7 RC の強制シャットダウン措置が始まる 03/01 を過ぎていることに気が付いた。そこで 「どれ、どうシャットダウンされるのか体験してみるか」 と、VirtualBox 上の仮想マシン (以下 VM) の Windows 7 RC を起動した。...</summary>
	<author>
		<name>Natz</name>
		
	</author>
	
		<category term="OS" scheme="http://www.sixapart.com/ns/types#category" />
	
		<category term="Windows 7" scheme="http://www.sixapart.com/ns/types#category" />
	
	<category term="windows7" label="Windows 7" scheme="http://www.sixapart.com/ns/types#tag" />
	<category term="windows7rc" label="Windows 7 RC" scheme="http://www.sixapart.com/ns/types#tag" />
	
	<content type="html" xml:lang="en" xml:base="http://www.natzworks.com/digital/">
		<![CDATA[妻のマシンを Windows 7 化して (グラフィックス・カードは Aero が使えず、オンボードのオーディオは存在自体が認識されず、それぞれ必要最低限クラスのグラフィックス・カードとサウンド・カードを買ったりして少々手間取った) アレコレいじっていた先日、Windows 7 RC の強制シャットダウン措置が始まる 03/01 を過ぎていることに気が付いた。そこで 「どれ、どうシャットダウンされるのか体験してみるか」 と、<a href="http://www.virtualbox.org/" target="_blank">VirtualBox</a> 上の仮想マシン (以下 VM) の Windows 7 RC を起動した。 ]]>
		<![CDATA[久々に RC を動かして面食らったのは、ログオン後間もなく表示された Windows Update の 「偽造ソフトウェア被害者の可能性あり」 と言うメッセージ。確か有効期限は 5月いっぱいまでで、3月からは 「いい加減、製品版を買うように」 と移行を促す期間だと理解していたが、この段階で既に海賊版扱いとは・・・。<br /><br /><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><img alt="20100307a_1.jpg" src="http://www.natzworks.com/digital/images/2010/20100307a_1.jpg" class="mt-image-none" style="" height="219" width="320" /></span><br />
<span class="exp">いきなり海賊版呼ばわり</span><br />
<br />しばらく放置すると 「Windows を使い続けるには、ファイルをバックアップして製品版をインストールし直せ」 と言う旨のメッセージが表示され、さらに放置すると、VM がシャットダウンされた。問答無用でシャットダウンかと思っていたが、事前にメッセージを表示して警告してくれるのは、冷徹になり切れていないのか。<br /><br />いずれにせよ 6月以降に起動するとどうなるのか興味があるので、RC の VM は、もうしばらく生かしておくとしよう。<br /><br />最後に一つ、古い PC に Windows 7 をインストールして音が鳴らずに困っている方向けの情報提供。「とりあえず鳴りゃいいんだよ」 と特にこだわらないのであれば、<a href="http://www.amazon.co.jp/gp/product/B001398KN6?ie=UTF8&amp;tag=natz-22&amp;linkCode=as2&amp;camp=247&amp;creative=7399&amp;creativeASIN=B001398KN6" target="_blank">Sound Blaster 5.1 VX PCI SB-5.1-VX</a><img src="http://www.assoc-amazon.jp/e/ir?t=natz-22&amp;l=as2&amp;o=9&amp;a=B001398KN6" alt="" style="border: medium none ! important; margin: 0px ! important;" border="0" height="1" width="1" /> が安くて入手しやすい (本エントリー執筆現在)。Windows Update からダウンロードできるドライバー "Creative - Other hardware - SB 5.1 VX" で動く。<br />
<br />
<br />
<iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=natz-22&amp;o=9&amp;p=8&amp;l=as1&amp;m=amazon&amp;f=ifr&amp;md=1X69VDGQCMF7Z30FM082&amp;asins=B001398KN6" style="width: 120px; height: 240px;" marginwidth="0" marginheight="0" scrolling="no" frameborder="0"></iframe>
]]>
	</content>
</entry>

<entry>
	<title>Windows 7: C:\Program Files フォルダーを別ドライブに移動 (x64 対応半自動化版)</title>
	<link rel="alternate" type="text/html" href="http://www.natzworks.com/digital/entries/2010/000263.html" />
	<id>tag:www.natzworks.com,2010:/digital//8.263</id>

	<published>2010-03-01T17:40:19Z</published>
	<updated>2010-03-09T20:19:15Z</updated>

	<summary>以前のエントリーで Windows 7 の C:\Program Fiels フォルダーを別ドライブに移動させる方法を紹介したが、本エントリーでは以前の加筆修正をまとめて 「x64 対応半自動化版」 とし、改めて 32ビット及び 64ビット環境双方でより汎用的に使える方法を紹介する。...</summary>
	<author>
		<name>Natz</name>
		
	</author>
	
		<category term="OS" scheme="http://www.sixapart.com/ns/types#category" />
	
		<category term="Windows 7" scheme="http://www.sixapart.com/ns/types#category" />
	
	<category term="programfiles" label="Program Files" scheme="http://www.sixapart.com/ns/types#tag" />
	<category term="windows7" label="Windows 7" scheme="http://www.sixapart.com/ns/types#tag" />
	<category term="移動" label="移動" scheme="http://www.sixapart.com/ns/types#tag" />
	
	<content type="html" xml:lang="en" xml:base="http://www.natzworks.com/digital/">
		<![CDATA[<a href="http://www.natzworks.com/digital/entries/2010/000255.html">以前のエントリー</a>で Windows 7 の C:\Program Fiels フォルダーを別ドライブに移動させる方法を紹介したが、本エントリーでは以前の加筆修正をまとめて 「x64 対応半自動化版」 とし、改めて 32ビット及び 64ビット環境双方でより汎用的に使える方法を紹介する。<br />]]>
		<![CDATA[<div class="caution">
<p class="title">※ 注意 ※</p>
以下の作業で操作を誤ると、OS に回復不能な損傷を与えて Windows の再インストールが必要になる他、データを失う等の副次的被害が発生する可能性があります。本ページで紹介するスクリプトは筆者の環境で意図通りに動作することを確認していますが、全ての環境において正常動作を保証するものではありません。また処理内容を理解せずに改変及び実行することは、非常に危険です。本ページの内容を参考に行った作業によって何らかの損害を被った場合も筆者は一切の責任を負いませんので、お試しになる場合は、くれぐれも自己責任でお願いします。<br />
</div>
<br />
想定する環境は Windows 7 Ultimate の 32ビット版及び 64ビット版。ProgramFiles フォルダーの移動前のパスを C:\Program Files、移動先のパスを D:\Program Files とし、文中では実パスに加え、それぞれ 「旧 ProgramFiles フォルダー」、「移動先 ProgramFiles フォルダー」 とも表記する。表示フォントによってはパス区切り記号の "¥" がバックスラッシュ (半角＼) になるので、"/" と間違えないように注意。<br /><br />作業の流れは以前と変わらず、次の通り。<br />
<br />
<ol>
<li>ローカル Administrator の有効化とパスワード設定。</li>
<li>ProgramFiles フォルダーをコピー。</li>
<li>レジストリの書き換え。</li>
<li>旧 ProgramFiles フォルダーの削除とシンボリック・リンク作成。</li>
<li>移動先のアプリケーションの動作確認。</li>
</ol>
<br />
<h4>1. ローカル Administrator の有効化とパスワード設定</h4>
まず、ローカル Administrator を有効化する。任意のユーザーでログオン後、スタート メニューの 「全てのプログラム」 → 「アクセサリ」 → 「コマンド プロンプト」 を右クリック → 「管理者として実行」 
でコマンド プロンプトを管理者権限で起動し、次のコマンドを入力する。<br />
<br />
<div class="cmd">
&gt; net user Administrator /active:yes　← Administrator を有効化<br />
<br />
&gt; net user Administrator &lt;PASSWORD&gt;　← パスワードを設定<br />
<br />
&gt; logoff　← ログオフ<br />
</div>
<br />
管理者権限がない場合は、「システム エラー 5」 「アクセスが拒否されました」 等のエラーが発生する。コマンドが正常に終了したら、ログオフして Administrator でログオンし直す。<br /><br />
<h4>2. ProgramFiles フォルダーをコピー</h4>次に旧 ProgramFiles フォルダーをコピーする。基本は xcopy コマンドに適切なオプションを与えて手動コピーだが、同じ作業を繰り返す可能性があるなら、バッチファイルでスクリプト化しておいた方が、ミスをするリスクを軽減できる。<br /><br />以下のスクリプトは、旧 ProgramFiles フォルダーを所有権、アクセス許可設定、監査設定等を再現しつつ、移動先にコピーする。誤って実行してしまうことを防ぐため、Administrator 以外は実行できない (＝最後に飛ばされる) ようにしている。ファイル名は拡張子が ".bat" なら何でも構わないが、"hoge.bat" にするよりは、例えば "MoveProgramFiles_2_Copy.bat" 等、処理内容を想像できる名前の方がいいと思う。<br /><br />※ 03/05 追記<br />日本語環境に存在する "Program Files\Windows NT\アクセサリ" は同じ場所にある "Accessories" へのジャンクションだが、xcopy に /b オプションを付加しても参照先の実体がコピーされてしまう。この対策として "アクセサリ" を一度削除して、改めて同名のジャンクションを作成している。<br /><br />
<div class="cmd">
@echo off<br />
<br />
echo ### MOVING PROGRAMFILES: PHASE 2 ###<br />
echo.<br />
<br />
if not "%USERNAME%" equ "Administrator" (<br />
&nbsp;&nbsp;&nbsp; echo Only the Administrator can run this script.<br />
&nbsp;&nbsp;&nbsp; goto ERROR<br />
)<br />
<br />rem User settings: START ==========<br />

set FromDir=C:\Program Files<br />
set FromDirX86=C:\Program Files (x86)<br />
set ToDir=D:\Program Files<br />
set ToDirX86=D:\Program Files (x86)<br />
rem User settings: END ==========<br />

<br />
:X86<br />
if /i "%ProgramFiles%" equ "%FromDir%" (<br />
&nbsp;&nbsp;&nbsp; if exist "%FromDir%" (<br />
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if not exist "%ToDir%" (<br />
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; xcopy /e /h /k /o /x&nbsp; /b /y "%FromDir%" "%ToDir%\"<br />
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; if exist "%ToDir%\Windows NT\アクセサリ" (<br />
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;takeown /f "%ToDir%\Windows NT\アクセサリ" /r /a /d y<br />
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;cacls "%ToDir%\Windows NT\アクセサリ" /t /e /c /g %USERNAME%:f<br />
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;rmdir /s /q "%ToDir%\Windows NT\アクセサリ"<br />
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;if not exist "%ToDir%\Windows NT\アクセサリ" mklink /j "%ToDir%\Windows NT\アクセサリ" "%ToDir%\Windows NT\Accessories"<br />
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;)<br />
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; )<br />
&nbsp;&nbsp;&nbsp; )<br />
)<br />
<br />
:X64<br />
if /i "%ProgramFiles(x86)%" equ "%FromDirX86%" (<br />
&nbsp;&nbsp;&nbsp; if exist "%FromDirX86%" (<br />
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if not exist "%ToDirX86%" (<br />
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; xcopy /e /h /k /o /x /b /y "%FromDirX86%" "%ToDirX86%\"<br />
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; )<br />&nbsp;&nbsp;&nbsp; )<br />
)<br />
<br />
:END<br />
echo.<br />
echo Copying ProgramFiles directories was completed.<br />
echo Replace paths in your registry as follows:<br />
if /i "%ProgramFiles%" equ "%FromDir%" (<br />
&nbsp;&nbsp;&nbsp; echo&nbsp;&nbsp; "%FromDir%" to "%ToDir%"<br />
)<br />
if /i "%ProgramFiles(x86)%" equ "%FromDirX86%" (<br />
&nbsp;&nbsp;&nbsp; echo&nbsp;&nbsp; "%FromDirX86%" to "%ToDirX86%"<br />
)<br /><br />
:ERROR<br />
pause<br />
</div>
<br />
コピーが完了したら、旧 ProgramFiles フォルダーと移動先 ProgramFiles フォルダーのプロパティ・ウィンドウを並べて、ファイルやフォルダーの数、合計サイズが正しいことを目視確認する。(03/05 追記： xcopy に /b オプションがなかった過去の記事を参考に実施した方は、"Phase 4" のスクリプトを参考に移動先 ProgarmFiles フォルダー内の "WindowsNT\アクセサリ" の所有権とフルコントロールを設定後に削除し、mklink /j で Accessories へのジャンクションを作成すると、同等の結果となる)<br /><br />尚 「ディスク上のサイズ」 は、それぞれのフォルダーが存在するパーティションのクラスター・サイズ (＝アロケーション・ユニット・サイズ) によっては、一致しないことがある。前述の内容が正しければ、数値が違っていても気にする必要はない。<br />
<br />
<h4>3. レジストリの書き換え</h4>ProgramFiles フォルダーのコピーが完了したら、レジストリ中に存在する文字列 "C:\Program Files" を "D:\Program Files" に置換する。ただ該当箇所は大量に存在するので、Windows 標準の 「レジストリ エディター」 でチマチマ置換する自信がなければ (僕は無理)、<a href="http://www.funduc.com/registry_toolkit.htm">Registry Toolkit</a> や <a href="http://www.vector.co.jp/soft/win95/util/se063279.html">RegGrep</a> (32ビット環境のみ) 等の便利なツールを利用した方がいい。<br /><br />Registry Toolkit を使う場合は、ツリー構造の "My Registry" を選択した状態でメニューの 
「Registry」 → 「Search of Replace in Registry」 ダイアログを表示させ、"Settings" の "Match Case"、"Search/Replace 
In" の "Data" と "Value" のチェックを ON にして、「Replace」 ボタンをクリックする 
(各項目名が何を指すのか不明な場合は、<a href="http://www.yoshibaworks.com/ayacy/inasoft/webhelp/rnsf7/HLP000124.html" target="_blank">こちらのサイト</a>が参考になる)。"Start In:" が "My Registry" 
以外になっている場合はレジストリの全域をスキャンできないので、忘れずに確認する。ヒットした文字列を全て置換するには、最初に表示されるダイアログで 「Replace Rest」 ボタンをクリック。<br /><br />尚、Registry Toolkit はシェアウェア (32ビット版/64ビット版各 $25.00、両方で $35.00。いずれも本エントリー執筆時点での価格) だが、今回限りの利用であれば、未登録状態でも目的は達せられる。もちろんそのまま使い続けたいと思えばライセンス購入を検討すればいいし、他に使い慣れたレジストリ編集ツールがあれば、そちらを使っても一向に構わない。<br /><br /><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><img alt="20100228a_1.jpg" src="http://www.natzworks.com/digital/images/2010/20100228a_1.jpg" class="mt-image-none" style="" width="320" height="215" /></span><br />
<span class="exp">Registry Toolkit での置換</span><br />
<br />環境によっては 8.3形式の短いファイル名が使われている可能性もあるので、C:\PROGRA~1 を検索してみて、存在すれば D:\PROGRA~1 
に置換する。<br /><br />さらに、アプリケーション単位の INI ファイル等で旧 ProgramFiles 
フォルダーがフルパスで指定されている場合も不具合が予想されるので、移動先 ProgramFiles フォルダー内で文字列 
"C:\Program Files" を検索する。その際はファイルの内容を検索対象に含めるため、事前に 「フォルダー オプション」 の 「検索」 タブにある 「検索項目」 
で、「ファイル名と内容を常に検索する」 を選択しておく。<br /><br />クリーン・インストー
ル直後の僕の環境 (＝ドライバー類も OS デフォルトのまま) では、8.3形式の ProgramFiles フォルダーのパスや、修正が必要な INI ファイルは見つからなかった。クリーン・インストール直後のように結果が予測できる単純な環境であれば、これらの検索は省略しても問題ないと思う。<br /><br />旧 ProgramFiles
 フォルダーを指す全ての文字列置換が完了後、Windows 7 を再起動する。<br />
<br />
<h4>4. 旧 ProgramFiles フォルダーの削除とシンボリック・リンク作成</h4>
旧 ProgramFiles フォルダーを削除する前には、所有権を奪ったり、アクセス許可設定を変更する作業が必要になる。HDD を別のマシンに接続したり、<a href="http://unit.aist.go.jp/itri/knoppix/">KNOPPIX</a>&nbsp; 等の CD-ROM/DVD-ROM から起動して NTFS パーティションの操作が可能な Linux から削除する方法もあるが、Windows XP にはなかった便利なコマンドが使える Windows 7 では、バッチファイルでスクリプト化しておいて直接実行するのが確実で手っ取り早い。<br /><br />以下のスクリプトは、takeown で 旧 ProgramFiles フォルダーと 64ビット環境では ProgramFiles(x86) フォルダーの所有権を Administrator に設定し、cacls で Administrator にフルコントロール権限を与えてから rmdir で削除後、mklink で C:\ 直下に移動先 ProgramFiles フォルダーと、64ビット環境では ProgramFiles(x86) フォルダーへのシンボリック・リンクを作成する。旧 ProgramFiles フォルダー削除時に邪魔になるサービス IP Helper は処理前に停止させ、処理後に改めて起動させる。また前述のスクリプト同様、Administrator 以外は実行できない (＝最後に飛ばされる) ようにしている。<br /><br />ここでもファイル名は何でもいいが、"MoveProgramFiles_4_Remove.bat" 等、処理内容を想像できる名前が望ましい。<br /><br />
<div class="cmd">
@echo off<br /><br />echo ### MOVING PROGRAMFILES: PHASE 4 ###<br />
echo.<br />
<br />
if not "%USERNAME%" equ "Administrator" (<br />
&nbsp;&nbsp;&nbsp; echo Only the Administrator can run this script.<br />
&nbsp;&nbsp;&nbsp; goto ERROR<br />
)<br />
<br />rem User settings: START ==========<br />

set FromDir=C:\Program Files<br />
set FromDirX86=C:\Program Files (x86)<br />
set ToDir=D:\Program Files<br />
set ToDirX86=D:\Program Files (x86)<br />rem User settings: END ==========<br />

<br />
net stop "IP Helper"<br />
<br />
:X86<br />
if /i "%ProgramFiles%" equ "%ToDir%" (<br />
&nbsp;&nbsp;&nbsp; if exist "%ToDir%" (<br />
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if exist "%FromDir%" (<br />
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; takeown /f "%FromDir%" /r /a /d y<br />
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; cacls "%FromDir%" /t /e /c /g %USERNAME%:f<br />
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; rmdir /s /q "%FromDir%"<br />
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if not exist "%FromDir%" mklink /d "%FromDir%" "%ToDir%"<br />
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; )<br />
&nbsp;&nbsp;&nbsp; )<br />
)<br />
<br />
:X64<br />
if /i "%ProgramFiles(x86)%" equ "%ToDirX86%" (<br />
&nbsp;&nbsp;&nbsp; if exist "%ToDirX86%" (<br />
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if exist "%FromDirX86%" (<br />
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; takeown /f "%FromDirX86%" /r /a /d y<br />
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; cacls "%FromDirX86%" /t /e /c /g %USERNAME%:f<br />
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; rmdir /s /q "%FromDirX86%"<br />
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if not exist "%FromDirX86%" mklink /d "%FromDirX86%" "%ToDirX86%"<br />
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; )<br />
&nbsp;&nbsp;&nbsp; )<br />
)<br />
<br />
net start "IP Helper"<br />
echo.<br />
dir /a C:\<br />
if exist "%ToDir%" (<br />
&nbsp;&nbsp;&nbsp; echo.<br />
&nbsp;&nbsp;&nbsp; set ProgramFiles<br />
&nbsp;&nbsp;&nbsp; set CommonProgramFiles<br />
)<br />
<br />
:END<br />
echo.<br />
echo Moving ProgramFiles directories was completed.<br />
<br />
:ERROR<br />
pause<br />
</div>
<br />
シンボリック・リンクは、レジストリの編集不可能な領域に書かれているパス対策。旧 ProgramFiles フォルダーのパスで移動先 
ProgramFiles 
フォルダーにアクセスできるようにするための仕組みで、シンボリック・リンクを作成しない状態では、デスクトップの右クリック・メニューの 
「ガジェット」 
が機能しなかった。とりあえず他には目立った不具合は見つからなかったが、作成しておいた方がよさそうだ。<br /><br />
<h4>5. 移動先のアプリケーションの動作確認</h4>
移動させたアプリケーションが正常に動作することを確認し、作業完了。<div><br /></div>]]>
	</content>
</entry>

<entry>
	<title>VMware ESXi 4.0 に物理 NIC を追加 (Dell PowerEdge 830)</title>
	<link rel="alternate" type="text/html" href="http://www.natzworks.com/digital/entries/2010/000260.html" />
	<id>tag:www.natzworks.com,2010:/digital//8.260</id>

	<published>2010-02-25T12:44:40Z</published>
	<updated>2010-02-26T02:31:25Z</updated>

	<summary>我が家の VMware ESXi 4.0 で構築した仮想化環境は、ネットワークの冗長化は考慮しておらず、ESXi が稼働する Dell PowerEdge 830 の NIC はオンボードの 1枚 (?) だけだった。しかし普段利用するネットワークとは完全に分離されたテスト用ネットワークが作れると何かと都合がいいので、NIC を追加することにした。この手の PC パーツのいいところは、増設作業を密かに行えば、「また余計なモノ買って！」 と妻に非難される恐れが少ないことだ。ケースの中に納めてしまえば存在が発覚することはまずないし、仮に 1本増えた LAN ケーブルに気付かれたとしても、最初から 2本だったと言い張ればいい。...</summary>
	<author>
		<name>Natz</name>
		
	</author>
	
		<category term="VMware ESXi 4.0" scheme="http://www.sixapart.com/ns/types#category" />
	
		<category term="サーバー" scheme="http://www.sixapart.com/ns/types#category" />
	
	<category term="nic" label="NIC" scheme="http://www.sixapart.com/ns/types#tag" />
	<category term="poweredge" label="PowerEdge" scheme="http://www.sixapart.com/ns/types#tag" />
	<category term="vmwareesxi" label="VMware ESXi" scheme="http://www.sixapart.com/ns/types#tag" />
	
	<content type="html" xml:lang="en" xml:base="http://www.natzworks.com/digital/">
		<![CDATA[我が家の VMware ESXi 4.0 で構築した仮想化環境は、ネットワークの冗長化は考慮しておらず、ESXi が稼働する Dell PowerEdge 830 の NIC はオンボードの 1枚 (?) だけだった。しかし普段利用するネットワークとは完全に分離されたテスト用ネットワークが作れると何かと都合がいいので、NIC を追加することにした。<br /><br />この手の PC パーツのいいところは、増設作業を密かに行えば、「また余計なモノ買って！」 と妻に非難される恐れが少ないことだ。ケースの中に納めてしまえば存在が発覚することはまずないし、仮に 1本増えた LAN ケーブルに気付かれたとしても、最初から 2本だったと言い張ればいい。<br />]]>
		<![CDATA[さて肝心の NIC 選びだが、 ESX/ESXi シリーズはハードウェア、特に NIC の好き嫌いが激しいことに関しては定評がある。自宅に転がっていたカニのマークの NIC は残念ながら使えないので、ESXi で動作報告のある安価な Intel 製 NIC と言うことで、<a href="http://www.intel.com/products/desktop/adapters/pro1000gt/pro1000gt-overview.htm" target="_blank">Intel PRO/1000 GT Desktop Adapter (PWLA8391GT)</a> にした。<br /><br />届いた PWLA8391GT を増設してみると、ESXi は vmnic1 としてあっさり認識してくれた。さすが Intel 製。これで裏 LAN を作るもよし、冗長化するもよし、幅が広がった。<br /><br /><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><img alt="20100218a_1.jpg" src="http://www.natzworks.com/digital/images/2010/20100218a_1.jpg" class="mt-image-none" style="" height="90" width="320" /></span><br />
<span class="exp">「裏 LAN」 新設</span><br />
<br />
<br />
<iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=natz-22&amp;o=9&amp;p=8&amp;l=as1&amp;m=amazon&amp;f=ifr&amp;md=1X69VDGQCMF7Z30FM082&amp;asins=B00030DEQE" style="width: 120px; height: 240px;" marginwidth="0" marginheight="0" frameborder="0" scrolling="no"></iframe>

<iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=natz-22&amp;o=9&amp;p=8&amp;l=as1&amp;m=amazon&amp;f=ifr&amp;md=1X69VDGQCMF7Z30FM082&amp;asins=4844327801" style="width: 120px; height: 240px;" marginwidth="0" marginheight="0" frameborder="0" scrolling="no"></iframe>

<iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=natz-22&amp;o=9&amp;p=8&amp;l=as1&amp;m=amazon&amp;f=ifr&amp;md=1X69VDGQCMF7Z30FM082&amp;asins=4798118095" style="width: 120px; height: 240px;" marginwidth="0" marginheight="0" frameborder="0" scrolling="no"></iframe>

]]>
	</content>
</entry>

<entry>
	<title>Windows 7 で LinkStation LS-WH2.0TGL/R1 に接続できない</title>
	<link rel="alternate" type="text/html" href="http://www.natzworks.com/digital/entries/2010/000257.html" />
	<id>tag:www.natzworks.com,2010:/digital//8.257</id>

	<published>2010-02-22T13:50:00Z</published>
	<updated>2010-02-22T14:10:48Z</updated>

	<summary>デフォルト状態の Windows 7 は、LinkStation LS-WH2.0TGL/R1 (以下 LS-WHGL) の共有フォルダーのマウントに失敗する。と言うより LinkStation にアクセスすらできず、共有フォルダーを一覧することができない状態になる。 これは Vista と旧バージョンの Samba 間でも発生していた 「LAN Manager 認証レベル」 の設定値に起因する問題で、Windows 7 でもローカル セキュリティ ポリシーで設定を変更するかレジストリを直接編集して、認証レベルを下げる必要がある。BUFFALO でも当然この問題は認識されていて、「ファイル共有セキュリティレベル変更ツール」 が公開されている (昨年 10月にリリースされた Ver.1.10 からは Windows 7 にも対応)。このツールで今回の不具合を解消できることは検証したが、デフォルト状態の Windows Vista/7 が接続できないのは、LS-WHGL と言うより、旧バージョンの Samba に対して。Samba をファイルサーバーにしている環境でも、Samba のバージョンによっては同様の現象が発生するはずなので、前述のツールは使わず、より汎用的な方法で解決してみる。...</summary>
	<author>
		<name>Natz</name>
		
	</author>
	
		<category term="LS-WHGL/R1" scheme="http://www.sixapart.com/ns/types#category" />
	
		<category term="OS" scheme="http://www.sixapart.com/ns/types#category" />
	
		<category term="Windows 7" scheme="http://www.sixapart.com/ns/types#category" />
	
		<category term="周辺機器" scheme="http://www.sixapart.com/ns/types#category" />
	
	<category term="lswhgl" label="LS-WHGL" scheme="http://www.sixapart.com/ns/types#tag" />
	<category term="windows7" label="Windows 7" scheme="http://www.sixapart.com/ns/types#tag" />
	<category term="不具合" label="不具合" scheme="http://www.sixapart.com/ns/types#tag" />
	
	<content type="html" xml:lang="en" xml:base="http://www.natzworks.com/digital/">
		<![CDATA[デフォルト状態の Windows 7 は、LinkStation LS-WH2.0TGL/R1 (以下 LS-WHGL) の共有フォルダーのマウントに失敗する。と言うより LinkStation にアクセスすらできず、共有フォルダーを一覧することができない状態になる。<br />
<br />
これは Vista と旧バージョンの Samba 間でも発生していた 「<a href="http://technet.microsoft.com/ja-jp/library/cc738867%28WS.10%29.aspx" target="_blank">LAN Manager 認証レベル</a>」 の設定値に起因する問題で、Windows 7 でもローカル セキュリティ ポリシーで設定を変更するかレジストリを直接編集して、認証レベルを下げる必要がある。BUFFALO でも当然この問題は認識されていて、「<a href="http://buffalo.jp/download/driver/hd/lmclchg.html" target="_blank">ファイル共有セキュリティレベル変更ツール</a>」 が公開されている (昨年 10月にリリースされた Ver.1.10 からは Windows 7 にも対応)。<br /><br />このツールで今回の不具合を解消できることは検証したが、デフォルト状態の Windows Vista/7 が接続できないのは、LS-WHGL と言うより、旧バージョンの Samba に対して。Samba をファイルサーバーにしている環境でも、Samba のバージョンによっては同様の現象が発生するはずなので、前述のツールは使わず、より汎用的な方法で解決してみる。<br />]]>
		<![CDATA[具体的には、Windows 7 Professional 以降なら secpol.msc を管理者権限で実行して、「ローカル ポリシー」 → 「セキュリティ
オプション」 → 「ネットワーク セキュリティ: LAN Manager 認証レベル」 を 「LM と NTLM 応答を送信する」 か 「LM と NTLM 応答を送信する (ネゴシエートした場合 NTLMv2 セッションセキュリティを使う)」 に設定すれば 
OK。<br /><br />この結果変更されるのは、レジストリの "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa" にある LmCompatibilityLevel で、Windows 7 のデフォルトでは 「未定義」 となっている 「LAN Manager 認証レベル」 とレジストリ (DWORD 値) 
の対応は、次の通り。<br /><br />* 0: LM と NTLM 応答を送信する<br />* 1: LM と NTLM 応答を送信する (ネゴシエートした場合 NTLMv2 
セッションセキュリティを使う)<br />&nbsp; 2: NTLM 応答のみ送信する<br />&nbsp; 3: NTLMv2 応答のみ送信する<br />&nbsp; 4: 
NTLMv2 応答のみ送信する (LM を拒否する)<br />&nbsp; 5: NTLMv2 応答のみ送信する (LM と NTLM を拒否する)<br /><br />LS-WHGL では "0" か "1" に変更するとアクセスできるようになり、他の環境では "2" 
でも大丈夫かもしれない。<br /><br />ただしこの操作は、互換性と引き換えにセキュリティ・レベルを落としていることを認識しておく必要がある。"0" より "1" 
の方がマシだし、"2" で行ける環境ならその方がいい。<br />]]>
	</content>
</entry>

<entry>
	<title>Windows 7 でも親指 Shift 入力</title>
	<link rel="alternate" type="text/html" href="http://www.natzworks.com/digital/entries/2010/000253.html" />
	<id>tag:www.natzworks.com,2010:/digital//8.253</id>

	<published>2010-02-18T14:55:13Z</published>
	<updated>2010-02-20T01:30:41Z</updated>

	<summary>僕はキーボードで文字入力をする際、「親指シフト」 を長年愛用している。と言っても本物の親指 Shift キーボードを使う本格派ではなく、OS レベルでキーマップを変更し、通常のキーボードで右手の親指で押しやすい位置にある [変換] キーを [Shift] キーにしているだけだが。サーバー (特に Case sensitive な UNIX 系) をいじったり、(X)HTML や CSS を手でタイプしたりプログラミング等をしていると、大文字・小文字が混在したアルファベットや記号をタイプする機会が多くなり、必然的に [Shift] キーの使用頻度が高くなる。そこで個人的には漢字変換には [スペース] キーを使うため全く無用の [変換] キーを [Shift] キーに変更すると、通常のキーマップではほとんど使わない右手の親指で [Shift] キーを押し続けながら他の指をフル活用することができるようになって、タイピング効率が格段に上がる。...</summary>
	<author>
		<name>Natz</name>
		
	</author>
	
		<category term="OS" scheme="http://www.sixapart.com/ns/types#category" />
	
		<category term="Windows 7" scheme="http://www.sixapart.com/ns/types#category" />
	
	<category term="windows7" label="Windows 7" scheme="http://www.sixapart.com/ns/types#tag" />
	<category term="キーボード" label="キーボード" scheme="http://www.sixapart.com/ns/types#tag" />
	
	<content type="html" xml:lang="en" xml:base="http://www.natzworks.com/digital/">
		<![CDATA[僕はキーボードで文字入力をする際、「<a href="http://ja.wikipedia.org/wiki/%E8%A6%AA%E6%8C%87%E3%82%B7%E3%83%95%E3%83%88" target="_blank">親指シフト</a>」 を長年愛用している。と言っても本物の親指 Shift キーボードを使う本格派ではなく、OS レベルでキーマップを変更し、通常のキーボードで右手の親指で押しやすい位置にある [変換] キーを [Shift] キーにしているだけだが。<br /><br />サーバー (特に Case sensitive な UNIX 系) をいじったり、(X)HTML や CSS を手でタイプしたりプログラミング等をしていると、大文字・小文字が混在したアルファベットや記号をタイプする機会が多くなり、必然的に [Shift] キーの使用頻度が高くなる。そこで個人的には漢字変換には [スペース] キーを使うため全く無用の [変換] キーを [Shift] キーに変更すると、通常のキーマップではほとんど使わない右手の親指で [Shift] キーを押し続けながら他の指をフル活用することができるようになって、タイピング効率が格段に上がる。<br />]]>
		<![CDATA[この効率的なタイピングに欠かせないキーマップ変更を Windows 上で実現する際に便利なのが、RemapKey。現在は <a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=9d467a69-57ff-4ae7-96ee-b18c4790cffd&amp;displaylang=en" target="_blank">Windows Server 2003 Resource Kit</a> (無償) に含まれるツールで、Windows 7 でもしっかり機能する。<br /><br />Resource Kit をインストール後も、Resource Kit に含まれる個々のツールはスタート・メニューには登録されないので、インストール・フォルダーにある remapkey.exe を直接実行するか、スタート・メニューの 「Windows Resource Kit Tools」→「Command Shell」 で remapkey [Enter] とタイプし、RemapKey を起動する。RemapKey はレジストリを編集するので、いずれの方法も管理者権限が必要になる点に注意。<br /><br />RemapKey の使い方は簡単で、「ベース キーボード」 欄のキーを、「リマップ キーボード」 欄の置換したいキー上にドラッグ＆ドロップするだけ。左端の 「保存・終了」 ボタンで保存して Windows を再起動すれば、余計なサービスやツールが常駐することもなく、ログオン前の状態からこのキーマップが有効になる。<br /><br /><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><img alt="20100217a_1.jpg" src="http://www.natzworks.com/digital/images/2010/20100217a_1.jpg" class="mt-image-none" style="" height="254" width="320" /></span><br />
<span class="exp">[変換] キーを [Shift] キーに変更</span><br />
<br />
<a href="http://hp.vector.co.jp/authors/VA000092/tools/remapkey/remapkeyman.html" target="_blank">マニュアル</a>によると、RemapKey によるレジストリの変更箇所は "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout" 以下に作成される Binary 値 "Scancode Map"。このエントリーを書き出しておけば、他の Windows クライアントに展開する際にも使える。<br /><br />僕は上記に加え、[半角/全角] キーが持つ IME の ON/OFF 機能を、MS-IME の設定で [ひらがな] キーにも割り当てている。これにより右手の親指には、[Shift] キーの他に IME の切り替えと言う役目が与えられる ([半角/全角] キーの機能はそのまま)。<br /><br />RemapKey ではなく MS-IME の設定で実現する理由は、他のユーザーの混乱を最小限にするためだ。キーマップを問答無用に変更してしまうようなカスタマイズは、ログオン前から有効になることからわかるように、他のユーザーにも及ぶ。主に自身で利用する PC であっても、他のユーザーがログオンする可能性がある場合は少々乱暴とも言えるので、常駐型のキーマップ変更ツール以外でユーザーごとに代替手段がある場合は、そちらで行った方がいいと思う。<br />]]>
	</content>
</entry>

<entry>
	<title>Windows 7 で Samba ドメインに参加</title>
	<link rel="alternate" type="text/html" href="http://www.natzworks.com/digital/entries/2010/000256.html" />
	<id>tag:www.natzworks.com,2010:/digital//8.256</id>

	<published>2010-02-14T05:45:09Z</published>
	<updated>2010-02-22T14:20:49Z</updated>

	<summary>少し前に自宅の CentOS 5.4 上に構築した Samba ドメイン (+ OpenLDAP 2.3.43) の PDC を 3.3.9 → 3.4.5 にバージョンアップしたので、実機の環境を移行する予行演習として、VirtualBox 3.1.4 上の仮想マシン (以下 VM) に素の Windows 7 Ultimate をインストールし、ドメイン参加させてみた。実機に搭載するグラフィックス・カードの Aero 対応がわかっていて、他に検証が必要なハードウェアがなければ、無理にデュアル・ブート等の環境を構築する必要はない。尚、VirtualBox で VM を作成する際は、ネットワークがデフォルトで NAT になっていることを認識しておいた方がいい。意図して NAT のままにする場合は問題ないが、デフォルトがブリッジの VMware シリーズ等に慣れていて気付かないと、ハマる可能性がある。...</summary>
	<author>
		<name>Natz</name>
		
	</author>
	
		<category term="OS" scheme="http://www.sixapart.com/ns/types#category" />
	
		<category term="Samba 3" scheme="http://www.sixapart.com/ns/types#category" />
	
		<category term="Windows 7" scheme="http://www.sixapart.com/ns/types#category" />
	
		<category term="サーバー" scheme="http://www.sixapart.com/ns/types#category" />
	
	<category term="samba" label="Samba" scheme="http://www.sixapart.com/ns/types#tag" />
	<category term="windows7" label="Windows 7" scheme="http://www.sixapart.com/ns/types#tag" />
	<category term="ドメイン" label="ドメイン" scheme="http://www.sixapart.com/ns/types#tag" />
	
	<content type="html" xml:lang="en" xml:base="http://www.natzworks.com/digital/">
		<![CDATA[少し前に自宅の CentOS 5.4 上に構築した Samba ドメイン (+ OpenLDAP 2.3.43) の PDC を 3.3.9 → 3.4.5 にバージョンアップしたので、実機の環境を移行する予行演習として、<a href="http://www.virtualbox.org/" target="_blank">VirtualBox</a>
 
3.1.4 上の仮想マシン (以下 VM) に素の Windows 7 Ultimate をインストールし、ドメイン参加させてみた。実機に搭載するグラフィックス・カードの Aero 対応がわかっていて、他に検証が必要なハードウェアがなければ、無理にデュアル・ブート等の環境を構築する必要はない。<br /><br />尚、VirtualBox で VM を作成する際は、ネットワークがデフォルトで NAT になっていることを認識しておいた方がいい。意図して NAT のままにする場合は問題ないが、デフォルトがブリッジの VMware シリーズ等に慣れていて気付かないと、ハマる可能性がある。<br />]]>
		<![CDATA[Windows 7 で Samba ドメインに参加する際にレジストリの編集が必要なのは、<a href="http://www.natzworks.com/digital/entries/2009/000127.html">以前のエントリー</a>と同様。しかし次のように変更箇所が減っている点に、Samba の進歩の跡が見える。<br /><br />
<ol>
<li>"HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\LanmanWorkstation\Parameters" 以下に値を追加。</li>
</ol>
<ul>
<ul>
<li>DWORD： DNSNameResolutionRequired = 0</li>
<li>DWORD： DomainCompatibilityMode = 1</li>
</ul>
</ul>
<br />さて、上記設定で Samba ドメインに参加はできるものの、ドメイン参加直後に 「このコンピューターのプライマリ ドメイン DNS 名を "" に変更できませんでした」 とエラーが発生する。この現象は Windows 7 RC を Samba 3.3.x ドメインに参加させたときは発生しなかったような気がしないでもないが (イマイチ記憶が定かでない)、例えば Samba ドメイン名を "DOMHOGE" とすると、DNS サフィックスもそのまま "DOMHOGE" になってしまう。それじゃ困るだろと手動で変更しようとしても、同様に失敗する。<br /><br /><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><img alt="20100214a_1.jpg" src="http://www.natzworks.com/digital/images/2010/20100214a_1.jpg" class="mt-image-none" style="" height="173" width="320" /></span><br />
<span class="exp">DNS サフィックス変更不可</span><br />
<br />
<span class="mt-enclosure mt-enclosure-image" style="display: inline;"><img alt="20100214a_2.jpg" src="http://www.natzworks.com/digital/images/2010/20100214a_2.jpg" class="mt-image-none" style="" height="142" width="320" /></span><br />
<span class="exp">英語版の同じ場面</span><br />
<br />
この現象を回避するには、再び次のようにレジストリを編集して、DNS サフィックスを直接任意のドメイン名に変更してしまえば OK。元ネタは<a href="http://lists.samba.org/archive/samba/2009-September/150492.html" target="_blank">こちら</a>。<br />
<br />
<ol>
<li>"HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters" 以下の値を変更。</li>
</ol>
<ul>
<ul>
<li>String: NV Domain = "example.local"</li>
</ul>
</ul>
<br />
これでようやく、正常にドメインに参加した状態になる。<br /><br />Samba の旧バージョンも含めて、より詳細な情報は<a href="http://wiki.samba.gr.jp/mediawiki/index.php?title=Windows_7%E3%81%8B%E3%82%89Samba%E3%83%89%E3%83%A1%E3%82%A4%E3%83%B3%E3%81%AB%E3%83%AD%E3%82%B0%E3%82%AA%E3%83%B3%E3%81%A7%E3%81%8D%E3%81%AA%E3%81%84" target="_blank">こちらのサイト</a>が参考になる。バージョンによって、対応状況にバラつきがあるようだ。<br />
<br />
<br />
<iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=natz-22&amp;o=9&amp;p=8&amp;l=as1&amp;m=amazon&amp;f=ifr&amp;md=1X69VDGQCMF7Z30FM082&amp;asins=4798023493" style="width: 120px; height: 240px;" marginwidth="0" marginheight="0" scrolling="no" frameborder="0"></iframe>

<iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=natz-22&amp;o=9&amp;p=8&amp;l=as1&amp;m=amazon&amp;f=ifr&amp;md=1X69VDGQCMF7Z30FM082&amp;asins=4798108545" style="width: 120px; height: 240px;" marginwidth="0" marginheight="0" scrolling="no" frameborder="0"></iframe>

<iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=natz-22&amp;o=9&amp;p=8&amp;l=as1&amp;m=amazon&amp;f=ifr&amp;md=1X69VDGQCMF7Z30FM082&amp;asins=4774121967" style="width: 120px; height: 240px;" marginwidth="0" marginheight="0" scrolling="no" frameborder="0"></iframe>

<iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=natz-22&amp;o=9&amp;p=8&amp;l=as1&amp;m=amazon&amp;f=ifr&amp;md=1X69VDGQCMF7Z30FM082&amp;asins=4798018007" style="width: 120px; height: 240px;" marginwidth="0" marginheight="0" scrolling="no" frameborder="0"></iframe><div><br /></div><div><br /></div>]]>
	</content>
</entry>

<entry>
	<title>concrete5: MySQL ユーザーのパスワード</title>
	<link rel="alternate" type="text/html" href="http://www.natzworks.com/digital/entries/2010/000258.html" />
	<id>tag:www.natzworks.com,2010:/digital//8.258</id>

	<published>2010-02-09T21:27:53Z</published>
	<updated>2010-02-14T04:10:35Z</updated>

	<summary>オープンソースの CMS ツール concrete5 (5.3.3.1.ja) で使う MySQL ユーザーのパスワードに &quot;@&quot; が含まれていると、インストール時に 「データベースに接続出来ません」 とエラーになる。確かに &quot;@&quot; はユーザー名とサーバー名の区切り記号でもあるので微妙な文字と言えるが、phpMyAdmin では、同じユーザー名とパスワードで DB にアクセスできる。...</summary>
	<author>
		<name>Natz</name>
		
	</author>
	
		<category term="concrete5" scheme="http://www.sixapart.com/ns/types#category" />
	
		<category term="サーバー" scheme="http://www.sixapart.com/ns/types#category" />
	
	<category term="concrete5" label="concrete5" scheme="http://www.sixapart.com/ns/types#tag" />
	<category term="エラー" label="エラー" scheme="http://www.sixapart.com/ns/types#tag" />
	<category term="パスワード" label="パスワード" scheme="http://www.sixapart.com/ns/types#tag" />
	
	<content type="html" xml:lang="en" xml:base="http://www.natzworks.com/digital/">
		<![CDATA[オープンソースの CMS ツール <a href="http://concrete5-japan.org/" target="_blank">concrete5</a> (5.3.3.1.ja) で使う MySQL ユーザーのパスワードに "@" が含まれていると、インストール時に 「データベースに接続出来ません」 とエラーになる。確かに "@" はユーザー名とサーバー名の区切り記号でもあるので微妙な文字と言えるが、<a href="http://www.phpmyadmin.net/home_page/index.php" target="_blank">phpMyAdmin</a> では、同じユーザー名とパスワードで DB にアクセスできる。<br />]]>
		<![CDATA[ソースを見ると、MySQL ユーザーのパスワードは config/site.php 中で定数 DB_PASSWORD として定義され、concrete/controllers/install.php から呼び出される関数 db() (concrete/libraries/loader.php で定義) で、変数 $dsn に<br />
<br />
<div class="cmd">
$dsn = DB_TYPE . '://' . DB_USERNAME . ':' . DB_PASSWORD . '@' . DB_SERVER . '/' . DB_DATABASE;<br />
</div>
<br />
と格納され、concrete/libraries/3rdparty/adodb/adodb.inc.php 中の関数 ADONewConnection() で処理されて行く過程が追える。しかし "@" が通るように何とか頑張る、と言うのは本質ではないので、素直に 「"@" を使わない」 のが、スマートな解決策だろう。<br /><br />とりあえず concrete5 で利用する MySQL ユーザーのパスワードは、危ない記号は避けて英数字だけにしておくのが無難か (concrete5 上のユーザーのパスワードは、"@" も利用可能)。]]>
	</content>
</entry>

<entry>
	<title>Windows 7: C:\Program Files フォルダーを別ドライブに移動</title>
	<link rel="alternate" type="text/html" href="http://www.natzworks.com/digital/entries/2010/000255.html" />
	<id>tag:www.natzworks.com,2010:/digital//8.255</id>

	<published>2010-02-07T21:42:25Z</published>
	<updated>2010-03-04T19:11:50Z</updated>

	<summary>■ 変更履歴2010-03-02: より確実・汎用的な改訂版 「x64 対応半自動化版」 を公開。2010-03-01: ProgramFiles フォルダーのコピー方法を変更 (xcopy コマンド)。2010-02-28: 64ビット環境でのレジストリ置換方法を追加。2010-02-20: ProgramFiles フォルダーのシンボリック・リンク作成を追加。Windows 7 のシステム要件によると、インストール先ディスクの空き容量は 32ビット版で 16GB 以上、64ビット版で 20GB 以上とされている。Windows 7 Ultimate (32ビット版) をクリーン・インストールした直後の C: ドライブのディスク消費量は 7GB 程度 (ページファイルを除く) だが、このシステム要件は、様々なプログラムをインストールしたり、「ドキュメント」 以下にファイルを溜め込んで行く使い方を想定してのこと。大容量化が進んだ最近の HDD なら 「1.5TB の C: ドライブ一発」 と言うこともできるので、旧型 PC にインストールする場合以外では、ディスク容量が問題になることは少なそうだ。ただし...</summary>
	<author>
		<name>Natz</name>
		
	</author>
	
		<category term="OS" scheme="http://www.sixapart.com/ns/types#category" />
	
		<category term="Windows 7" scheme="http://www.sixapart.com/ns/types#category" />
	
	<category term="programfiles" label="Program Files" scheme="http://www.sixapart.com/ns/types#tag" />
	<category term="windows7" label="Windows 7" scheme="http://www.sixapart.com/ns/types#tag" />
	<category term="移動" label="移動" scheme="http://www.sixapart.com/ns/types#tag" />
	
	<content type="html" xml:lang="en" xml:base="http://www.natzworks.com/digital/">
		<![CDATA[■ 変更履歴<br /><ol><li>2010-03-02: <span class="notice">より確実・汎用的な改訂版 「<a href="http://www.natzworks.com/digital/entries/2010/000263.html">x64 対応半自動化版</a>」 を公開。</span><br /></li><li>2010-03-01: ProgramFiles フォルダーのコピー方法を変更 (xcopy コマンド)。<br /></li><li>2010-02-28: 64ビット環境でのレジストリ置換方法を追加。</li><li>2010-02-20: ProgramFiles フォルダーのシンボリック・リンク作成を追加。<br /></li></ol><br />Windows 7 の<a href="http://windows.microsoft.com/ja-JP/windows7/products/system-requirements" target="_blank">システム要件</a>によると、インストール先ディスクの空き容量は 32ビット版で 16GB 以上、64ビット版で 20GB 以上とされている。Windows 7 Ultimate (32ビット版) をクリーン・インストールした直後の C: ドライブのディスク消費量は 7GB 程度 (ページファイルを除く) だが、このシステム要件は、様々なプログラムをインストールしたり、「ドキュメント」 以下にファイルを溜め込んで行く使い方を想定してのこと。大容量化が進んだ最近の HDD なら 「1.5TB の C: ドライブ一発」 と言うこともできるので、旧型 PC にインストールする場合以外では、ディスク容量が問題になることは少なそうだ。ただし 「1.5TB 一発」 は男らしさのアピールにはいいとして、ディスク障害発生時のリスク、OS の再インストール、デフラグ時のコスト等を考えると、あまり効率的とは言えない。<br /><br />一方、ディスクを適切なサイズにパーティショニングしたり別ディスクを用意するなどして、システム以外のソフトウェアを別ドライブにインストールする方法は、Windows のパフォーマンス向上、と言うより低下防止やリスク軽減策としてよく見られる。しかし各プログラムのインストール時に毎回別ドライブの任意の場所を指定していては、うっかり C: ドライブにインストールしてしまうこともあるし、プログラム本体は別ドライブにインストールできても、付属品が C: ドライブ (Program Files\Common Files 等) に入ってしまうこともある。こうした事態を防ぐには、Windows がデフォルトのインストール先として認識している、環境変数 ProgramFiles で定義されたフォルダー (以下 「ProgramFiles フォルダー」) を移動させてしまえばいい。<br />]]>
		<![CDATA[<div class="caution">
<p class="title">※ 注意 ※</p>
以下の作業で操作を誤ると、OS に回復不能な損傷を与えて Windows の再インストールが必要になる他、データを失う等の副次的被害が発生する可能性があります。本ページの内容を参考に行った作業によって何らかの損害を被った場合も、筆者は一切の責任を負いません。お試しになる場合は、くれぐれも自己責任でお願いします。<br />
</div>
<br />僕は Windows 9x 時代から XP まで (Vista は見送り)、自分で好きにいじれる PC は必ず OS インストール直後に
ProgramFiles フォルダー別ドライブに移動させることにしている。そこで今後少しずつ進める予定の Windows XP
→ Windows 7 の段階的なリプレイスに備えて検証してみると、Windows 7 でも XP とほぼ同様の操作で、ProgramFiles フォルダーの移動ができることがわかった。しかし
Vista 以降の Windows ならではの部分があるので、手順をまとめておく。(※ 03/02 追記： <span class="notice">より確実・汎用的な改訂版 「<a href="http://www.natzworks.com/digital/entries/2010/000263.html">x64 対応半自動化版</a>」 を公開</span>)<br /><br />&nbsp;作業の流れは以下の通り。Windows 7 は Ultimate (32ビット版) で、インストール直後のデフォルト・ユーザー名を test、ProgramFiles フォルダー移動前のパスを C:\Program Files、移動先を D:\Program Files と仮定している。表示フォントによっては、パス区切り記号の "¥" がバックスラッシュ (半角＼) になるので、"/" と間違えないように注意。<br />
<br />
<ol><li>ローカル Administrator の有効化、及びパスワード設定。</li><li>ProgramFiles フォルダーをコピー。</li><li>レジストリの書き換え。</li><li>旧 ProgramFiles フォルダーを削除。</li><li>移動先のアプリケーションの動作確認。</li></ol>
<br />作業は Windows 7 
のクリーン・インストール直後、できれば上記作業に必須ではないドライバー類もインストールしない状態の方が、手間とリスクを最小限にできる。<br /><br />
<h4>1. ローカル Administrator の有効化、及びパスワード設定</h4>
最強のユーザーであるローカル Administrator は、Windows 7 のデフォルト状態では無効になっている。まずデフォルト・ユーザー test でログオン後、スタート メニューの 「全てのプログラム」 → 「アクセサリ」 → 「コマンド プロンプト」 を右クリック → 「管理者として実行」 を選択し、コマンド プロンプトを管理者権限で起動する。コマンド プロンプトでは次の操作を行う。<br />
<br />
<div class="cmd">
&gt; net user Administrator /active:yes　← Administrator を有効化<br />
<br />
&gt; net user Administrator &lt;PASSWORD&gt;　← パスワードを設定<br />
<br />
&gt; set ProgramFiles　← 環境変数を確認<br />
ProgramFiles=C:\Program Files　← この段階では C: ドライブ<br />
<br />
&gt; set CommonProgramFiles<br />
CommonProgramFiles=C:\Program Files\Common Files　← こちらも同様<br />
<br />
※ 64ビット環境では上記変数名に "(x86)" を付加した環境変数も存在し、それぞれ " (x86)" を付加した値が設定されている。<br />
</div>
<br />
コマンド プロンプトを管理者権限で実行していないと、「システム エラー 5」 「アクセスが拒否されました」 等のメッセージが表示される。最後の set コマンドは、この段階で Windows が ProgramFiles フォルダーとして認識している場所を確認している。<br /><br />Administrator を有効化できたら test はログオフし、Administrator でログオンし直す。<br />
<br />
<h4>2. ProgramFiles フォルダーをコピー</h4>
Windows 7 のデフォルト状態では、拡張子や隠しファイルが表示されていない。「フォルダーと検索のオプション」 の「表示」 タブの 「詳細設定」 で、次の設定を変更する。<br /><br /><ul><li>隠しファイル、隠しフォルダー、および隠しドライブを表示する　→ 選択</li><li>登録されている拡張子は表示しない　→ OFF</li><li>保護されたオペレーティング システム ファイルを表示しない (推奨)　→ OFF</li></ul><br />※ 03/01 修正<br />以前はエクスプローラー上でフォルダーをコピーする方法を記載していたが、アクセス許可設定や属性等が再現できない問題があるので、xcopy コマンドを用いる方法に変更。<br /><br />フォルダのコピーは、管理者権限のコマンド プロンプトを開き、以下のように xcopy コマンドで行う。<br />
<br />
<div class="cmd">
&gt; xcopy /e /h /k /o /x /b /y "C:\Program Files" "D:\Program Files\"<br />
<br />
&gt; xcopy /e /h /k /o /x /b /y "C:\Program Files (x86)" "D:\Program Files (x86)\"　← 64ビット環境の場合<br />
</div>
<br />
上記オプションは、空フォルダーを含むサブ・フォルダー (/e)、隠しファイル及びシステム・ファイル (/h)、属性 (/k)、所有権及び ACL 情報 (/o)、監査設定 (/x)、リンク自体をコピー (/b)、上書き時の問い合わせなし (/y) を指定している。<br /><br />※ 03/05 追記<br />ジャンクション "Program Files\Windows NT\アクセサリ" の扱いが不完全であることが判明したので、「<a href="http://www.natzworks.com/digital/entries/2010/000263.html">x64 対応半自動化版</a>」 で修正。上記コマンドを既に実施してしまった場合は、手動修正も可能。<br /><br />コピーが完了したら、エクスプローラーでコピー元とコピー先の各フォルダーのプロパティを開き、ファイルやフォルダーの数、アクセス許可設定等が正しくコピーできているか確認する。<br />
<br />
<h4>3. レジストリの書き換え</h4>
このフェイズでは、レジストリ中に存在する "C:\Program Files" と言う文字列を移動先のパス、今回の例では D:\Program Files に置換する。単純だが記述箇所が大量にあるため、一つ一つ探し出して編集するのは現実的でない。<br /><br />そこで利用するのが、レジストリ中の任意の文字列を検索・置換する <a href="http://www.vector.co.jp/soft/win95/util/se063279.html" target="_blank">RegGrep</a>。Windows 9x 時代からお世話になっている便利なツールで、Windows 7 でも動く。(02/28 追記： RegGrep は 32ビット環境限定。64ビット環境では、<a href="http://www.funduc.com/registry_toolkit.htm" target="_blank">Registry Toolkit</a> の 64ビット版で意図通りの置換ができた。同ツールは 32ビット版もあり)<br /><br />RegGrep を管理者権限で起動したら (UAC を無効化していなければ右クリック → 「管理者権限で実行」)、次のように設定して 「置換」 ボタンをクリックする。<br /><br /><ul><li>検索文字列に "C:\Program Files"、置換文字列に移動先のパス、今回の例では "D:\Program Files" とそれぞれ入力 ("" は不要)。</li><li>「対象ルートキー」 で HKEY_DYN_DATA キー (Windows XP 以降では存在しない) 以外を ON。</li><li>「オプション」 で 「大文字と小文字を区別する」 を ON。<br /></li></ul><br />最初にヒットした文字列のダイアログで 「すべて置換」 ボタンをクリックすると、以後発見される文字列が全て置換される。<br /><br />※ 02/28 追記<br />前述の Registry Toolkit を使用する場合は、ツリー構造の "My Registry" を選択した状態でメニューの 「Registry」 → 「Search of Replace in Registry」 ダイアログを表示させ、"Settings" の "Match Case"、"Search/Replace In" の "Data" と "Value" のチェックを ON にして、「Replace」 ボタンをクリックする (各項目の名前にピンと来なければ、<a href="http://www.yoshibaworks.com/ayacy/inasoft/webhelp/rnsf7/HLP000124.html" target="_blank">こちらのサイト</a>が参考になる)。"Start In:" が "My Registry" 以外になっている場合はレジストリの全域をスキャンできないので、忘れずに確認する。ヒットした文字列を全て置換するには、最初に表示されるダイアログで 「Replace Rest」 ボタンをクリック。<br />
<br />
<span class="mt-enclosure mt-enclosure-image" style="display: inline;"><img alt="20100228a_1.jpg" src="http://www.natzworks.com/digital/images/2010/20100228a_1.jpg" class="mt-image-none" style="" height="215" width="320" /></span><br />
<span class="exp">Registry Toolkit での置換</span><br />
<br />
尚、Windows XP では 8.3形式の短いファイル名が使われているので、この後 C:\PROGRA~1 を D:\PROGRA~1 に置換する。クリーン・インストール直後の Windows 7 では 8.3形式での記述は見つからなかったが、念のため検索しておいた方がいいかもしれない。僕の環境では存在しなかったが、もし C:\PROGRA~2 と言う記述が見つかっても、これは C:\ProgramData の 8.3形式表記なので、そうと知らずに書き換えてしまうと危ない。<br /><br />さらに、アプリケーション単位の INI ファイル等で旧 Program Files フォルダーがフルパスで指定されている場合も不具合が予想されるので、移動先 Program Files フォルダー内で文字列 "C:\Program Files" を検索する。その際 「フォルダー オプション」 の 「検索」 タブにある 「検索項目」 で、「ファイル名と内容を常に検索する」 を選択しておかないと、INI ファイルの内容を検索できない。<br /><br />ちなみにクリーン・インストール直後の僕の環境では、8.3形式の ProgramFiles フォルダーのパスや、修正が必要な INI ファイルは見つからなかった。<br /><br />ProgramFiles フォルダーを指す全ての文字列置換が完了後、Windows 7 を再起動する。<br />
<br />
<h4>4. 旧 ProgramFiles フォルダーを削除</h4>
これまでの作業でスタート メニュー中にあるショートカットのリンク先も、移動先の ProgramFiles フォルダーに追従しているはずなので、不要になったはずの旧 ProgramFiles フォルダー (と 64ビット環境では ProgramFiles(x86) フォルダー) を削除する。Windows XP ではいきなり Administrator で削除できたが、セキュリティが強化された Windows 7 では (恐らく Vista も同様)、事前にひと手間必要になる。<br /><br />旧 ProgramFiles フォルダーを削除するには、Windows 7 上で直接行う他に、C: ドライブがある HDD を別のマシンに接続したり、<a href="http://unit.aist.go.jp/itri/knoppix/" target="_blank">KNOPPIX </a>(5.x
 で NTFS パーティションの操作が可能) 等の CD 起動 Linux を使う等、いくつか方法がある。ひとまず Windows 7 上で直接削除するには、以下の手順で行う。<br /><br />まず Administrator でログオン後、コマンド プロンプトで次のコマンドを入力し、Windows の該当環境変数の値が移動先の ProgramFiles フォルダーに変わっていることを確認する。<br />
<br />
<div class="cmd">
&gt; set ProgramFiles<br />
ProgramFiles=D:\Program Files　← 値が移動先 ProgramFiles フォルダーに変更されている<br />
<br />
&gt; set CommonProgramFiles<br />
CommonProgramFiles=D:\Program Files\Common Files　← こちらも変更されている<br />
</div>
<br />
環境変数 ProgramFiles 及び CommonProgramFiles の値が移動先 ProgramFiles フォルダー以下に変更されている、即ち Windows が C:\Program Files の存在を忘れてしまっていることが確認できたら、以下の操作で所有権を奪う。旧 ProgramFiles フォルダーのプロパティを開き、「セキュリティ」 タブの 「詳細設定」 ボタンで、「セキュリティの詳細設定」 ウィンドウを開く。「所有者」 タブで 「現在の所有者」 が TrustedInstaller になっていることを確認して 「編集」 ボタンをクリック。「所有者の変更」 欄から Administrator を選択して 「サブコンテナーとオブジェクトの所有者を置き換える」 を ON にし、「OK」 ボタンをクリック。<br /><br />次にアクセス権限を変更する。同じ 「セキュリティの詳細設定」 ウィンドウで 「アクセス許可」 タブに移動し、「アクセス許可の変更」 ボタンをクリック。「アクセス許可エントリ」 欄の Administrators を選択した状態で 「編集」 ボタンをクリックし、「適用先」 を 「このフォルダー、サブフォルダーおよびファイル」、「アクセス許可」 欄の 「フル コントロール」 を ON にして閉じる。「セキュリティの詳細設定」 ウィンドウに戻るので、「子オブジェクトのアクセス許可すべてを、このオブジェクトからの継承可能なアクセス許可で置き換える」 を ON にして、開いている全てのウィンドウを 「OK」 ボタンで閉じる。<br /><br />これでようやく、旧 ProgramFiles フォルダー以下を好きに料理できるようになる。フォルダー削除時に 「IP Helper が使用中で sqmapi.dll が削除できない」 旨のメッセージが表示される場合は、タスク マネージャーの「サービス」 タブで iphlpsvc を探し、右クリック → 「サービスの停止」 で一時的に IP Helper を止めて、残ったフォルダーを削除する。削除後、改めて iphlpsvc を右クリックメニューで起動し直しておく。<br /><br />参考までに、KNOPPIX を使う場合の手順を以下で説明する。<br /><br />KNOPPIX で起動後、まずデスクトップに表示される HDD のアイコンをダブル・クリックして中身を確認する。旧 ProgramFiles フォルダーがあるデバイスを特定できたら、root 権限のシェルを起動 (メニューの 「KNOPPIX」 → 「Root Shell」)。HDD アイコンをダブル・クリックした時点で、該当デバイス・ファイルが読み取り専用でマウントされているので、次の手順で削除する。(C: ドライブが /dev/sda2 と認識されていると仮定)<br />
<br />
<div class="cmd">
# umount /media/sda2　← Program Files フォルダーがあるディレクトリをアンマウント (読み取り専用)<br />
<br />
# mount /dev/sda2 /media/sda2　← 再度マウント<br />
<br />
# cd /media/sda2/<br />
<br />
# rm -rf "Program Files"　← 丸ごと削除<br />
</div>
<br />僕が KNOPPIX 5.3.1 でテストした際は、Program Files/Windows NT/アクセサリ の削除に失敗したが、Windows 7 に Administrator でログオン後、前述のアクセス権限云々の操作をせずに、いきなり削除できた。<br /><br />尚、本エントリーの公開後、実はデスクトップの右クリック → 「ガジェット」 
のアイコンが表示されず、機能しないことに気がついた。改めてレジストリを検索してみる
と、"HKEY_CLASSES_ROOT\DesktopBackground\Shell\Gadgets\command" 
等、管理者であっても編集できない部分に旧 ProgramFiles フォルダーのパスが残っている。旧 ProgramFiles 
フォルダーは既に削除してしまって存在しないので、機能しないと言うわけだ。<br /><br />この不具合の解消のため、管理者権限でコマンド プロンプトを起動し、次のように C: 
ドライブ直下にシンボリック リンクを作成する。<br />
<br />
<div class="cmd">C:\Users\Administrator&gt; cd ..\..\　← C: ドライブ直下に移動<br />
<br />
C:\&gt; mklink /d "Program Files" "D:\Program Files"　← /d オプションでフォルダーへのシンボリック リンクを作成<br />
<br />
C:\&gt; dir　← 確認<br />　：<br />
2010/02/19&nbsp; 21:31&nbsp;&nbsp;&nbsp; &lt;SYMLINKD&gt;&nbsp;&nbsp;&nbsp;&nbsp; Program Files [D:\Program 
Files]<br />　：<br />
<br />
※ 64ビット環境では、同じ場所で "Program Files (x86)" → "D:\Program Files (x86)" 
のシンボリック・リンクも作成する。<br />
</div>
<br />
UNIX 系 OS で多用するシンボリック・リンクだが、Windows でも作ることができ、同名で呼ばれているとは知らなかった。この mklink 
コマンドが導入されたのは Vista からで、XP でもリソース・キットに含まれる linkd コマンドで実現できるらしい。ひょっとするとレジストリを無理やり置換する必要はなかったんじゃないか、と一瞬考えたが、旧 ProgramFiles 
フォルダーを削除する前の段階で Windows 7 が移動先 ProgramFiles フォルダーを環境変数 ProgramFiles 
として認識していなければいけないので、やはり置換は必要だ。<br /><br />
<h4>5. 移動先のアプリケーションの動作確認</h4>移動させたドライブのアプリケーションをスタート メニュー等から起動し、正常に動作することを確認して作業完了。<br /><br /><br />僕の環境では、上記作業で ProgramFiles フォルダーを移動させることができた。ただこれは Windows 7 をクリーン・インストールした直後の状態なので、既に各種アプリケーションがインストールされている状態では同じように行くとは限らないし、アプリケーションによっては、移動はできても正常動作しない可能性がある点には、ご注意いただきたい。<br /><br />ProgramFiles フォルダーが移動できれば、あとはページファイルを専用パーティションに移動させたり、「ドキュメント」 等の 「個人用フォルダー」 以下にある任意のフォルダーを別ドライブに移動させる等して、極力 C: ドライブを 「軽く」 する。「個人用フォルダー」 以下のフォルダーは、右クリック → プロパティの 「場所」 タブで任意の場所を指定できるので楽だ。<br /><div><br /></div>]]>
	</content>
</entry>

<entry>
	<title>Windows Server 2008 で Samba ドメインに参加</title>
	<link rel="alternate" type="text/html" href="http://www.natzworks.com/digital/entries/2010/000254.html" />
	<id>tag:www.natzworks.com,2010:/digital//8.254</id>

	<published>2010-02-06T04:45:57Z</published>
	<updated>2010-02-22T14:19:45Z</updated>

	<summary>今頃検証。Windows Server 2008 (Standard) は、デフォルト状態で普通に Samba 3.4.5 + OpenLDAP の Samba ドメインに参加できた。さすが Vista ベース。...</summary>
	<author>
		<name>Natz</name>
		
	</author>
	
		<category term="OS" scheme="http://www.sixapart.com/ns/types#category" />
	
		<category term="Samba 3" scheme="http://www.sixapart.com/ns/types#category" />
	
		<category term="Windows Server 2008" scheme="http://www.sixapart.com/ns/types#category" />
	
		<category term="サーバー" scheme="http://www.sixapart.com/ns/types#category" />
	
	<category term="samba" label="Samba" scheme="http://www.sixapart.com/ns/types#tag" />
	<category term="windowsserver2008" label="Windows Server 2008" scheme="http://www.sixapart.com/ns/types#tag" />
	
	<content type="html" xml:lang="en" xml:base="http://www.natzworks.com/digital/">
		<![CDATA[今頃検証。Windows Server 2008 (Standard) は、デフォルト状態で普通に Samba 3.4.5 + OpenLDAP の Samba ドメインに参加できた。さすが Vista ベース。<br />]]>
		<![CDATA[<iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=natz-22&amp;o=9&amp;p=8&amp;l=as1&amp;m=amazon&amp;f=ifr&amp;md=1X69VDGQCMF7Z30FM082&amp;asins=4798019305" style="width: 120px; height: 240px;" marginwidth="0" marginheight="0" frameborder="0" scrolling="no"></iframe>

<iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=natz-22&amp;o=9&amp;p=8&amp;l=as1&amp;m=amazon&amp;f=ifr&amp;md=1X69VDGQCMF7Z30FM082&amp;asins=4891006757" style="width: 120px; height: 240px;" marginwidth="0" marginheight="0" frameborder="0" scrolling="no"></iframe>
]]>
	</content>
</entry>

<entry>
	<title>CentOS 5.4, Debian 5.0: Facter 変数 lsb* が参照できない</title>
	<link rel="alternate" type="text/html" href="http://www.natzworks.com/digital/entries/2010/000252.html" />
	<id>tag:www.natzworks.com,2010:/digital//8.252</id>

	<published>2010-02-04T13:03:29Z</published>
	<updated>2010-02-04T13:36:32Z</updated>

	<summary>先日より多くの変数が利用できると言うことで Ruby ライブラリ Facter のバージョンを上げたが、我が家で稼働する 2台の仮想マシン (以下 VM) で、lsb* で始まる全ての変数が参照できていなかった。特に lsbmajdistrelease はバージョンアップの目的の一つでもあったので、使えないのは困る。lsb* が参照できない VM は、CentOS 5.4 と Debian/GNU Linux 5.0 が各 1台ずつ。実機を含む他のマシンでは問題ないので、どうせ何かのパッケージが足りないんだろうと、他の VM と rpm -qa | sort を diff してみると、あっさり見つかった。...</summary>
	<author>
		<name>Natz</name>
		
	</author>
	
		<category term="Puppet" scheme="http://www.sixapart.com/ns/types#category" />
	
		<category term="サーバー" scheme="http://www.sixapart.com/ns/types#category" />
	
	<category term="aptitude" label="aptitude" scheme="http://www.sixapart.com/ns/types#tag" />
	<category term="facter" label="Facter" scheme="http://www.sixapart.com/ns/types#tag" />
	<category term="lsb" label="LSB" scheme="http://www.sixapart.com/ns/types#tag" />
	<category term="yum" label="yum" scheme="http://www.sixapart.com/ns/types#tag" />
	
	<content type="html" xml:lang="en" xml:base="http://www.natzworks.com/digital/">
		<![CDATA[先日より多くの変数が利用できると言うことで Ruby ライブラリ <a href="http://www.natzworks.com/digital/entries/2010/000247.html">Facter のバージョンを上げた</a>が、我が家で稼働する 2台の仮想マシン (以下 VM) で、lsb* で始まる全ての変数が参照できていなかった。特に lsbmajdistrelease はバージョンアップの目的の一つでもあったので、使えないのは困る。<br /><br />lsb* が参照できない VM は、CentOS 5.4 と Debian/GNU Linux 5.0 が各 1台ずつ。実機を含む他のマシンでは問題ないので、どうせ何かのパッケージが足りないんだろうと、他の VM と rpm -qa | sort を diff してみると、あっさり見つかった。<br />]]>
		<![CDATA[必要なパッケージは、以下の通り。<br /><br /><ul><li>CentOS 5.4: redhat-lsb</li><li>Debian GNU/Linux 5.0: lsb-base, lsb-core, lsb-release<br /></li></ul><br />普段意識することはあまりないが、これも <a href="http://www.linuxfoundation.org/collaborate/workgroups/lsb" target="_blank">LSB (Linux Standard Base) プロジェクト</a>の成果か。<br />]]>
	</content>
</entry>


</feed>
