この記事では、コンピューターの再起動時にファイル共有が再作成されない可能性がある問題を解決します。
元の KB 番号: 870964
症状
Microsoft iSCSI イニシエーター サービスを使用して、インターネット SCSI (iSCSI) ディスク デバイスに接続します。 iSCSI デバイス上にあるフォルダー用に作成したファイル共有は、共有が作成されているコンピューターを再起動しても再作成されない場合があります。
原因
この問題は、サーバー サービスの初期化時に iSCSI イニシエーター サービスが初期化されていない場合に発生する可能性があります。 サーバー サービスは、ファイル共有を作成します。 ただし、iSCSI ディスク デバイスは使用できないため、サーバー サービスは iSCSI サービスが初期化されるまで iSCSI デバイスのファイル共有を作成できません。
決議
iSCSI イニシエーター 2.x
iSCSI イニシエーター 2.x の問題を解決するには、影響を受けるサーバーで次の手順に従います。
サーバー サービスを iSCSI イニシエーター サービスに依存させます。 これを行う方法については、「サーバー サービスを iSCSI イニシエーター サービスに依存させる」セクションを参照してください。
ターゲットへの永続的なログオンを構成します。 それには、以下のいずれかの方法を使用します。
注
Persistent Target タブにターゲットが表示される場合、以下の手順は必要ありません。
方法 1: コントロール パネルで iSCSI イニシエーターを使用する
- コントロール パネルで、iSCSI イニシエーターをダブルクリックします。
- Targets タブを選択します。
- [ ターゲットの選択 一覧でターゲットを選択し、 Log On を選択します。
- [ システム起動時に自動的にこの接続を復元する] チェック ボックスをオンにし OK 選択します。
方法 2: コマンド プロンプト ウィンドウを使用する
- Start>Run を選択し、「cmd」と入力し、OK を選択します。
- コマンド プロンプトで、次のコマンドを入力し、Enter キーを押します。
iscsicli persistentlogintarget **target_iqn** T * * * * * * * * * * * * * * * 0
注
target_iqn
はターゲットの IQN 名です。iSCSI イニシエーター サービスの BindPersistentVolumes オプションを構成します。 それには、以下のいずれかの方法を使用します。
方法 1: コントロール パネルで iSCSI イニシエーターを使用する
- コントロール パネルで、iSCSI イニシエーターをダブルクリックします。
- Bound Volumes/Devices タブを選択します。
- Bind All を選択して、すべての永続的なターゲットをバインドします。 または、 [追加] を選択し、ドライブ文字またはマウント ポイントを入力して特定のターゲットをバインドします。
- [OK] を選択します。
方法 2: コマンド プロンプト ウィンドウを使用する
Start>Run を選択し、「cmd」と入力し、Enter キーを押します。
[
iscsicli BindPersistentVolumes
]と入力して、Enter キーを押します。注
これは、メソッド 1 で Bind All オプションを選択した場合と同じです。
注
この解決策は、iSCSI イニシエーター サービスのバージョン 2.x でこの特定の問題が発生した場合にのみ使用してください。
サーバー サービスを iSCSI イニシエーター サービスに依存させる
次のいずれかの方法を使用して、サーバー サービスを iSCSI イニシエーター サービスに依存させます。
方法 1: Microsoft サービス コントロール ユーティリティを使用する (Sc.exe)
注
このメソッドを使用する場合は、レジストリを変更する必要はありません。 したがって、このメソッドは、サービスの依存関係を設定する推奨される方法です。
Start>Run を選択し、「cmd」と入力し、Enter キーを押します。
[
sc config LanManServer depend= Samss/Srv2/MSiSCSI
]と入力して、Enter キーを押します。サーバーへの管理アクセス権がある場合は、ネットワーク コンピューターからこのコマンドを実行できます。 次のコマンドを入力して、Enter キーを押します。
sc \\computer_name config LanManServer depend= Samss/Srv2/MSiSCSI
方法 2: レジストリ エディターを使用する
重要
このセクション、方法、またはタスクには、レジストリの編集方法が記載されています。 レジストリを誤って変更すると、深刻な問題が発生することがあります。 したがって、次の手順を注意深く実行してください。 保護のために、レジストリを変更する前に、バックアップします。 その後、問題が起こった場合は、レジストリを復元できます。 レジストリをバックアップおよび復元する方法の詳細については、次の記事の番号をクリックして表示される Microsoft サポート技術情報の記事を参照してください。
322756 Windows でレジストリをバックアップおよび復元する方法
Microsoft Windows 2000
レジストリ エディターを起動します。
次のレジストリ サブキーを見つけてクリックします。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanManServer
[Edit] メニューで [値を追加] を選択します。
Value Name ボックスに「DependOnService」と入力し、[Data Type ボックスでREG_MULTI_SZを選択し、Enter キーを押します。
Multi-String Editor ウィンドウで、data ボックスに「MSiSCSI」と入力し、OK を選択します。
レジストリ エディターを終了します。
詳細
Sc.exeユーティリティとIscsicli.exeユーティリティを使用して、「解決」セクションで説明されている手順をスクリプト化できます。 これを行うには、これらのコマンドを使用するバッチ ファイルを作成し、バッチ ファイルを直接実行するか、別の方法でバッチ ファイルを実行します。 たとえば、グループ ポリシーを使用してバッチ ファイルを実行します。
Microsoft は、例示のみを目的としてプログラミング例を提供しており、明示または黙示にかかわらず、いかなる責任も負わないものとします。 これには、市販性または特定目的との適合性についての黙示の保証も含まれますが、これに限定はされません。 この記事は、説明されているプログラミング言語、手順を作成およびデバッグするために使用されているツールに読者が精通していることを前提にしています。 Microsoft のサポート エンジニアが、特定の手順の機能をわかりやすく説明します。 ただし、これらの例を変更して、特定の要件を満たす追加の機能を提供したり、プロシージャを構築したりすることはありません。
「解決」セクションで説明されている操作全体をスクリプト化するには、次のテキストを含むバッチ ファイルを作成します。
sc config LanManServer depend= Samss/Srv2/MSiSCSI
iscsicli BindPersistentVolumes
この問題は、記憶域が初期化される前にサーバー サービスが開始された場合に、iscsi 以外のストレージにも発生する可能性があります。 その場合は、G が監視するドライブ文字であると仮定して、次の回避策を使用できます。
スクリプトを
*.bat
ファイルとして保存します。:Start dir G: /AH if %errorlevel% equ 0 goto :OK ping 127.0.0.1 /n 5 goto :Start :OK net stop browser net stop netlogon net stop dfs net stop lanmanserver /y net start lanmanserver net start dfs net start netlogon net start browser
bat ファイルを "スクリプトの開始" に追加できます。
-
%systemroot%\System32\GroupPolicy\Machine\Scripts\Startup
にバッチファイルを置いてください -
gpedit
を実行してローカル コンピューター ポリシーを開く - スタートアップ スクリプトにバッチ ファイルを追加します。
-