カテゴリー別アーカイブ: Windows

Windows Live Writerのプレビュー機能で落ちる…

複数台あるPCの1台を除いて、Windows Live Writerのプレビュー機能を使うとプログラムが不正終了するんですが、その1台だけが落ちない理由が分かりました。

IEが6でした。

IEが7だと確実に落ちます。

多分Twitterを無理矢理表示させているからだと思います。

image

そういう意味ではIE7はきっちり作ってあるんだろうな。

changelogメモをとる(TeraPad+DropBox)

MacでChangeLogメモを試す中で、Windowsの方でもChangeLogが書けるように環境を整えてみました。

肝心なのはMacとWindowsで同じChangeLog.txtを利用できるような仕組みを実現すること。

そのため、ChangeLog.txtはDropBox上に置くこととしました。

ChangeLog形式の記入が楽になるように、TeraPadのマクロを利用しました。

<用意するもの>

<作業の流れ>

  1. ActivePerlとDropBoxは事前にインストールしておく
  2. DropBoxの同期対象のフォルダ(デフォルトではC:Documents and Settings%USERNAME%My Documents)にChangeLog.txtというテキストファイルを置く
  3. TeraPadのマクロを登録する (登録方法はダウンロードしたファイルのREADME.FIRST.win.txtに記載がありますが、チェンジログ・ファイルのパス名を次のように設定します)

    コマンドラインパラメータ: c:<スクリプトのパス>changelog.pl | %e "C:Documents and Settings%USERNAME%My DocumentsMy Dropboxchangelog.txt"

    %USERNAME%は自分のユーザ名を入れてください。

  4. TeraPad用のマクロ(changelog.pl)を修正します。

    !18行目

    my $path          = ‘C:Documents and Settings%USERNAME%My DocumentsMy Dropbox’;

    %USERNAME%は自分のユーザ名を入れてください。

    !20行目

    my $charcode      = ‘utf-8’;

    utf-8に変更してください。デフォルトではshift_jisですが、Macと連携すると文字化けします。

    以上で設定完了です。
    TeraPadを起動し、ツールからマクロを選択すると、指定したPathにあるChangeLog.txtが開きます。
    なお、当然のことですが、Mac側のChangeLogのファイルを"ChangeLog.txt"と拡張子が付くように設定しておく必要があります。

Hyper-Vを利用した仮想化環境でのCALポリシーが変更

Windows Server 2008のHyper-Vを利用して仮想化環境を構築する際のCALの扱いが変わるようです。

変更前 変更後
Windows Server 2008 CALが必要 ゲストOSに依存

 

具体的な例を挙げます。

ゲストOS 変更前 変更後
Windows Server 2003 2008 CAL 2003 CAL
Windows Server 2008 2008 CAL 2008 CAL

 

ホストOSにADなど、仮想化以外の用途で利用した場合はWindows Server 2008 CALが必要になるので注意。

この変更は2008年1月16日から適用とのこと。

TFTPでDOSを起動させて、HDDを消去する(Windows編)

通常であればHDD消去ツールをCDやFDから起動させることで、少しの手間でHDDを消去することができますが、古いLet’sNoteはCDやFDからのブートが制限されていることがあります。

しかもLet’sNoteは内部へのアクセスが非常に複雑で分解→組立するのが難しいことがあります。

そうしたPCのHDDを消去するために、tftpでFreeDOSを起動させ、destroy.comでHDDを消去する方法をまとめます。

  • 手順
    1. FreeDOSの準備
      1. ダウンロードしたFreeDOSのimgファイルを編集ツールで開く
      2. 開いたimgファイルにdestroy.comをコピーする
      3. コピー後は特に保存しなくても、imgファイルの編集が反映される
    2. tftpサーバの準備
      1. pxelinux.0を取り出す
        • ダウンロードしたsyslinux-x.yy.zipを解凍して、./core/pxelinux.0を取り出す
      2. TFTPD32の設定を行う
        1. TFTPD32を起動
        2. GlobalSettingsで、”TFTP Server”、”DHCP Server”にチェックを入れる
        3. Advanced TFTP Optionsで”PXE Compatibility”にチェックを入れる
        4. DHCP Serverタブに移動する。DHCPのオプションはご自身の環境に合わせる。”Boot File”には”pxelinux.0″を指定する
    3. PXEBootの準備
      1. pxelinux.0を使用するため、設定ファイルを作成する
        1. TFTPD32フォルダにpxelinux.cfgというフォルダを作成する
        2. defaultというファイルを作成する(sample_default)
      2. TFTPD32フォルダにpxelinux.0をコピーする
        • tftp32.exeと同じフォルダにコピーすればよい
      3. TFTPD32フォルダに起動用DOSイメージをコピーする
        1. defaultファイルで指定した通りのフォルダ構成にする
        2. TFTPD32にフォルダにfdbootフォルダを作成する
        3. fdbootフォルダに、FreeDOSのimgファイルをコピーする(sampleではhogehoge.imgという名前でコピー)
        4. fdbootのkernelとしてmemdiskをfdbootフォルダにコピーする
          • memdiskはsyslinuxを解凍すると、./memdisk/memdiskに出来ている
    4. クライアントをPXEBootさせる
      1. クライアントPCの準備
        1. BIOSで、起動順を”Network Boot”を第1位に設定する(名称はBIOSによって異なる)
      2. サーバ(TFTPD32を起動させるPC)とクライアント接続する(クロスケーブルやSW-HUB等に接続する)
      3. サーバでTFTPD32を起動させる
      4. クライアントの電源を入れる
        1. うまく行けばプロンプトで停止しますので、”1″を入力してFreeDOSでの起動を指示します
        2. FreeDOSが立ち上がるとA:プロンプトで待機しますので、”destroy.com”を実行します
        3. destroy.comが起動したら、Drive Selectionで抹消したHDDを指定します。複数のHDDを搭載している場合は、要注意。慎重に対象のHDDを選択します
        4. HDDの指定が終わればSanitizeです。抹消方式を選択し、実行します
        5. 完了するまで待機です

