2011/02/22

Windows 7でバックアップ終了時にシャットダウンする

Windows 7のバックアップは、やたら時間がかかるが、システムイメージのバックアップのサポートで、システムの復旧にそこそこ使える感じだ。

個人のパソコンでバックアップする場合は、外付けUSBディスクを接続して、バックアップを開始して放置する、ということが多いだろう。バックアップ終了時にシャットダウンしてくれるような機能はバックアップにはない。

でも、イベントのタスク連動を使えば、終了時のシャットダウンも可能だ。方法は、以下。

1. バックアップを実行し、終了するまで実行させる。
2. 「管理ツール」の「イベントビューアー」を開き、Windowsログ -> アプリケーションを選択する。
3. 表示されるイベントログから、ソースが"Windows Backup"、イベントIDが"4098"であるイベントを探す。このイベントには、「バックアップが完了しました」と記録されているはずだ。
4. 右端に、「このイベントにタスクを設定」というリンクがあるので、これをクリックし、基本タスクの作成ウィザードを起動。
5. 名前を適当に設定。たとえば、「バックアップ後のシャットダウン」。
6. 次へ、次へをクリックし、操作で「プログラムの開始」をチェックし、次へ。
7. プログラム/スクリプトのテキストボックスに"shutdown -t 600 -s"と入力。これは、600秒後にシャットダウンを実行、という意味。次のプログラムを実行しますか? というダイアログが出るが、OKをクリックし、完了させる。

これでOKだ。デフォルトでは、AC電源に接続している場合のみ、タスクを実行となるので、ノートPCの場合は要注意。まぁ、バックアップする場合には、AC電源に接続しているので問題ないか。あと、もしかしたら、バックアップしているユーザに管理者権限があるかも問題になるかも。この辺は、タスク設定の若干の調整で何とかなるでしょう。

バックアップと平行して作業していてバックアップが完了した場合は、10分後にシャットダウンする旨のダイアログが表示されるので、10分以内にコマンドプロンプトから"shutdown -a"とすれば、シャットダウンがキャンセルされる。

環境:Windows 7 Home Premium

これで、寝る前にバックアップを実行すれば、勝手にシャットダウンされることになる。

2011/7/5 追記
上でよいと思っていたが、シャットダウンの確認ダイアログが表示された後、スリープしてしまう場合があるようだ。対策は、検討中。電源プロファイルで、AC電源使用中はスリープにならないようになっていればよいと思われるが、、。

2011/02/16

Microsoft Moneyの継続利用 (3)

Felica2Money + Microsoft Money Sunset Editionで快適になっているはずだった。。。

いつもの様にデータを取り込んでいると、取引明細が取り込まれないクレジットカードが、、。オリコカードだ。ダウンロードしたファイルの中身を見ると、オリコカードの分は、そっくり抜けている。何じゃこりゃと思い、Gooに問い合わせたところ、、、。

オリコカードの明細ダウンロードはサポートされていない。

とのこと。

ワンビリングで登録可能なサイト」から調べると、明細ダウンロード対応かどうか書かれている。私が使っているカードの場合、アプラス、オリコ、ソニー銀行が対応してない。幸いどれもアクティブに使っている口座ではないのだが、、、。そうでもないか、オリコはちょくちょく使うか。。。

がっくりだーーーー。

CSVダウンロードは、同一銀行に複数口座があると区別できないから、プログラミングで分類できないし。

がっくりだーーーー。

なんとかしてくれー、Gooさんよ。

2011/02/14

ゴルフ練習 2/13

練習メモ

注意点:
体を開かない。腕をローリングしない。インパクトで手首を返さない。

前回の続き。今まではボールをあげるスイングになっていたんだな、ということを感じた。

左にきちんと乗らないと、ハンドファーストかつダウンブローにはならないようだ。ハンドファーストを意識しすぎて、トップ、腰の回転、ダウンスイングの流れが崩れている。途中で気がついたが、左足にうまく乗れず、修正不能。

途中にアプローチショットの練習にもなっているのかなぁと思い、飛距離を求めるのをやめ、楽に振るようにしたところ、開かずに打てるようになった。

