Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

script pour ajouter un serveur a un domaine ( O U )

12 réponses
Avatar
lolo1790
Bonjour

je voudrais un script vbs pour permettre a un server d'integrer un domaine
active directory mais je oudrais ce script interactif c'est a dire ou je peux
entrer chaque parametre a la main, comme le domaine, le user et le mot de
passe et ensuite le script fait le reste.
si quelqu'un a une idée la dessus.
merci.

10 réponses

1 2
Avatar
Gilles LAURENT [MVP]
"lolo1790" a écrit dans le message
de
news:
| Bonjour

Bonjour,

| je voudrais un script vbs pour permettre a un server d'integrer un
| domaine active directory mais je oudrais ce script interactif c'est a
| dire ou je peux entrer chaque parametre a la main, comme le domaine,
| le user et le mot de passe et ensuite le script fait le reste.
| si quelqu'un a une idée la dessus.
| merci.

Ci-dessous le script batch "JoinToDomain.cmd" permettant de joindre la
machine locale à un domaine Active Directory. Les informations
nécessaires à la jonction au domaine sont demandées de manière
interactive. Ce script s'appuie sur la méthode JoinDomainOrWorkgroup de
la classe WMI Win32_ComputerSystem accessible via l'outil en ligne de
commandes WMIC :

--- Coupez ici : JoinToDomain.cmd ---
@echo off

:: empilage de l'environnement
setlocal

:: affichage du header
echo.
echo Script : %0
echo Please enter the informations needed to join %computername%
echo.

:: saisie des informations nécessaires à la jonction au domaine
set /p Domain="DNS Domain : "
set /p OU="OU (optional) : "
set /p User="Username : "
set /p Password="Password : "

:: tentative de jonction de la machine locale au domaine spécifié
wmic ComputerSystem where name!="" call JoinDomainOrWorkgroup
"%OU%",3,"%Domain%","%Password%","%User%"

:: restitution de l'environnement précédemment empilé
endlocal
--- Coupez ici : JoinToDomain.cmd ---

Note: Les credentials (user, pwd) renseignés dans ce script doivent
posséder un droit d'administration sur le domaine spécifié; soit
administrateur du domaine ou alors posséder une délégation
d'administration sur l'OU spécifiée. Il est toutefois nécessaire d'être
administrateur de la machine locale pour exécuter ce script.

--
Gilles LAURENT
MVP Windows Server - Admin Frameworks
http://glsft.free.fr
Avatar
lolo1790
bonjour

je viens de tester le batch mais j'ai une erreur :