以上となります。記事の不備、分かりにくい点はコメントで指摘いただければ幸いです。

レジストリのキー・値を削除する方法

レジストリのキー(ハイブ)と値を削除する方法を2通り紹介します。

もちろん他にも方法はありますが、使いやすくて簡単というのに弱いので。

  1. reg delete コマンドを利用する
  2. .regファイルを読み込む

まずは1.の方法から。

reg delete HKLMSoftwareSample /f

これは、Sampleというキー以下全てを削除します。/fオプションを指定すると所謂「Yes/No」を入力せずに済みます。

他にもオプションがあるので、reg delete /? を実行してみてください。

次に2.の方法。

.regファイルを次のように記入します。

REGEDIT4

[HKEY_CURRENT_USERSoftwareSample]

消したいキーに-(マイナス)をつけます。

値を消したい場合は、次の通り。

REGEDIT4

[HKEY_CURRENT_USERSoftwareSample]

Sample=-

=の後ろ、値部分を-(マイナス)にします。

このように作った.regファイルをregeditで読み込むようなバッチファイルを作成すればOKです。

実際にはこのように書きます。

regedit /s sample.reg

regedit /s でダイアログ無しに読み込ませることが出来ます。SilentのSだと覚えています。

Search Server 2008

マイクロソフト、Microsoft(R) Search Server 2008 Express を発表。エンタープライズサーチ製品群を拡充

少し古いニュースですが、紹介されているSearch Server 2008を社内に導入する動きがあります。

主担当ではなく横からサポートする格好で一枚かんでいます。

ADとの連携が密で、PCへログオンしているアカウントの権限によって、検索結果がフィルタされたりと現実的なもののようで、ファイルサーバ、AD導入の付加価値を向上出来そうです。

GPOのカスタムテンプレートの利用とadmファイルのadmx化

  • テンプレートファイルを作成する(ファイル名.admで保存する)
    • 例はお気に入りのフォルダを変更するためのポリシーです。

CLASS USER
CATEGORY !!categoryname
KEYNAME “SoftwareMicrosoftWindowsCurrentVersionExplorerUser Shell Folders”
POLICY !!policyname
PART !!text EDITTEXT REQUIRED EXPANDABLETEXT
DEFAULT “%USERPROFILE%Favorites”
VALUENAME “Favorites”
END PART
END POLICY
END CATEGORY
[strings]
categoryname=”お気に入り”
policyname=”お気に入りの保管場所”
text=”お気に入りの場所”

  • 次の手順でADに反映する
  1. 作成した.admファイルをADMXMigraterでadmx・adml化する
  2. admxは%logonserver%SYSVOL%userdnsdomain%policiesPolicyDefinitionsフォルダ、admlは同ja-JPフォルダにコピーする
  3. PDCエミュレータにログオンしているVistaでGPMCを開き、新たにポリシーを作成する
  4. gpmc.mmcの表示-フィルタ-「完全に管理されているポリシーのみ表示する」のチェックを外さないと、カスタムポリシーテンプレートを表示することができないので注意。

委任されたアクセス許可を利用できず継承が自動的に無効になる

委任されたアクセス許可を利用できず継承が自動的に無効になる

ユーザさんから、ドメインユーザアカウントのプロパティ、「ユーザはパスワードを変更できない」という項目を有効にしても、一定時間経つと無効になっている、という障害報告があり調査したところ、上記の内容がヒントとなりました。

障害が発生していたユーザが所属しているグローバルグループが、保護の対象である特権グループ「Account Operators」のメンバとなっていました。

このAccount Operatorsの「アクセス許可(ACL)」にはAccount Operatorsのアクセス許可は未設定(当然ですが。)、Domain Adminsにはフルコントロールなし、というものです。

ですので、このグループに所属するグローバルグループは同様のACLになります(引継ぐことになります)。

で、それがユーザアカウントのプロパティに対する変更にどういった影響を与えるのか、というとそれがよく分かりません。

このプロパティはActiveDirectoryの上位にいるLDAP管理サーバから流し込まれているのですが、この流し込みに使われるアカウントがAccountOperatorsの権限で動作している(=アクセス許可がない) ために設定が反映されないのかな…という推測で止まっています。

SQLServer:パフォーマンスを意識した機器構成

SQLServerを乗せるサーバの機器構成で注意すべきポイント。ミドルクラスのDBの場合です。

  • OSはWindows Server 2003 R2なら、Enterprise版にする。メモリを4GB以上搭載するため。
  • メモリは8GB程度。
  • SQLServer自体はStandard版でも良い。
  • HDDは本数が重要。積めば積むほどI/Oが分散される。
  • RAID5は避ける。RAID1+0が望ましい。
  • パーティションは複数用意する。DBのファイル(LDF,MDF)が同じパーティションに載っているとパフォーマンスが悪くなる。

他にもポイントはあると思いますし、状況によっては相応しくないこともありますが、とりあえずはこれだけ押さえておけば酷くはならないと思います。