So-net無料ブログ作成

ブート時に Z: ドライブをマウントする [ざれごと]このエントリーを含むはてなブックマーク#

デスクトップPCとラップトップPCを使っていると、どちらでも同じようにファイルを見えるといいなと思います。 そんな時、ファイル・サーバを立てて、どちらのPCからも見えるようにすると解決するように思われますが、これでは家庭内LANの届かないところでは作業ができません。 どうやって、解決しようかな。

今日の記事は、私が使用しているWindows XP Professional SP3での「私的なメモ」です。 お使いのオペレーティング・システムによっては、相違があるかもしれませんので、ご留意ください。

オフラインファイルを使う

Windowsの標準機能として、「オフライン・ファイル」という仕掛けがあります。 これは、ファイル・サーバの内容をノートPCの内蔵ディスクの一部にコピーして持ち出すという仕掛けです。 そのため、外で使う前に「持ち出し」の操作をして、帰ってきてから「同期」の操作をしてファイル・サーバの内容とノートPCの内蔵ディスクの内容を同じ状態に保つという仕組みです。

この仕組み、以前仕事で使うときに利用したことがありましたが、「同期」の操作に案外時間をとられてしまい、電源OFFの状態から持ち出す時にはわざわざ「同期」の操作が必要になり不便でした。 その他、忘れ去られた処々の理由によりこの方法は使っていません。

CVSという管理方法

その代わりに私が好んで使っているのが、CVSを使ったバージョン管理という方法です。 これは、CVSサーバにファイルの原本と履歴(リポジトリと呼びます)を置いておき、CVSクライアントからの要求によりファイルの呼び出しと更新を行うというものです。

バージョン管理には、ファイルを「持ち出す」時にロックをかけて、他のユーザやPCからの変更要求を排除するという方法と、CVSのように原則としてロックをかけないという方法の二つがあります。 (と、少なくとも私は理解している。) 前者は、複数のユーザが使っている環境で排他的で安全なファイルの更新が行えるという利点がありますが、誰かが「ロックしたまま」にしてしまうと、とたんに誰も変更することができなくなってしまいます。 ましてや、ロックした人がロックしたこと自体を忘れてしまったり、プロジェクトから外れてロックをはずす権限を失ったりすると、誰のアクセスも受け付けない、とんでもないデータベースが出来上がります。

私の場合は一人で使っているので、「ロックしたまま」であれば、「ロックをはずす」だけで済むのですが、元来のずぼらな性格のおかげで「ロックしたまま」が多発する恐れがあります。 その点、CVSであれば、「ロックする」ことがない分、多少はましな管理ができると思います。 CVSサーバは、PowerPC 搭載の玄箱で稼動しています。

ワーク・スペースは、どこに置く?

CVSを使う手順は、ざっとこんなものです。

  1. 「リポジトリ」から呼び出したファイルをPCの内蔵ディスクにある「ワークスペース」という場所に展開する
  2. 「ワークスペース」でファイルを更新する
  3. 「ワークスペース」のファイルを「リポジトリ」に登録する

このうち、ファイルの更新の部分は、一般のアプリケーションで行うことになります。 そのため、アプリケーションは、「ファイル」は「ワークスペース」にあるものとしか認識しません。 もし、デスクトップPCとラップトップPCで「ワークスペース」の場所が違っていたら、双方のPCのアプリケーションがそれらのファイルを正しく処理できるかどうかわかりません。 特にファイルそのものに別のファイルの絶対パスが書いてあったりすると、致命的です。 何とか、「ワークスペース」の位置だけでも特定しておかなくては。

Z: ドライブという考え方

MS-DOS の頃から、内蔵ディスクのあるディレクトリを仮想ドライブとして表現したいという需要はありました。 当時は、「パス名が長くなるとアプリケーションが受け付けないから」という理由だったと記憶しています。 今回も、この仮想ドライブという仕組みを使って、デスクトップPCとラップトップPCで「ワークスペース」の場所をそろえます。