左手首を返さないように固定するのではなく、右手を前に押し出す感覚で打つと、私はうまくいくようだ。終わりのほうでは、左に乗った勢いを生かしたスイングも出るようになった。

この練習の形は、インパクトをよりよくするための通過点とのこと。フルスイングの時は意識するポイントは変わってくるだろうとのこと。

レベルアップのための通過点と言うことか。

ゴルフ練習 2/10

練習メモ

注意点:
ダウンブローに打つ練習
体を開かない。腕をローリングしない。インパクトで手首を返さない。

今までどおりに少し打ったところで、コーチより、上の指令。ハンドファーストでダウンブローに打つため。この方が確率と精度が上がるとのこと。

あたりはするが、ダウンスイングの勢いがそがれる感じで、飛距離が出なくなった。

インパクト後に左手首を返さないようにとのことで、打った後、両手を左肩前にし、シャフトが背中に回らず地面と45度の角度になるようにすること、とのこと。

左手首を返さないようにするため右手に力が入り、スイングがぎこちないし、飛距離も出ない。スイングにブレーキをかけてしまっている感じ。

非常に欲求不満。

2011/02/13

Windows 7のバックアップ -- システムイメージからファイルを取り出す

Windows 7のバックアップはとても使いやすくなっている。システムパーティションとブートパーティションのバックアップであるシステムイメージと、データのバックアップが統合され、とても便利だ。完全バックアップと差分バックアップがセットで管理され、差分が大きくなってくると自動的に新しいバックアップセットが作成されるようだ。

が、これを使おうと思い設定しようとして、はたとなやんでしまった。データの方のバックアップは、差分バックアップから必要ならファイルだけ取り出せるのだが、システムイメージからは個別のファイルは取り出せないことになっている。まるごとディスクをバックアップ時に戻すことしかできないというのだ。

Cドライブにデータが全くないのなら良いのかもしれないが、心配だ。かといって、Cドライブもデータバックアップするのでは、バックアップがシステムイメージと重複してしまい、バックアップディスクを無駄に使ってしまう。

システムイメージからファイルを取り出せないのか?

色々調べて見ると、手があることに気がついた。

システムイメージは、VHDという形式のファイルで記録される。VHDは仮想ハードディスクを表現する形式で、Hyper-Vの仮想マシンのハードディスクになるものだ。実はこの形式は、いつのWindowsからかは忘れたが、仮想化と関係なくドライブとしてマウント可能だ。

ということは、システムイメージもドライブとしてマウント可能なはずだ。

試してみると、コンピュータの管理のディスクの管理で、イメージファイルをマウントすることに成功、中のファイルも参照可能だ。手順は以下の通り。

1. 「コンピュータの管理」を開く。
2. 左側のツリー ビューを展開し「ディスクの管理」を右クリック、「VHDの接続」を選択。
3. 仮想ハードディスクの接続のダイアログで、システムイメージのファイルを指定。

これで、システムイメージのファイルがドライブとして見えるはずだ。システムイメージのファイルは、バックアップを作成したドライブの"SystemImageBackup\マシン名"の下にある。2つ以上のVHDがあるかもしれないが、システムパーティションとブートパーティションのイメージファイルがあるからだ。どれかのファイルを選択してあげれば、Cドライブが出てくるだろう。ドライブへのマッピングの解除は、「ディスクの管理」でVHD相当のディスクのところを右クリックすると、「VHDの切断」というのが出てくるので、これを選択すればよい。

このシステムイメージファイルは、あくまでシステム復旧用なので、ここにデータは書き込まないほうがよいだろう。緊急時にファイルを取り出すだけにすべきだと思う。また、システムイメージとしては複数のバージョンが保持されるようだが、VHDをマウントした場合は最新のシステムイメージしか見えないので、注意が必要のようだ。まぁ、過去のファイルを取り出すには、「システムの復元」を使えばできるので、それほど問題ではないだろう。

それにしても、Volume Shadow CopyやVHDのネイティブサポートで、バックアップは使いやすくなった。私としては、特別なバックアップソフトは必要ではなく、これで十分と感じます。ただし、遅いのは不満。

