Script rapide d'installation nouveau PC

Fermé
Ylrahc45 Messages postés 3 Date d'inscription dimanche 23 août 2020 Statut Membre Dernière intervention 25 août 2020 - 23 août 2020 à 20:24
Ylrahc45 Messages postés 3 Date d'inscription dimanche 23 août 2020 Statut Membre Dernière intervention 25 août 2020 - 25 août 2020 à 11:08
Salut,

Avant-tout je tiens à préciser que je ne pourrai pas suivre vos réponses de façon régulière mais j'essaierai de jeter un œil chaque soir. Je vous demande donc de faire preuve de patience pour mes retours à vos questions.

Mon problème :

Pour faciliter les installations de nouveau PC je cherche à automatiser certaines étapes dans un script powershell.

Traditionnellement mes prédécesseurs passent par ninite (gratuit) pour installer un pack prédéfinit d'applications et ne souhaitent pas changer de façon de faire.
Je ne parviens pas à faire une installation silencieuse du paquet ninite.
Idem pour les antivirus Eset, mais là j'ai contourné le problème en passant par un batch.

Je lance un premier batch dans lequel j'autorise les scripts power shell puis je lance mon fichier ps1. après quoi je lance mon deuxième batch pour l'installation eset.

Au final, j'aimerais effectuer toutes les installations avec mon script powershell que je lancerais avec mon install.bat

Je précise que je débute en powershell. J'utilise des commandes de temps à autre mais c'est la première fois que je tente un script qui effectue plusieurs taches.

Je lance mon premier fichier batch pour appeler mon script :

powershell "Set-ExecutionPolicy RemoteSigned"

powershell %~dp0\script_new_PC_interactif.ps1"

powershell "Set-ExecutionPolicy Restricted"

Install_eset.bat


Le script s'execute

#instancier les logs
start-transcript ".\logs\log.rtf"

# Messagebox d'avertissement



# Instanciation des variables (nom du poste, mdp adm local etc....:

$MdpAdmlocal = Read-Host "saisissez le nouveau mot de passe du compte administrateur" –AsSecureString

$ComputerName = Read-Host "saisissez le nouveau nom de l' ordinateur"

#$EsetLic = Read-Host "Entrez la licence Eset (préférez un copier/coller pour eviter les erreurs de saisie)"

<# desactiver parefeu #>
Set-NetFirewallProfile -Profile * -Enabled True -DefaultInboundAction Allow <#Block#> -DefaultOutboundAction Allow –NotifyOnListen True -AllowUnicastResponseToMulticast True –LogFileName %SystemRoot%\System32\LogFiles\Firewall\pfirewall.log

# activer le compte administrateur local système
Enable-LocalUser Administrateur

# definir le mot de passe administrateur
Set-LocalUser -Name Administrateur -Password $MdpAdmlocal

# pour que le mot de passe n'expire jamais :
Set-LocalUser -Name Administrateur -PasswordNeverExpires $true

# desactiver compte "utilisateur"
Disable-LocalUser -Name "Utilisateur"

# Renommer le poste
Rename-Computer -NewName $ComputerName


# Installer antivirus
#msiexec /i eea_nt64.msi /qn CFG-POTENTIALLYUNWANTED_ENABLED=1 -CFG_LIVEGRID_ENABLED=1 FIRSTSCAN_ENABLED=1 PRODUCT_LANG=1036 PRODUCT_LANG_CODE=fr-fr -ACTIVATIONDATA=key:$EsetLic

# Installer ninite
Start-Process $PSScriptRoot\"Ninite 7Zip Air Chrome Firefox Java AdoptOpenJDK 8 Installer.exe" /silent -Wait #-ArgumentList /q -Wait -PassThru -NoNewWindow

# installer acrobat reader
Start-Process $PSScriptRoot\AcroRdrDC2000920063_fr_FR.exe -ArgumentList /q -Wait <#-PassThru#> -NoNewWindow

#arreter les logs
stop-transcript

J'ai mis la ligne pour l'antivirus en commentaire. J'espère que vous saurez me dire ce qui cloche.
Aucune fenêtre ninite ne se lance avec "-nonewwindows". Si je l'enlève ça démarre mais au bout de 3 secondes j'ai une erreur qui, quand je valide, me conduit à cette page :


L'installation de acrobat reader se lance mais pas en mode silencieux.
Le reste du script se déroule sans accrocs. Je lance alors mon deuxième fichier batch pour installer l'antivirus (copié/collé pris sur internet)

REM ** Check for existing install

if exist "C:\Program Files (x86)\ESET\ESET File Security\egui.exe" goto esetinstalled
if exist "C:\Program Files (x86)\ESET\ESET File Security\x86\ekrn.exe" goto esetinstalled
if exist "C:\Program Files\ESET\ESET File Security\x86\ekrn.exe" goto esetinstalled
if exist "C:\Program Files\ESET\ESET File Security\egui.exe" goto esetinstalled
if exist "C:\Program Files\ESET\ESET Endpoint Antivirus\x86\ekrn.exe" goto esetinstalled
if exist "C:\Program Files\ESET\ESET Endpoint Antivirus\ekrn.exe" goto esetinstalled
if exist "C:\Program Files (x86)\ESET Endpoint Antivirus\ekrn.exe" goto esetinstalled

REM ** Removing Registry Entires
REG DELETE HKEY_LOCAL_MACHINE\SOFTWARE\ESET /f

REM ** Remove old ESET Folders
DEL /f /q "C:\Program Files\ESET"
DEL /f /q "C:\Program Files (x86)\ESET"

if %PROCESSOR_ARCHITECTURE% == x86 goto 32bit
if %PROCESSOR_ARCHITECTURE% == AMD64 goto 64bit

:64bit
msiexec /i "eea_nt64.msi" /qn
goto esetinstalled

:32bit
msiexec /i "\\SERVERNAME\SHARENAME\ESET-32Bit-Installer.msi" /qn
:esetinstalled




Auriez-vous des solutions à me proposer ?

Merci,
A voir également:

3 réponses

Chris_33000 Messages postés 523 Date d'inscription mardi 4 août 2020 Statut Membre Dernière intervention 23 novembre 2020 47
23 août 2020 à 21:00
Bonjour,
il y a trop de 'if exist..
Cordialement,
0
Ylrahc45 Messages postés 3 Date d'inscription dimanche 23 août 2020 Statut Membre Dernière intervention 25 août 2020
23 août 2020 à 22:45
Salut,

Merci pour ton retour mais ce n'est pas le fichier.bat qui pose problème (celui-ci s’exécute à la perfection), mais le script powershell.

Cordialement,
0