Accueil - Guides & Astuces - Serveurs & Infrastructure - Comment partager facilement rapidement des dossiers en Powershell

Comment partager facilement rapidement des dossiers en Powershell

Comment partager facilement rapidement des dossiers en Powershell
Noter cet article

Généralement vous créez un dossier partagé avec l'interface Windows, mais saviez vous que c'est possible de le faire en ligne de commande grâce au Powershell ?

L'intérêt est limité pour quelques dossiers mais si vous en avez beaucoup vous allez pouvoir les partager en quelques secondes.

C'est donc tout l'objet de ce tutoriel.

Rappel d'un partage de dossier via l'interface Windows

Tout d'abord voici un rappel sur le partage des dossiers via l'interface Windows.

Sur le dossier vous devez faire un clic-droit puis "propriétés"

partager dossier sur Windows

Puis dans l'onglet Partage choisir Partage Avancé...

partage avancé d'un dossier Windows

Ensuite donnez un nom au partage et cocher la case "Partager ce dossier"

donner un nom de partage à un dossier Windows

Dans Autorisations choisir Tout le monde ou Utilisa. du domaine et cocher les cases "contrôle total", "modifier", "lecture"

autorisation partages windows

Votre dossier est donc partagé.

Maintenant nous allons voir qu'il est possible de faire la même chose en ligne de commande grâce au PowerShell.

Partage un ou plusieurs dossier en ligne de commande PowerShell

Partage d'un dossier

Nous allons utiliser la commande New-SmbShare il faut bien sur le faire dans une invite de commande Powershell !

New-SmbShare -Name NomDuPartage -Path E:\Dossier -FullAccess "administrateur"

Détaillons la commande :

  • NomDuPartage = Le nom du partage qui sera donné (ici NomDuPartage)
  • Path = le chemin du dossier à partagé (ici le dossier nommé Dossier qui se trouve dans le E:\
  • FullAccess = Qui a les autorisations avec tous les accès ? (ici Administrateur)

Voici l'exemple de la commande :

invite de commande powershell

Partagez plusieurs dossiers dans un dossier

Voici un petit script qui permet de partager tous les dossiers qui se trouve au sein d'un dossier référence :

$dir = dir E:\Test

foreach($folder in $dir){New-SmbShare -Name $folder$ -Path $folder.Fullname -FullAccess "Utilisa. du domaine" -whatif}

pause

Copiez-collez ce code dans un fichier texte que vous sauvegarderez en .ps1

Détaillons le script :

Nous définissons notre dossier de base avec la variable $dir (ici on se place dans le dossier E:\Test)

Nous allons ensuite boucler et réaliser un partage pour chaque dossier : foreach($folder in $dir)

Puis nous réalisons le partage :  New-SmbShare -Name $folder -Path $folder.Fullname -FullAccess "Utilisa. du domaine" -whatif

Ici le nom du partage reprend le nom du dossier à partager (-Name $folder)

Cas pratique !

J'utilise ce script pour créer rapidement les partages des utilisateurs.

En effet chaque utilisateur a un dossier accessible à son nom.

Le nom du partage = le nom du dossier avec un $ pour que le partage soit caché.

Plutôt que de faire les partages à la main pour chaque dossier j’utilise le script ci-dessus. (j'ajoute un $ ici -Name $folder$)

Si vous avez des idées, suggestions pour optimiser le script n'hésitez pas à utiliser le fil des commentaires.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Notre site propose des cookies afin d'améliorer votre expérience utilisateur. Pour informations nous utilisons Google Adsense pour afficher de la publicité et Google Analytics pour avoir des statistiques précises sur le nombre de visiteurs et pour améliorer notre positionnement sur google. Si vous êtes d'accord avec ça merci de cliquer sur "Accepter". Plus d’informations

Les paramètres des cookies sur ce site sont définis sur « accepter les cookies » pour vous offrir la meilleure expérience de navigation possible. Si vous continuez à utiliser ce site sans changer vos paramètres de cookies ou si vous cliquez sur "Accepter" ci-dessous, vous consentez à cela.

Fermer