仮想ドライブを宣言するコマンドは、SUBST です。 たとえば、「D:\Home を Z: ドライブに割り当てる」時には、こんなコマンドを使います。

subst.exe Z: D:\Home

これをPCごとに用意しておいて、PCを立ち上げるたびに実行すれば、完璧です。 それ、絶対、自動化したいよな。

ブート時に Z: ドライブをマウントする

やっと、この記事の最終テーマにたどり着きました。 SUBST コマンドは、ログインスクリプトに書くこともできますが、そうすると、ユーザを切り替えるときにアンマウントする仕組みも必要です。 できたら、ブート時に自動的にマウントしたい。

そういった仕組みは、 Windows XP には、標準装備されていません。 必要な機能だけ装備されていないところが、いかにも Micro$oft らしいというか…

この機能は、「リソース・キット」という高価な別売りソフトウェアを購入するとついてきます。 では、無償では使えないのかというと、英語版で良ければ、Micro$oft のWEBページからダウンロードすることができます。 キーワード「Download details: Windows Server 2003 Resource Kit Tools」で検索すると、ダウンロードサイトにたどり着くことができます。 インストールした後は、「How to Run a Batch File Before Logging on to Your Computer」にしたがって、作業を進めます。

  1. 必要なファイルをコピーする

    インストールされた「リソース・キット」のフォルダから、三つのファイル "autoexnt.exe" "servmess.dll" "instexnt.exe" を C:\WINDOWS\system32 フォルダにコピーします。 コピー先のフォルダ名は、PCによって異なっている可能性がありますが、たぶんこれでしょう。

  2. バッチファイルを作成する

    notepad.exe などのテキスト・エディタでブート時に実行するファイル "autoexnt.bat" を作成し、 C:\WINDOWS\system32 フォルダに配置します。 中身は、上に書いた SUBST コマンド一行だけです。 環境に合わせて、ディレクトリとドライブ名を調整してください。

  3. autoexnt のインストール

    コピーした三つのファイルのうちのひとつは、インストールスクリプトです。 コマンド・プロンプトを開いて、 instexnt install と打つと、インストール完了です。 これで、 autoexnt は、サービス(UNIX でいうところの daemon みたいなもんだよね)として登録されます。

  4. autoexnt の実行

    ためしに、このスクリプトを実行するには、コマンド・プロンプトで続けて、 net start autoexnt と打ちます。 これで、 Z: ドライブの出来上がりです。

  5. autoexnt の自動実行設定

    このスクリプトをブート時に実行するには、自動事項に設定する必要があります。 「コントロール・パネル」 → 「管理ツール」 → 「サービス」 で開く「サービス」ウィンドウから「AutoExNT」をダブルクリックします。 表示されるダイアログのうち、「スタートアップの種類」が「自動」になっていれば、このスクリプトはブート時に自動的に実行されます。

Windows Server 2003 ?

実は、このリソース・キット、 Windows XP SP1 に対応とは書いてありますが、 Windows XP SP3 で使えるとはどこにも書いてありません。 そのため、このまま使っていて大丈夫かなんて、私には保証できません。 あくまで、自己責任でお使いください。

市販のリソース・キット

何冊、あるんですか。

Microsoft Windows Server 2003 リソースキット 導入編1 [計画・テスト]【CD-ROM付】 (マイクロソフト公式解説書)

Microsoft Windows Server 2003 リソースキット 導入編1 [計画・テスト]【CD-ROM付】 (マイクロソフト公式解説書)

  • 作者: Microsoft Corporation
  • 出版社/メーカー: 日経BPソフトプレス
  • 発売日: 2003/11/19
  • メディア: 単行本
Microsoft Windows Server 2003 リソースキット 導入編2 [ネットワーク構築]【CD-ROM付】 (マイクロソフト公式解説書)

Microsoft Windows Server 2003 リソースキット 導入編2 [ネットワーク構築]【CD-ROM付】 (マイクロソフト公式解説書)

  • 作者: Microsoft Corporation
  • 出版社/メーカー: 日経BPソフトプレス
  • 発売日: 2003/11/19
  • メディア: 単行本