2011/02/09

Windows 7のパーティション構成

(以下は、Windows 7 32bit版の話)

Windows 7では、既定のパーティション構成がそれまでのWindowsとは大きく違っている。具体的には、起動直後のロード用のプログラムが格納されるシステムパーティションと、Windows自体が格納されるブートパーティションが作成される。

従来は、ntdlr, boot.ini, ntdetect.comといったブートに必要な重要なファイルは、ブートディスクのアクティブとマークされたパーティションにおかれた。ブートディスクはBIOSレベルで決められる。BIOSは、ブートディスクの先頭セクタであるMBR(Master Boot Record)を読み込み、MBR内のブートストラッププログラムに制御を移す。ブートストラッププログラムは、MBRに格納されているパーティションテーブルを検索してアクティブパーティションを見つけ、アクティブパーティションの先頭にあるブートセクタを読み込んで、そこに制御を渡す。そのブートセクタが、そのパーティションにあるntldrを読み込んで、Windowsが起動するという流れだった。MBRやブートセクタは、Windowsインストール時にディスクに書き込まれる。

というわけで、ntldr, boot.ini, ntdetect.com, 加えてブート時に使われるSCSIドライバは、通常ファイルを同じようにディスクに置かれていた。誤ってこれらのファイルを消してしまったり、変に編集してしまうと、Windowsが起動しない、ということになっていた。

Windows 7では、「ディスクの管理」でみるとCドライブのまえにシステムとマークされているパーティションがおかれている。ここに最初に動くプログラムのbootmgrなどが格納されている。bootmgrは、起動時にメニューを出しているブートローダだ。bootmgrが参照する設定ファイルも、このシステムパーティションに格納されている。Linuxの/bootを独立のパーティションにして、カーネルイメージ、初期ディスクイメージ、ブートローダをおく場合があるが、あれと同じ感じである。

以前とは随分違うし、システムパーティションにドライブレターが割り当てられていないが、これがWindows 7での正常な構成だ。プレインストールモデルではこのパーティションにシステム復旧用のプログラムが入っている場合もある。ThinkPadなら、Rescue and Recoveryのプログラムが格納されている。
 
基本的には、EFI(Extensible Firmware Interface)を搭載している64bit機に合わせたのだろうが、ブートの信頼性が格段に増しているように感じる。ブート関連のファイルを誤って消すといったことが、ほぼなくなるといってよいと思う。このシステムパーティションが重要である、とわかっていればだけど。
 
と言うわけで、ディスク領域は食っているけど、このパーティションはドライブレターを付与せずに、残しておくのが正解だと思う。

2011/02/07

Windows 7でシステムパーティションのサイズを拡大

この手のことを実行しようとすると、昔は、何々というフリーソフトを使えばできる、とか、Knoppixでやればできる、とか、とかく難しくなりがちであった。英語版のフリーソフトをインストールして、、、などどいうのは、初心者には、ちょいと敷居が高い。

いつのころから改善されたのか、Windows 7では、いくつかの制限があるもののブートパーティションの拡張が非常に簡単になった。ブートパーティションとは、Windowsがインストールされているパーティション。通常は、Cドライブ。

なんでこんなことを書いているかと言うと、我が家のマシンもCドライブの空き領域が不足してきたため。40GBも用意していたのに、なぜか残り数GBととなり、システムの回復機能がきちんと動かなくなってしまったようなのだ。データはシステムとは違うパーティションに保存するため、わざわざDドライブを作成し、、、などとやっていたが、システムドライブの見積もりが甘かった。そこで、バックアップもかねて、ブートパーティションの拡張にトライすることにした。

まず、ディスク自体に空きがあるのか確認が必要だ。空きがなければ何にもならない。空きのあるパーティションが、ブートパーティションの直後にあれば、作業は簡単だ。直後とは、「コンピュータの管理」ツールの「ディスクの管理」で見たときに、「ブート」とマークされているWindowsパーティション(ブートパーティション)のすぐ後ろの領域のことだ。直後でなくとも、ブートパーティションの後ろのパーティションのいずれかに空きがあれば、なんとかなる。

