Les partages de fichiers sur les appareils iSCSI ne peuvent pas être recréés lorsque vous redémarrez l’ordinateur

Cet article fournit une résolution à un problème qui peut empêcher la recréation des partages de fichiers lorsque vous redémarrez l’ordinateur.

Applicabilité : Windows 10 - toutes les éditions, Windows Server 2012 R2
Numéro de la base de connaissances d’origine : 870964

Symptômes

Vous utilisez le service Initiateur Microsoft iSCSI pour vous connecter à un périphérique de disque Internet SCSI (iSCSI). Les partages de fichiers que vous créez pour les dossiers situés sur votre appareil iSCSI peuvent ne pas être recréé lorsque vous redémarrez l’ordinateur sur lequel les partages sont créés.

Cause

Le problème peut se produire lorsque le service initiateur iSCSI n’est pas initialisé lors de l’initialisation du service serveur. Le service Serveur crée des partages de fichiers. Toutefois, étant donné que les périphériques de disque iSCSI ne sont pas disponibles, le service serveur ne peut pas créer de partages de fichiers pour les appareils iSCSI tant que le service iSCSI n’est pas initialisé.

Résolution

Initiateur iSCSI 2.x

Pour résoudre le problème dans iSCSI Initiator 2.x, procédez comme suit sur le serveur affecté :

  1. Faites en sorte que le service serveur dépende du service initiateur iSCSI. Pour plus d’informations sur la procédure à suivre, consultez la section « Rendre le service serveur dépendant du service initiateur iSCSI ».

  2. Configurez des connexions persistantes à la cible. Pour cela, appliquez l’une des méthodes suivantes :

    Remarque

    Si vous voyez la cible sous l’onglet Cible persistante , les étapes suivantes ne sont pas obligatoires.

    Méthode 1 : Utiliser l’initiateur iSCSI dans Panneau de configuration

    1. Dans Panneau de configuration, double-cliquez sur Initiateur iSCSI.
    2. Sélectionnez l’onglet Cibles .
    3. Sélectionnez une cible dans la liste Sélectionner une cible , puis sélectionnez Ouvrir une session.
    4. Activez la case à cocher Restaurer automatiquement cette connexion lorsque le système démarre case activée, puis sélectionnez OK.

    Méthode 2 : Utiliser la fenêtre d’invite de commandes

    1. Sélectionnez Démarrer>l’exécution, tapez cmd, puis sélectionnez OK.
    2. À l’invite de commandes, tapez la commande suivante, puis appuyez sur Entrée : iscsicli persistentlogintarget **target_iqn** T * * * * * * * * * * * * * * * 0

    Remarque

    target_iqn est le nom IQN de la cible.

  3. Configurez l’option BindPersistentVolumes pour le service Initiateur iSCSI. Pour cela, appliquez l’une des méthodes suivantes :

    Méthode 1 : Utiliser l’initiateur iSCSI dans Panneau de configuration

    1. Dans Panneau de configuration, double-cliquez sur Initiateur iSCSI.
    2. Sélectionnez l’onglet Volumes/appareils liés .
    3. Sélectionnez Lier tout pour lier toutes les cibles persistantes. Vous pouvez également sélectionner Ajouter, puis entrer une lettre de lecteur ou un point de montage pour lier une cible spécifique.
    4. Sélectionnez OK.

    Méthode 2 : Utiliser la fenêtre d’invite de commandes

    1. Sélectionnez Démarrer>l’exécution, tapez cmd, puis appuyez sur Entrée.

    2. Tapez iscsicli BindPersistentVolumes, puis appuyez sur Entrée.

      Remarque

      Cela revient à sélectionner l’option Lier tout dans la méthode 1.

Remarque

Utilisez cette résolution uniquement si vous rencontrez ce problème spécifique avec la version 2.x du service initiateur iSCSI.

Rendre le service serveur dépendant du service initiateur iSCSI

Utilisez l’une des méthodes suivantes pour rendre le service serveur dépendant du service initiateur iSCSI.