Microsoft Windows Server 2003 リソースキット 導入編3 [Active Directory]【CD-ROM付】 (マイクロソフト公式解説書)

Microsoft Windows Server 2003 リソースキット 導入編3 [Active Directory]【CD-ROM付】 (マイクロソフト公式解説書)

  • 作者: Microsoft Corporation
  • 出版社/メーカー: 日経BPソフトプレス
  • 発売日: 2003/11/19
  • メディア: 単行本
Microsoft Windows Server 2003 リソースキット 導入編4 [サーバー構築]【CD-ROM付】 (マイクロソフト公式解説書)

Microsoft Windows Server 2003 リソースキット 導入編4 [サーバー構築]【CD-ROM付】 (マイクロソフト公式解説書)

  • 作者: Microsoft Corporation
  • 出版社/メーカー: 日経BPソフトプレス
  • 発売日: 2003/11/19
  • メディア: 単行本
Microsoft Windows Server 2003 リソースキット 導入編5 [システム自動展開]【CD-ROM付】 (マイクロソフト公式解説書)

Microsoft Windows Server 2003 リソースキット 導入編5 [システム自動展開]【CD-ROM付】 (マイクロソフト公式解説書)

  • 作者: Microsoft Corporation
  • 出版社/メーカー: 日経BPソフトプレス
  • 発売日: 2003/11/19
  • メディア: 単行本
Microsoft Windows Server 2003 リソースキット 導入編6 [管理サービス]【CD-ROM付】 (マイクロソフト公式解説書)

Microsoft Windows Server 2003 リソースキット 導入編6 [管理サービス]【CD-ROM付】 (マイクロソフト公式解説書)

  • 作者: Microsoft Corporation
  • 出版社/メーカー: 日経BPソフトプレス
  • 発売日: 2003/11/19
  • メディア: 単行本
Microsoft Windows Server 2003 リソースキット 導入編7 [IIS 6.0]【CD-ROM付】 (マイクロソフト公式解説書)

Microsoft Windows Server 2003 リソースキット 導入編7 [IIS 6.0]【CD-ROM付】 (マイクロソフト公式解説書)

  • 作者: Microsoft Corporation
  • 出版社/メーカー: 日経BPソフトプレス
  • 発売日: 2003/11/19
  • メディア: 単行本
Microsoft Windows Server 2003リソースキット機能編IIS6.0 (マイクロソフト公式解説書)

Microsoft Windows Server 2003リソースキット機能編IIS6.0 (マイクロソフト公式解説書)

  • 作者: The Microsoft IIS Team
  • 出版社/メーカー: 日経BPソフトプレス
  • 発売日: 2004/06
  • メディア: 単行本

nice!(0)  コメント(3)  トラックバック(0)  このエントリーを含むはてなブックマーク#

nice! 0

コメント 3

xo

見当違いのことを言ってるかもしれませんが、
フォルダを共有かけてそれを自身でマウントすれば、標準機能で出来るのでは?
by xo (2009-02-21 17:09) 

noritan

xoさん、コメントありがとうございます。

そういう方法もあるんですね。早速試してみました。
ところが、無線も有線もつながらない、ネットワーク接続のまったく無い環境では、自分自身のローカルディスクでさえ「切断されたネットワーク・ディスク」になってしまい、マウントしてくれませんでした。 \\localhost\ で何とかできるというわけでもなさそうです。
残念。

普段は、 PC 側の「Micro$oftネットワーク用ファイルとプリンタ共有」はディセーブルしているので、その点でも問題ありですね。

ところで、「マイコンピュータ」にできてしまった、「ネットワーク・ドライブ」は、どうやったら削除できるんでしょう?削除できないよ~

by noritan (2009-02-21 17:50) 

noritan

ちゃんと、ドキュメントを残しておいてくれて、ありがとう。おかげで、オペレーティング・システムの再インストール後も、すぐにZドライブが使えるようになりました。←過去の自分へ
by noritan (2009-11-30 23:52) 

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0

トラックバックの受付は締め切りました

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。