Windows Server : voir les fichiers ouverts sur un partage
Lorsque l’on gère un serveur de fichiers dans une organisation, il est utile de savoir quels utilisateurs du domaine accèdent à quels fichiers, par exemple pour déverrouiller l’accès à un fichier, vérifier où travaillent certaines personnes, comprendre pourquoi une copie peut échouer, etc.
Ce tutoriel montre comment voir tous les fichiers ouverts à distance sur un serveur de fichiers qui tourne sous Windows Server. Toutes les éditions fonctionnent de la même manière (Standard, Datacenter, Azure, Essentials…), ainsi que toutes les versions (Windows Server 2022, WS2019, WS2016…) et certainement aussi le prochain Windows Server 2025.
Deux méthodes sont possibles, l’une avec l’interface graphique de la gestion du serveur, l’autre en commande PowerShell qui sera entre autres utiles pour récolter l’information à distance et l’intégrer dans un script.
Liste des fichiers ouverts sur un partage Windows Server
Console graphique d’administration
1. Sur le serveur Windows, faire un clic droit sur le bouton Démarrer pour choisir « Gestion de l’ordinateur« .
On peut aussi passer par la console « Gestionnaire de serveur » et ouvrir la liste des « Outils » pour trouver ce raccourci. C’est légèrement différent sur les versions plus anciennes, telles que Windows Server 2008 R2, où il fait faire un clic droit sur l’icône « Ordinateur » du serveur.
2. Dans le menu de gauche, dérouler Gestion de l’ordinateur, Outils Système, Dossiers partagés et Fichiers ouverts :
3. S’affiche la liste de tous les fichiers ouverts à distance par des utilisateurs du réseau ou du domaine. On y voit le dossier ou le nom des fichiers, l’utilisateur connecté, l’action en cours (lecture, écriture).
Il est ensuite possible de fermer à distance un fichier ouvert (locké ou parce que l’utilisateur ne l’a pas quitté).
En PowerShell
1. Ouvrir une console PowerShell sur le serveur ou à distance.
2. Utiliser la commande :
Get-SmbOpenFile
3. Le résultat affiche différentes colonnes, avec des ID de fichier et de session, ainsi que le répertoire en chemin complet (Path) et relatif (ShareRelativePath) :