Méthode 1 : Utiliser l’utilitaire Microsoft Service Control (Sc.exe)

Remarque

Vous n’avez pas besoin de modifier le Registre lorsque vous utilisez cette méthode. Par conséquent, cette méthode est la meilleure façon de définir la dépendance de service.

  1. Sélectionnez Démarrer>l’exécution, tapez cmd, puis appuyez sur Entrée.

  2. Tapez sc config LanManServer depend= Samss/Srv2/MSiSCSI, puis appuyez sur Entrée.

    Si vous disposez d’un accès administratif au serveur, vous pouvez exécuter cette commande à partir d’un ordinateur réseau. Tapez la commande suivante, puis appuyez sur Entrée :

     sc \\computer_name config LanManServer depend= Samss/Srv2/MSiSCSI
    

Méthode 2 : Utiliser la Rédacteur du Registre

Importante

Cette section, méthode ou tâche contient des étapes vous indiquant comment modifier le Registre. Toutefois, des problèmes graves peuvent se produire si vous modifiez le Registre de façon incorrecte. Par conséquent, veillez à suivre ces étapes scrupuleusement. Pour une meilleure protection, sauvegardez le registre avant de le modifier. Vous pouvez alors le restaurer en cas de problème. Pour plus d’informations sur la procédure de sauvegarde et de restauration du Registre, cliquez sur le numéro ci-dessous pour afficher l’article correspondant dans la Base de connaissances Microsoft :
322756 Comment sauvegarder et restaurer le Registre dans Windows

Microsoft Windows 2000

  1. Démarrez l’Éditeur du Registre.

  2. Recherchez puis sélectionnez la sous-clé de Registre suivante :
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanManServer

  3. Dans le menu Modifier , sélectionnez Ajouter une valeur.

  4. Tapez DependOnService dans la zone Nom de la valeur , sélectionnez REG_MULTI_SZ dans la zone Type de données , puis appuyez sur Entrée.

  5. Dans la fenêtre Multi-String Rédacteur, tapez MSiSCSI dans la zone de données, puis sélectionnez OK.

  6. Fermez l’Éditeur du Registre.

Informations supplémentaires

Vous pouvez créer un script pour les procédures décrites dans la section « Résolution » à l’aide des utilitaires Sc.exe et Iscsicli.exe. Pour ce faire, créez un fichier de commandes qui utilise ces commandes, puis exécutez le fichier de commandes directement ou exécutez le fichier de commandes d’une autre manière. Par exemple, exécutez le fichier de commandes à l’aide de stratégie de groupe.

Microsoft fournit des exemples de programmation à titre d’illustration uniquement, sans garantie expresse ou implicite. Cela inclut, sans y être limité, les garanties implicites de qualité marchande et d’adéquation à un usage particulier. Cet article considère que vous connaissez le langage de programmation présenté et les outils utilisés pour créer et déboguer des procédures. Les ingénieurs du support Microsoft peuvent expliquer la fonctionnalité d’une procédure en particulier. Toutefois, ils ne modifient pas ces exemples pour fournir des fonctionnalités ou des procédures de construction supplémentaires pour répondre à vos besoins spécifiques.

Pour générer un script pour l’ensemble de l’opération décrite dans la section « Résolution », créez un fichier de commandes contenant le texte suivant :

sc config LanManServer depend= Samss/Srv2/MSiSCSI  
iscsicli BindPersistentVolumes

Le problème peut également se produire sur le stockage non iscsi si le service serveur est démarré avant l’initialisation du stockage. Dans ce cas, nous pouvons utiliser la solution de contournement ci-dessous, en supposant que G est la lettre de lecteur que nous voulons surveiller :

  1. Enregistrez le script en tant que *.bat fichier.

     :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  
    
  2. Nous pouvons ajouter le fichier bat à « Démarrer le script » :

    1. Placez le fichier de commandes dans %systemroot%\System32\GroupPolicy\Machine\Scripts\Startup
    2. Exécuter gpedit pour ouvrir la stratégie de l’ordinateur local
    3. Ajoutez le fichier de commandes dans le script de démarrage.