[AD] Script pour créer des profils itinérants
Dernière réponse : dans Connexions réseau et internet
Bonjour à tous,
savez-vous où je pourrai trouver un ou plusieurs scripts qui me permettrait de créer des profils itinérants pour tous les utilisateurs catalogués dans mon AD ?
Ainsi, qu'un lecteur réseau partagé sur le serveur ?
Pour mieux vous expliquer, je voudrai faire exactement la même chose que cette video : http://tosweb.free.fr/Configuration%20Profil%20Itin%e9rant.wmv
Mais tout cela en utilisant un script que je placerai sur le serveur.
Cependant, je ne connais pas du tout les lignes de commandes à mettre dans le fichier .bat
merci pour votre aide.
savez-vous où je pourrai trouver un ou plusieurs scripts qui me permettrait de créer des profils itinérants pour tous les utilisateurs catalogués dans mon AD ?
Ainsi, qu'un lecteur réseau partagé sur le serveur ?
Pour mieux vous expliquer, je voudrai faire exactement la même chose que cette video : http://tosweb.free.fr/Configuration%20Profil%20Itin%e9rant.wmv
Mais tout cela en utilisant un script que je placerai sur le serveur.
Cependant, je ne connais pas du tout les lignes de commandes à mettre dans le fichier .bat
merci pour votre aide.
Autres pages sur : script creer profils itinerants
Lassé par la pub ? Créez un compte
j'avai fait un script en VBS il y a quelques années qui fait à peu près ça, je te le passe tel quel, il faut le modifier un peu :
le fichier txt à mettre en entrée est simplement une liste de login
je ne gère pas les mot de passe
les comptes sont créés désactivés
On Error Resume Next
OUdepart = InputBox("Entrez l'UO de départ, elle doit exister !!!", "UO de départ","MonOU")
OUacreer = InputBox("Entrez l'UO à créer ou à utiliser.", "UO pour les comptes","UO_Temporaire")
gpacreer = InputBox("Entrez le nom du groupe à créer ou à utiliser", "Groupe","Groupe_temporaire")
listedecompte = InputBox("Entrez le chemin de la liste des comptes.", "Fichier de comptes","liste.txt")
typeprofil = InputBox("Entrez le type du profil : 1 pour itinérant.", "Profil","0")
if TypeProfil = 1 then
serveur = InputBox("Chemin des profils.", "Chemin","\\serveur\profils$\")
End If
'=========================================================
'=========================================================
'Connexion au domaine
'=========================================================
Set racineAD = GetObject("LDAP://rootDSE")
'=========================================================
'On entre dans l'UO de base
'=========================================================
Set UOdebase = GetObject("LDAP://" & racineAD.Get("defaultNamingContext"))
'=========================================================
'On entre dans l'UO de départ
'=========================================================
Set UO = UOdebase.GetObject("organizationalUnit","ou=" & OUdepart)
if(Err.Number <> 0)then
wscript.echo "L'UO [" & OUdepart & "] ne semble pas exister, fin du script."
Err.Clear
wscript.quit
end if
'=========================================================
'On créer l'UO
'=========================================================
if OUacreer = "" then
Set uoacreer = UO
uoacreer.SetInfo
end if
if OUacreer <> "" then
Set uoacreer = UO.Create("organizationalUnit", "ou=" & OUacreer)
uoacreer.SetInfo
end if
if(Err.Number <> 0)then
wscript.echo "Erreur lors de la création de l'UO [" & OUacreer & "], l'objet semble déjà exister."
Err.Clear
wscript.quit
end if
'=========================================================
'Création du groupe
'=========================================================
ADS_GROUP_TYPE_GLOBAL_GROUP = &h2
ADS_GROUP_TYPE_LOCAL_GROUP = &h4
ADS_GROUP_TYPE_UNIVERSAL_GROUP = &h8
ADS_GROUP_TYPE_SECURITY_ENABLED = &h80000000
Set Groupe = uoacreer.Create("group", "cn=" & GPacreer)
Groupe.Put "sAMAccountName", GPacreer
Groupe.Put "groupType", ADS_GROUP_TYPE_GLOBAL_GROUP Or _
ADS_GROUP_TYPE_SECURITY_ENABLED
Groupe.SetInfo
if(Err.Number <> 0)then
wscript.echo "Erreur lors de la création du groupe [" & GPacreer & "]."
Err.Clear
wscript.quit
end if
'=========================================================
'Création des utilisateurs
'=========================================================
'=========================================================
'Déclaration des variables
'=========================================================
Const avant = 1, defaut = -2, vrai = -1, faux = 0
Dim ObjetFichier, Fichier, Chaine
Set ObjetFichier = CreateObject("Scripting.FileSystemObject")
Set Fichier = ObjetFichier.GetFile(listedecompte)
Set Chaine = Fichier.OpenAsTextStream(avant, defaut)
'=========================================================
'Fin déclaration
'=========================================================
'=========================================================
'On lit les lignes du fichier
'=========================================================
do until Chaine.AtEndOfStream
login = Chaine.ReadLine
'=========================================================
'On crée l'utilisateur
'=========================================================
Set Utilisateur = uoacreer.Create("user", "cn=" & login)
Utilisateur.Put "sAMAccountName", login
Utilisateur.SetInfo
if(Err.Number <> 0)then
wscript.echo "Erreur lors de la création du compte [" & login & "], il existe probablement déjà."
End if
'=========================================================
'S'il n'y a pas eu d'erreur, on applique les propriétés du compte
'=========================================================
if(Err.Number = 0)then
Utilisateur.AccountDisabled = True
Utilisateur.SetInfo
Utilisateur.Put "pwdLastSet", 0
Utilisateur.SetInfo
'=========================================================
'Cas d'un utilisateur itinérant
'=========================================================
if TypeProfil = 1 then
Utilisateur.Profile = serveur & login
Utilisateur.SetInfo
End If
End If
Err.Clear
loop
Chaine.Close
MsgBox "Opération terminée !"
le fichier txt à mettre en entrée est simplement une liste de login
je ne gère pas les mot de passe
les comptes sont créés désactivés
oui et non
tu modifie ce que tu veux
mais il n'y a pas de .bat ici
ce script est en VBS (.vbs), il doit être exécuté depuis une machine du domaine avec les droits administrateur
pour fonctionner du dois créer un .txt avec la liste des login à créer
sans rien modifier, il ne fait pas ce que tu veux, mais il contient tout ce dont tu as besoin pour en faire un qui colle parfaitement à ce que tu veux faire
tu modifie ce que tu veux
mais il n'y a pas de .bat ici
ce script est en VBS (.vbs), il doit être exécuté depuis une machine du domaine avec les droits administrateur
pour fonctionner du dois créer un .txt avec la liste des login à créer
sans rien modifier, il ne fait pas ce que tu veux, mais il contient tout ce dont tu as besoin pour en faire un qui colle parfaitement à ce que tu veux faire
maith a dit :
?????? et ça change quoi, si ce n'est qu'avec un ".bat" tu ne pourras par faire la moitié de ce que tu veux ?c'est l'extension qui te gène ?
n'importe quoi...
++
salut,
non ce n'est pas l'extension qui me dérange.
Seulement, ma prof d'info m'a dit d'utiliser un script avec un fichier en .bat, c'est pour cela que je veux faire un script batch.
La création de l'UO et de l'utilisateur, je vais la faire à la main.
Je veux juste un bout de script que je place dans le dossier des scripts et qui crée un profil itinerant pour l'utilisateur que je rentre dans l'AD...
Comme sur la video...
très limité windows en ligne de commande, je te recommande vraiment (et à ta prof aussi) d'utiliser des langages un peu évolués (vbs, powershell...)
http://technet2.microsoft.com/windowsserver/en/library/...
http://technet2.microsoft.com/windowsserver/en/library/...
Ok merci pour ce lien.
Perso j'utilise W2KServer, est-ce que les commandes sont identiques?
Quelle est la commande qui permet de spécifier le chemin du profil itinerant de l'utilisateur sur le serveur dans le script ?
Autres petite question
, sous quelle extension je dois enregistrer le fichier ?
Merci pour ton aide
Perso j'utilise W2KServer, est-ce que les commandes sont identiques?
Quelle est la commande qui permet de spécifier le chemin du profil itinerant de l'utilisateur sur le serveur dans le script ?
Autres petite question
, sous quelle extension je dois enregistrer le fichier ?Merci pour ton aide
pour le chemin du profile
dans mon script c'est géré, si tu veux utiliser les commandes du site, c'est écrit sur le site
pour les extensions
si tu parle de mon script, c'est .vbs
si tu parle des commandes du site demi-Kr0 $oft, dans un fichier .bat
dans mon script c'est géré, si tu veux utiliser les commandes du site, c'est écrit sur le site
-hmdir HomeDirectory
Specifies the home directory location of the user you want to add. If HomeDirectory is given as a Universal Naming Convention (UNC) path, then you must specify a drive letter to be mapped to this path using the -hmdrv parameter.
-hmdrv DriveLetter :
Specifies the home directory drive letter (for example, E:) of the user you want to add..
-profile ProfilePath
Specifies the profile path of the user you want to add.
pour les extensions
si tu parle de mon script, c'est .vbs
si tu parle des commandes du site demi-Kr0 $oft, dans un fichier .bat
quand c'est entre [] c'est pour dire que c'est un paramètre optionnel, mais il ne faut pas les utiliser dans le code
le net use * /delete c'est un peu violent, il faut que tu sois certain que tes utilisateurs n'aient pas d'autres lecteurs mappés
mais le plus important, c'est ton %username% qu'il faut déclarer quelque part
tel quel (en corrigeant les []), ton script va créer un utilisateur qui porte le nom de l'utilisateur depuis lequel il va être lancé
et comme tu ne peux le lancer que depuis le contrôleur de domaine en administrateur, tu vas tenter de créer un compte nommé administrateur (donc erreur)
en batch il faut aussi doubler les % autour des variables
tu confonds les commandes d'administrations et de login
la création d'un compte ne doit être exécutées que par l'admin, une seule fois, le mappages des lecteurs réseaux doit au contraire être lancé à chaque ouverture de session->2 scripts distincts
et pour finir, tu ne souhaite pas juste créer 1 compte, mais plusieurs, il faut donc une boucle autour du code suivant
le net use * /delete c'est un peu violent, il faut que tu sois certain que tes utilisateurs n'aient pas d'autres lecteurs mappés
mais le plus important, c'est ton %username% qu'il faut déclarer quelque part
tel quel (en corrigeant les []), ton script va créer un utilisateur qui porte le nom de l'utilisateur depuis lequel il va être lancé
et comme tu ne peux le lancer que depuis le contrôleur de domaine en administrateur, tu vas tenter de créer un compte nommé administrateur (donc erreur)
en batch il faut aussi doubler les % autour des variables
tu confonds les commandes d'administrations et de login
la création d'un compte ne doit être exécutées que par l'admin, une seule fois, le mappages des lecteurs réseaux doit au contraire être lancé à chaque ouverture de session->2 scripts distincts
et pour finir, tu ne souhaite pas juste créer 1 compte, mais plusieurs, il faut donc une boucle autour du code suivant
set compte=toto
dsadd user %%compte%% -hmdir \\serveur\profils\%%compte%%
Citation :
quand c'est entre [] c'est pour dire que c'est un paramètre optionnel, mais il ne faut pas les utiliser dans le codeoki
![[:ahm86funky:12] [:ahm86funky:12]](http://m.bestofmedia.com/sfp/design/usr/fr/smilies/a0/eb/ahm86funky:12.gif)
Citation :
tu confonds les commandes d'administrations et de loginla création d'un compte ne doit être exécutées que par l'admin, une seule fois, le mappages des lecteurs réseaux doit au contraire être lancé à chaque ouverture de session->2 scripts distincts
D'accord
Citation :
et pour finir, tu ne souhaite pas juste créer 1 compte, mais plusieurs, il faut donc une boucle autour du code suivant
set compte=toto
dsadd user %%compte%% -hmdir \\serveur\profils\%%compte%%
Pour bien comprendre. En fait, au préalable je crée manuellement l'utilisateur dans l'AD.
Ensuite je crée son profil itinerant et son lecteur réseau via un script.
Donc, je pense (mais je ne suis pas du tout sûr) que dans le code que tu m'a présenté ci-dessus, je ne dois garder que le -hmdir \\serveur\profils\%%compte%% puisque l'utilisateur sera deja créé dans l'Active Directory.
Lassé par la pub ? Créez un compte
- Contenus similaires :
Tags :
- ForumScript profil itinérant
- ForumProfils itinerants imprimantes reseaux
- ForumAvance ad gpo question profil itinerant
- ForumProbleme avec les profils itinerants windows
- solutionsPlusieurs profils itinerants
- ForumProfil itinerant ad
- ForumScript demarrage profil itinerant
- ForumScript d'un profil itinérant
- ForumProfils itinerants xp
- ForumProfils itinerants - outlook - zimbra
- Voir plus