ただし、ディスクの一番最後には、プロダクトリカバリのデータが入っているかもしれないので、注意すべき。ここに空きがあっても、このパーティションには触れないほうがよいだろう。この手のパーティションには、ドライブレターが割り当てられていないと思う。この手のパーティションには触らないほうがよいだろう。

パーティションの操作をするときには、データのバックアップをとるので、バックアップ用のメディアも必要だ。USBの外付けディスクか、NAS(Network Attached Storage, ネットワーク接続型の外部ディスク)が必要だ。

ここで、ブートパーティションを何GBにするか、その後ろのパーティションを何GBにするか設計する。

次に、ブートパーティションの後ろのパーティションのバックアップを作成する。バックアップは、スタートメニューのメンテナンスにある「バックアップと復元」から作成できる。よくわからなければ、この機に、すべてのドライブのバックアップを作成してしまえばよいだろう。バックアップ後、必要なデータがすべてバックアップされているか、確認すること。バックアップ設定を間違えていると、肝心のデータがバックアップされていないこともある。ポイントは、バックアップにドライブを含めること。

ここで、「ディスクの管理」でブートパーティションの後ろのパーティションを削除する。具体的には、そのパーティションを右クリックしボリュームの削除を実行する。その後、再び右クリックし、パーティションの削除を実行する。これで、この領域が未割り当ての領域になる。

いよいよ、ブートパーティションを拡張する。ブートパーティションを右クリックすると、「ボリュームの拡張」という項目が選択可能になっているはずだ。これを選択すると、拡張するサイズを聞いてくる画面になるので、設計したサイズになるようにパーティションを拡張する。拡張は一瞬で終わる。

最後に、未割り当ての領域にパーティションを割り当て、フォーマットして、利用可能な領域とする。ここに、バックアップしたデータを復元すれば、元通りになる。

空き領域が直後のパーティションにない場合は、複数のパーティションのバックアップをとって、パーティションを削除して、サイズを調整して再作成する、などの手順が出てくるが、ブートパーティションの直後を未割り当てにしてブートパーティションを拡大する、という基本手順は同じだ。

バックアップに多少時間がかかるが、よくわからないソフトをインストールしなくても、ブートパーティションの拡張ができる。

正確には、ダイナミックディスクのときはどうなのか、とか、いろいろあるが、一般的には、上に書いた手順でブートパーティションを拡張できるだろう。

2011/02/05

Outlook 2007でのアドレス帳検索

Outlook 2007のアドレス帳を、こんな風にしてみたいと思った。

連絡先の表示では、会社、部署名、名前を表示することができるが、メールを作成するときや、送信時の確認でアドレス帳を使うときは、氏名、表示名、メールアドレスしか表示されない。

これで不便なのは似たような名前が並んだときに、じっくり確認しなければならないことだ。名前が似ていても、所属部署は違っているケースがほとんどで、アドレス帳表示に所属を示す文字が入れば、確認も容易になると思った。

で、思いついたのが、苗字の先頭に会社名、部署名を入れちゃうこと。連絡先での表示がおかしくなりそうだが、フリガナを正しく入力しておく、メールの表示名は適当に編集しておく(私は、ローマ字表記にしている)、などすれば、連絡先の見た目は今までと一緒、送信するメールのあて先表示もおかしなことにはならない。

つまり、
氏名:××株式会社 山田一郎
フリガナ:ヤマダイチロウ
表示:Ichiro Yamada (hogehoge@hogehoge.co.jp)

こうすると、アドレス帳では、「××株式会社 山田一郎」で表示される。しめしめと思った。

ところが、メール作成時に、山田さんに送るから「山田」と入力して、宛先確認をすると、アドレス帳検索に引っかからないようになってしまった。アドレス帳からの検索でも「山田」では山田さんは出てこなくなってしまった。

いろいろ試してみて、アドレス帳検索は、前方一致検索のようだ、ということがわかった。つまり、苗字を「xx株式会社 山田」すると、"xx"から始まる文字列じゃないと、アドレス帳検索にかからないのだ。ためしに、「子」とかで検索してみると、○○子さんは、ことごとく引っかからない。姓と名で前方一致検索をするらしく、「一」で検索するとxx株式会社山田一郎さんは引っかかってくるのだ。