Executing
(FT-3OQOFVDGBCVOROOTCIMV2:Win32_ComputerSystem.Name="FT-3OQOFVDGBC
VO")->JoinDomainOrWorkgroup()
ERROR:
Code = 0x8004102f
Description = Invalid method Parameter(s)
Facility = WMI
'""' is not recognized as an internal or external command,
operable program or batch file.

est ce c'est un probleme de compte car le compte que j'utilise a le droit
d'inserer les machines dans le domaine.

Merci.

"Gilles LAURENT [MVP]" wrote:

"lolo1790" a écrit dans le message
de
news:
| Bonjour

Bonjour,

| je voudrais un script vbs pour permettre a un server d'integrer un
| domaine active directory mais je oudrais ce script interactif c'est a
| dire ou je peux entrer chaque parametre a la main, comme le domaine,
| le user et le mot de passe et ensuite le script fait le reste.
| si quelqu'un a une idée la dessus.
| merci.

Ci-dessous le script batch "JoinToDomain.cmd" permettant de joindre la
machine locale à un domaine Active Directory. Les informations
nécessaires à la jonction au domaine sont demandées de manière
interactive. Ce script s'appuie sur la méthode JoinDomainOrWorkgroup de
la classe WMI Win32_ComputerSystem accessible via l'outil en ligne de
commandes WMIC :

--- Coupez ici : JoinToDomain.cmd ---
@echo off

:: empilage de l'environnement
setlocal

:: affichage du header
echo.
echo Script : %0
echo Please enter the informations needed to join %computername%
echo.

:: saisie des informations nécessaires à la jonction au domaine
set /p Domain="DNS Domain : "
set /p OU="OU (optional) : "
set /p User="Username : "
set /p Password="Password : "

:: tentative de jonction de la machine locale au domaine spécifié
wmic ComputerSystem where name!="" call JoinDomainOrWorkgroup
"%OU%",3,"%Domain%","%Password%","%User%"

:: restitution de l'environnement précédemment empilé
endlocal
--- Coupez ici : JoinToDomain.cmd ---

Note: Les credentials (user, pwd) renseignés dans ce script doivent
posséder un droit d'administration sur le domaine spécifié; soit
administrateur du domaine ou alors posséder une délégation
d'administration sur l'OU spécifiée. Il est toutefois nécessaire d'être
administrateur de la machine locale pour exécuter ce script.

--
Gilles LAURENT
MVP Windows Server - Admin Frameworks
http://glsft.free.fr





Avatar
Gilles LAURENT [MVP]
"lolo1790" a écrit dans le message
de
news:
| bonjour

Bonjour,

| je viens de tester le batch mais j'ai une erreur :
|
| Executing
| (FT-3OQOFVDGBCVOROOTCIMV2:Win32_ComputerSystem.Name="FT-3OQOFVDGBC
| VO")->JoinDomainOrWorkgroup()
| ERROR:
| Code = 0x8004102f
| Description = Invalid method Parameter(s)
| Facility = WMI
| '""' is not recognized as an internal or external command,
| operable program or batch file.

La commande WMIC est composée d'une seule ligne. La ligne commencant par
"%OU%" doit donc se situer sur la même ligne que celle commencant par
wmic (avec un espace après la méthode JoinDomainOrWorkgroup). C'est un
problème classique de formatage dans les NG ;-)

--
Gilles LAURENT
MVP Windows Server - Admin Frameworks
http://glsft.free.fr
Avatar
lolo1790
merci, c'est mieux mais j'ai le message de retour suivant :

Exécution
(PC-DE-LAURENTROOTCIMV2:Win32_ComputerSystem.Name="PC-DE-LAURENT")->JoinDomainOrWorkgro
up()
Méthode exécutée.
Paramètres de sortie :
instance of __PARAMETERS
{
ReturnValue = 5;
};

que veut-dire la valeur 5.

Cdt

"Gilles LAURENT [MVP]" wrote:

"lolo1790" a écrit dans le message
de
news:
| bonjour

Bonjour,

| je viens de tester le batch mais j'ai une erreur :
|
| Executing
| (FT-3OQOFVDGBCVOROOTCIMV2:Win32_ComputerSystem.Name="FT-3OQOFVDGBC
| VO")->JoinDomainOrWorkgroup()
| ERROR:
| Code = 0x8004102f
| Description = Invalid method Parameter(s)
| Facility = WMI
| '""' is not recognized as an internal or external command,
| operable program or batch file.

La commande WMIC est composée d'une seule ligne. La ligne commencant par
"%OU%" doit donc se situer sur la même ligne que celle commencant par
wmic (avec un espace après la méthode JoinDomainOrWorkgroup). C'est un
problème classique de formatage dans les NG ;-)

--
Gilles LAURENT
MVP Windows Server - Admin Frameworks
http://glsft.free.fr





Avatar
Gilles LAURENT [MVP]
"lolo1790" wrote:

merci, c'est mieux mais j'ai le message de retour suivant :

Exécution
(PC-DE-LAURENTROOTCIMV2:Win32_ComputerSystem.Name="PC-DE-LAURENT")->JoinDomainOrWorkgro
up()
Méthode exécutée.
Paramètres de sortie :
instance of __PARAMETERS
{
ReturnValue = 5;
};

que veut-dire la valeur 5.



La valeur de retour 5 indique un accès refusé. Votre compte ne possède
peut-être pas le droit de créer un objet Ordinateur dans le domaine ou alors
votre compte possède uniquement une délégation d'administration dans une OU
spécifique. Vous pouvez essayer les opérations suivantes :

1- Remplacer la valeur 3 par la valeur 1 dans la commande wmic. La valeur 1
indique simplement de joindre l'ordinateur au domaine sans créer l'objet
Ordinateur. Bien entendu, l'objet Ordinateur doit être présent dans
l'annuaire Active Directory

2- Si votre compte ne possède qu'une délégation d'administration dans un OU
spécifique, spécifiez le DN de l'OU cible dans laquelle créer l'objet
Ordinateur

--
Gilles LAURENT
MVP Windows Server - Admin Frameworks
http://glsft.free.fr
Avatar
lolo1790
Bonjour

En fait j'ai besoin de rentrer mon OU pour pouvoir inserer ma machine
mais sous quel format je dois rentrer les parametres dans la ligne OU de ton
cmd ?

voici mon OU :
OU=Platon,ou=Applications,dc­int,dc=imr,dc=francetelecom,dc=fr

Merci.

"Gilles LAURENT [MVP]" wrote:

"lolo1790" wrote:

> merci, c'est mieux mais j'ai le message de retour suivant :
>
> Exécution
> (PC-DE-LAURENTROOTCIMV2:Win32_ComputerSystem.Name="PC-DE-LAURENT")->JoinDomainOrWorkgro
> up()
> Méthode exécutée.
> Paramètres de sortie :
> instance of __PARAMETERS
> {
> ReturnValue = 5;
> };
>
> que veut-dire la valeur 5.

La valeur de retour 5 indique un accès refusé. Votre compte ne possède
peut-être pas le droit de créer un objet Ordinateur dans le domaine ou alors
votre compte possède uniquement une délégation d'administration dans une OU
spécifique. Vous pouvez essayer les opérations suivantes :

1- Remplacer la valeur 3 par la valeur 1 dans la commande wmic. La valeur 1
indique simplement de joindre l'ordinateur au domaine sans créer l'objet
Ordinateur. Bien entendu, l'objet Ordinateur doit être présent dans
l'annuaire Active Directory

2- Si votre compte ne possède qu'une délégation d'administration dans un OU
spécifique, spécifiez le DN de l'OU cible dans laquelle créer l'objet
Ordinateur

--
Gilles LAURENT
MVP Windows Server - Admin Frameworks
http://glsft.free.fr



Avatar
Gilles LAURENT [MVP]
"lolo1790" wrote:

Bonjour



Bonjour,

En fait j'ai besoin de rentrer mon OU pour pouvoir inserer ma machine
mais sous quel format je dois rentrer les parametres dans la ligne OU de ton
cmd ?

voici mon OU :
OU=Platon,ou=Applications,dc­int,dc=imr,dc=francetelecom,dc=fr



Oui, c'est cette syntaxe à utiliser. Vous devez saisir le DN de l'OU dans le
format que vous spécifiez ici.

--
Gilles LAURENT
MVP Windows Server - Admin Frameworks
http://glsft.free.fr
Avatar
lolo1790
quand je rentre tous les parametres
"OU=Platon,ou=Applications,dc­int,dc=imr,dc=francetelecom,dc=fr "
il me dit que ce n'est pas bon mais quand je met dans OU :
applications/platon , il me met "returnvalue‡" et mon server n'est pas dans
le domaine ca doit etre dans les parametres OU , ou il y a un soucis.

Merci.

"Gilles LAURENT [MVP]" wrote:

"lolo1790" wrote:

> Bonjour

Bonjour,

> En fait j'ai besoin de rentrer mon OU pour pouvoir inserer ma machine
> mais sous quel format je dois rentrer les parametres dans la ligne OU de ton
> cmd ?
>
> voici mon OU :
> OU=Platon,ou=Applications,dc­int,dc=imr,dc=francetelecom,dc=fr

Oui, c'est cette syntaxe à utiliser. Vous devez saisir le DN de l'OU dans le
format que vous spécifiez ici.

--
Gilles LAURENT
MVP Windows Server - Admin Frameworks
http://glsft.free.fr



Avatar
Gilles LAURENT [MVP]
"lolo1790" wrote:

quand je rentre tous les parametres
"OU=Platon,ou=Applications,dc­int,dc=imr,dc=francetelecom,dc=fr "



Il faut saisir le DN de l'ou sans les guillemets
Quel est le message ou code d'erreur dans ce cas ?

il me dit que ce n'est pas bon mais quand je met dans OU :
applications/platon , il me met "returnvalue‡" et mon server n'est pas dans
le domaine ca doit etre dans les parametres OU , ou il y a un soucis.



Le format applications/platon ne respecte pas la syntaxe de l'OU donc c'est
normal que vous receviez dans ce cas le code d'erreur 87

--
Gilles LAURENT
MVP Windows Server - Admin Frameworks
http://glsft.free.fr
Avatar
lolo1790
Voici le message d'erreur que j'ai si je rentre tout

"C:PLATON>JoinToDomain.cmd

Script : JoinToDomain.cmd
Please enter the informations needed to join PLAPI044

DNS Domain : adint.imr.francetelecom.fr
OU (optional)
:OU=Platon,ou=Applications,dc­int,dc=imr,dc=francetelecom,dc=fr

Username : adm-platon
Password : platonxxx
Invalid format.
Hint: <paramlist> = <param> [, <paramlist>]"

"Gilles LAURENT [MVP]" wrote:

"lolo1790" wrote:

> quand je rentre tous les parametres
> "OU=Platon,ou=Applications,dc­int,dc=imr,dc=francetelecom,dc=fr "

Il faut saisir le DN de l'ou sans les guillemets
Quel est le message ou code d'erreur dans ce cas ?

> il me dit que ce n'est pas bon mais quand je met dans OU :
> applications/platon , il me met "returnvalue‡" et mon server n'est pas dans
> le domaine ca doit etre dans les parametres OU , ou il y a un soucis.

Le format applications/platon ne respecte pas la syntaxe de l'OU donc c'est
normal que vous receviez dans ce cas le code d'erreur 87

--
Gilles LAURENT
MVP Windows Server - Admin Frameworks
http://glsft.free.fr



1 2