Si j'ai un serveur Windows (généralement 2000, 2003 ou 2008), existe-t-il un moyen simple de répertorier tous les répertoires locaux partagés sur ce serveur?
Je peux trouver les partages eux-mêmes assez facilement, mais j'aimerais un moyen rapide de trouver les répertoires locaux qu'ils représentent sur le disque.
Merci!
Vous pouvez accéder à la gestion de l'ordinateur (cliquez avec le bouton droit sur mon ordinateur, sélectionnez gérer), développez le nœud Dossiers partagés et consultez une liste de tous les partages, sessions connectées et fichiers ouverts.
Pour W2K8, vous procédez à la place dans le Gestionnaire de serveur: Rôles -> Services de fichiers -> Gestion du partage et du stockage; l'onglet Partages au centre de la fenêtre.
Pour répertorier les partages de serveurs distants, notez que NET VIEW svr_name n'affichera que les partages utilisateur, pas de partages administrateur ou cachés. L'ajout du commutateur/all à la fin affichera ces autres (pour W2K8).
C:\>net view sx1
Shared resources at sx1
Share name Type Used as Comment
--------------------------------------------
SHARE_CIFS Disk
The command completed successfully.
C:\>net view sx1 /all
Shared resources at sx1
Share name Type Used as Comment
--------------------------------------------
ADMIN$ Disk Remote Admin
SHARE_CIFS Disk
C$ Disk Default share
IPC$ IPC Remote IPC
The command completed successfully.
À partir d'une invite de ligne de commande, vous pouvez utiliser la commande "net share". Il imprimera un tableau avec la liste du nom de partage, la ressource et une remarque facultative.
net share
à partir d'une invite de commande vous donnera le nom et le chemin du partage. Si vous avez besoin de quelque chose de plus avancé, vous pouvez interroger WMI en utilisant VBScript ou PowerShell.
Utilisez WMI: Win32_Share.
Dans PowerShell:
gwmi -class Win32_Share
Cela inclut également les partages fournis par le système et fonctionnera à distance.
La propriété Path de l'objet résultant est le chemin local.
Pour plus de clarté (car il n'est pas évident où trouver la liste des partages dans l'interface graphique)
Comme les gens l'ont mentionné, ouvrez un invite de commande et tapez partage net. C'est probablement le moyen le plus simple de voir les actions disponibles. Cela montrera également les partages cachés (ceux avec $ comme suffixe) et où le partage pointe.
Voici un exemple:
C:\Users\tstmoss>net share
Share name Resource Remark
-------------------------------------------------------------------------------
C$ C:\ Default share
IPC$ Remote IPC
ADMIN$ C:\Windows Remote Admin
The command completed successfully.
Sur Windows Server 2008, faites un clic droit sur Ordinateur dans le menu Démarrer et sélectionnez Gérer, ou lancez Gestionnaire de serveur (par défaut, la première icône à côté du menu Démarrer dans la barre des tâches).
Dans le Gestionnaire de serveur, développez le nœud Rôles, puis développez le nœud Services de fichiers. Cliquez sur Gestion du partage et du stockage. L'écran affichera deux onglets, Partages et Volumes. L'onglet Partages vous montre les partages existants (identiques à la sortie de la console ci-dessus). Cette interface vous permet d'interagir avec le partage comme la modification des propriétés/autorisations, l'arrêt du partage ou la création de nouvelles.
J'espère que cela pourra aider.
Pour une liste rapide et sale, à partir d'une invite de commande, exécutez "NET SHARE". Le seul problème avec cette commande est qu'elle formate soigneusement les données en colonnes et peut potentiellement couper les longs chemins.
Vous pourriez être mieux servi en faisant à
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanmanServer\Shares
avec REGEDIT. Vous pouvez l'exporter comme vous le souhaitez.
Faites un clic droit sur votre My Computer
icône et choisissez Manage
.
Dans la fenêtre qui s'ouvre, recherchez dans l'arborescence à gauche l'icône intitulée Shared Folders
et développez-le pour trouver une autre icône intitulée Shares
. Cliquez ici et vous devriez voir une liste de tous les partages actuels.
function Get-FileShare {
[CmdletBinding()]
param(
[string] $Name = '%',
[parameter(ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true)]
[string] $ComputerName = "$env:COMPUTERNAME"
)
Set-StrictMode -Version Latest
$Name = $Name -replace "\*", "%"
if ($Name -eq '%') {
Get-WmiObject -Class Win32_Share -ComputerName $ComputerName
}
else {
Get-WmiObject -Class Win32_Share -ComputerName $ComputerName -Filter "Name LIKE '$Name'"
}
}