うーむ。確かに、名前検索だから途中の文字列で検索するユースケースは無いかもしれないが、非常に残念。名前の後ろに所属を付ける(たとえば、山田一郎 xx株式会社)ことで解決なのだが、いまいちよくない。

何かよい方法は無いものでしょうか?

2011/02/03

ゴルフ練習

練習メモ

事前の注意点:
腰を先に回転させ、肩の開きを止めて、振る。

練習中の注意点:
バックスイングを背中側に引き過ぎないように、左腕を伸ばす様に後方へ。
バックスイングで沈み込むように。ひざをやわらかく使う。
バックスイングで腕を高く上げる。
腰を先に回転させ、肩の開きを止めて、左腕をローテーションで一気にたたむ。

結果:
腰を先に回転させ、肩の開きを止めて振る感覚がつかめてきた。前回、右腰を見る感じで振る、というのがそれだ。確かに、肩が開かずに残っていると、右腰を見る感じのスイングができる。これができると、スコーーーンという感じで、振りぬくことができる。これに左腕のローテーションがタイミングよく入ると、よいボールが飛んでいく。

今日は、調子がよく、いつもより5ヤードほど飛んでいた。コーチには5番でもやってみよ、と言われトライ。最初あたりがいまいちだったが、だんだん当たるようになった。ティーアップした状態では、キャリーで140ヤードくらい飛んでいたようだ。マット上からでも130ヤードのグリーンにのっていたので、いつもよりも飛んでいた。かつ、そういう球が何回も出たところが驚きだ。まぐれ当たりで飛んだのではなく、結構な確率でそういう球が出たので、ちょっと進歩した感じ。

コーチにも、下半身がやわらかく使えて、雰囲気が出てきた、とほめられた。

ポイントは、沈み込むようなバックスイングから、ワンピースのスイングにつなげること。バックスイングを注意されたのでワンピースのスイングができなくなってしまったが、それをするように心がけると、いい感じになった。

NECのパソコン事業譲渡

次代の流れを感じるニュース。

NECといえば、PC-8001から始まる日本のパソコンの流れを作った会社。マイクロソフトと提携してN-BASICをパソコンに搭載したり、いろいろやっていた。独自路線の世界から、MSX、DOS/V互換への転換など、日本のパソコン史の中心にいつもNECがいたといってもよいでしょう。

私は、計算機にかかわる仕事をしていますが、最初に持ったパソコンは、PC-8001mkII。その前にSHARPのポケコンを持っていたが、本格的なパソコンは8001mkIIが最初。といっても、私が買ったわけではなく、兄が使っていたののお下がり。ポケコンでも機械語プログラミングをしていたが、PC-8001mkIIになってさらに計算機への興味が増していった。

ちょうど、外付けHDDなるものの出はじめで、DOSという概念が広がり始めたころであった。我が家は外付けHDDなんて買ってもらえるお金も無かったので、当時はDOSを使い倒すことはできなかった。DOS、というか、OSに触ったのは、大学に入ってからか。

BASICでは飽き足らず、機械語プログラミングでハードウェアを直接操作するようなプログラミングをしていた。といってもVRAMくらいだけど。今と違って、直接ハードウェアをたたくプログラミングが簡単にできたので、計算機の仕組みとが原理みたいなものは、今よりも理解しやすかったように思う。DOSなんて無かったし。いまや、仮想化だもんなぁ。。。今、計算機を学ぶ人は、ある意味不幸かも。

それにしても、メモリマップやらフローチャートやらZ80のアセンブラやらを紙に書いて、ハンドアセンブルで機械語に変換して、手打ちで入力して、、、なんて、よくやってたなぁ。なんせOSが無いから、テキストエディタもないし、アセンブラもない。それで機械語とは何か、スタックとは何か、レジスタとは何かを学べるのだが。

もう、日本のような高機能路線のマシンは廃れていくんだろうか。。