146 votes

Découvrez qui verrouille un fichier sur un partage réseau.

Je veux savoir qui verrouille un fichier sur un partage réseau.

Voici le problème : le partage réseau est sur un NAS, je ne peux donc pas me connecter. J'ai besoin d'un outil pour découvrir à distance qui verrouille le fichier. Il n'est pas pratique de redémarrer le NAS à chaque fois, car il y a plusieurs utilisateurs.

Handle.exe , Process Explorer et PsFile semble être limité aux fichiers de la machine locale, donc ils ne fonctionnent pas pour moi.

180voto

Dirk Paessler Points 959

Juste au cas où quelqu'un chercherait une solution à ce problème pour un système basé sur Windows ou un NAS :

Il existe une fonction intégrée dans Windows qui vous montre quels fichiers de l'ordinateur local sont ouverts/verrouillés par l'ordinateur distant (qui a le fichier ouvert via un partage de fichiers) :

  • Sélectionnez "Gérer l'ordinateur" (Ouvrir "Gestion de l'ordinateur")
  • Cliquez sur "Dossiers partagés".
  • choisissez "Ouvrir des fichiers".

Vous pouvez même y fermer le fichier de force.

10 votes

Vous pouvez même utiliser Action -> Connecter à un autre ordinateur pour accéder au fichier sur un NAS, et cela fonctionne même avec notre NAT basé sur linux ! Pourquoi n'ai-je pas essayé cela plus tôt ?

21 votes

Sous Windows 2008 R2, allez dans le Gestionnaire de serveur > Rôles > Services de fichiers > Gestion du partage et du stockage > cliquez avec le bouton droit de la souris sur SaSM > Gérer les fichiers ouverts.

0 votes

Il suffit d'ouvrir une console MMC et d'ajouter un Snap-in Dossiers partagés. Vous pouvez vous connecter à des systèmes distants.

58voto

Jason Pearce Points 498

Sur les serveurs Windows 2008 R2, vous disposez de deux moyens pour visualiser les fichiers ouverts et fermer ces connexions.

Via la gestion du partage et du stockage

Gestionnaire de serveur > Rôles > Services de fichiers > Gestion des partages et du stockage > clic droit sur SaSM > Gérer les fichiers ouverts

Via OpenFiles

CMD > Openfiles.exe /query /s SERVERNAME

Voir http://technet.microsoft.com/en-us/library/bb490961.aspx .

2 votes

Excellente réponse. Je ne connaissais pas Openfiles ; cela fonctionne beaucoup mieux que d'avoir à utiliser psexec ou des outils de remoting similaires.

0 votes

@twasbrillig ok mais si c'est un NAS, et pas sous Windows ! C:\>Openfiles.exe /query /s 10.0.0.1 <ENTER> ERREUR : Le système cible doit être sous Windows XP ou supérieur.

0 votes

Il convient de noter que les nœuds "Rôles", etc. se développent avec retard.

25voto

Baodad Points 175

PsFile fonctionne sur les machines distantes. Si mon compte de connexion a déjà accès au partage distant, je peux simplement entrer :

psfile \\remote-share

(remplacez "remote-share" par le nom de votre serveur de fichiers) et il affichera la liste de tous les documents ouverts sur ce partage, ainsi que le nom de la personne qui l'a ouvert et l'ID du fichier si je veux forcer sa fermeture. Pour moi, cette liste est très longue, mais elle peut être réduite en entrant une partie d'un chemin :

psfile \\remote-share I:\\Human_Resources

C'est un peu délicat, car dans mon cas, ce partage distant est monté sous Z : sur ma machine locale, mais psfile identifie les chemins tels qu'ils sont définis sur le serveur de fichiers distant, qui dans mon cas est I : (le vôtre sera différent). J'ai dû passer au peigne fin les résultats de ma première exécution de psfile pour voir certains des chemins qu'il retournait, puis l'exécuter à nouveau avec un chemin partiel pour réduire les résultats.

En option, PsFile vous permettra de spécifier les informations d'identification pour le partage distant si vous devez les fournir pour l'accès.

Enfin, un conseil peu connu : si quelqu'un clique sur un fichier dans l'Explorateur Windows et coupe ou copie le fichier dans l'intention de le coller ailleurs, cet acte place également un verrou sur le fichier.

0 votes

Il doit y avoir des doubles \Ns ?

0 votes

@PsychoData, ça fait un moment que je n'ai pas posté ceci. J'espère que ce que j'ai posté est correct. Le site \\ avant la partie de partage à distance semblent correctes, mais les \\ sur I:\\Human_Resources a l'air bizarre. Pourtant, je pense que j'avais une raison pour cela quand j'ai posté. Essayez-le et tenez-moi au courant.

14voto

Jones Points 31

S'il s'agit simplement de savoir/voir qui se trouve dans un fichier à un moment donné (et si vous utilisez Windows), il suffit de sélectionner l'affichage du fichier en tant que "détails", c'est-à-dire plutôt que les vignettes, les tuiles ou les icônes, etc. Une fois dans la vue "détails", vous verrez par défaut ; - le nom du fichier - la taille - Type, et - la date de modification

Tout ce que vous devez faire maintenant est de cliquer avec le bouton droit de la souris n'importe où dans la barre d'outils (nom de fichier, taille, type etc...) et vous obtiendrez une liste d'autres options que la barre d'outils peut afficher.

Sélectionnez "Propriétaire" et une nouvelle colonne affichera le nom d'utilisateur de la personne qui utilise le fichier ou qui l'a créé à l'origine si personne d'autre ne l'utilise.

Cela peut être particulièrement utile lorsqu'on utilise une base de données MS Access partagée.

4 votes

Dans mon cas, ça n'a pas marché. J'ajoute la colonne et je me vois comme le créateur du fichier partagé dans la ressource distante, mais il était déjà verrouillé par un collègue de travail.

6 votes

Cela ne fonctionne vraiment bien que lorsque le programme dans lequel ils se trouvent crée un fichier de verrouillage (comme MS Access) qui appartiendra à celui qui l'utilise et non au créateur original du fichier.

1 votes

Pour éviter d'ajouter la colonne, vous pouvez voir les mêmes informations si vous affichez les propriétés du fichier et regardez l'onglet Détails.

6voto

Les sessions sont gérées par le périphérique NAS. Ce que vous demandez dépend du périphérique NAS et n'a rien à voir avec Windows. Vous devriez jeter un coup d'œil au firmware de votre NAS pour voir ce qu'il prend en charge. Le seul autre moyen est de renifler les paquets et de résoudre le problème vous-même.

0 votes

C'est une bonne réponse avec du bon sens. Malheureusement, ce NAS n'offre pas cette fonctionnalité.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X