cleanairs
Goto Top

OEM Win11 immer gleich konfigurieren

Moin.

Wie geht Ihr vor?

Ich bekomme einen neuen Rechner mit einem OEM Win 11. Ich lege mir den Admin an. Wenn ich nun einen normalen Benutzer anlege, würde ich gerne eine Art Standard Windows erzeugen, dass bestimmte Einstellungen und Software auf diesem und den nächsten neuen Rechnern einrichtet. So automatisiert wie möglich.

Geht so was ohne AD / GPOs oder werde ich immer wieder die gleichen Installationen und Einstellungen festlegen müssen?

Was ist hier heute "best Practice" ohne AD und GPOs?

Content-Key: 7697076055

Url: https://administrator.de/contentid/7697076055

Printed on: July 24, 2024 at 16:07 o'clock

Member: Th0mKa
Th0mKa Jun 30, 2023 at 11:12:33 (UTC)
Goto Top
Moin,

über wieviele Rechner reden wir denn hier? Ein möglicher Weg wäre z. B. das Microsoft Deployment Toolkit.

/Thomas
Member: Cleanairs
Cleanairs Jun 30, 2023 at 11:13:35 (UTC)
Goto Top
Hi Thomas.

Sehr wenige. Ein, zwei im Jahr. face-smile

Thema interessiert mich aber trotzdem, auch wenn ich es immer händisch machen könnte.
Member: Tezzla
Tezzla Jun 30, 2023 updated at 11:23:24 (UTC)
Goto Top
Moin,

du kannst dir ein Batch- / Powershell-Script bauen, was die Dinge für dich übernimmt.
Das wird bei dem Durchsatz das Einfachste sein.

Natürlich kann man auch die großen Werkzeuge rausholen (Softwareverteilung, Image-Erstellung, Klonen/Sysprepen/...), aber damit wirst du vermutlich nicht glücklich.

Besorg dir für deine Software die Silent-Install Parameter, lege alles, was du brauchst, auf einem Share ab und lass das Script darauf zugreifen (bzw. den User, der das Script ausführt) und installieren. Geschätzt hast du damit schon das meiste erschlagen.
Den Rest möglichst über Reg Keys / Gruppenrichtlinien / sonstige Configfiles automatisch verteilen.

VG
Member: Th0mKa
Th0mKa Jun 30, 2023 at 11:39:41 (UTC)
Goto Top
Zitat von @Cleanairs:
Sehr wenige. Ein, zwei im Jahr.
Thema interessiert mich aber trotzdem, auch wenn ich es immer händisch machen könnte.

Dann ist wahrscheinlich ein einfaches Powershell Script am sinnvollsten.

/Thomas
Member: Cleanairs
Cleanairs Jun 30, 2023 at 11:42:41 (UTC)
Goto Top
Nice, Danke Euch. Hab da schon was in der Richtung gefunden. Muss nur jetzt mal alles aufpumpen und den Teil der Einstellungen usw hinzufügen

# Create an array whose elements are hashtables.
$appArray = (
  @{
    App         = ($thisApp = 'Firefox')  
    App_source  = 'https://download.mozilla.org/?product=firefox-latest&os=win64&lang=en-US'  
    Destination = "c:\Deploy\$thisApp.exe"  
    Argument    = '/S'  
  },
  @{
    App         = ($thisApp = 'Chrome')  
    App_source  = 'https://dl.google.com/tag/s/defaultbrowser/edgedl/chrome/install/GoogleChromeStandaloneEnterprise64.msi'  
    Destination = "c:\Deploy\$thisApp.exe"  
    Argument    = '/norestart /qn'  
  }
)

foreach ($app in $appArray) {
  # Note how $app.<key> is used to refer to the entries of the hashtable at hand,
  # e.g. $app.App yields "Firefox" for the first hashtable. 
  $installed = Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\* | Where-Object { $_.DisplayName -Match $app.App }
  $installed.displayname
  if ($installed.displayname -Match $app.App) {
    Write-Host "$($app.App) already installed."  
  }
  else {
    if ((Test-Path $app.Destination) -eq $false) {
      New-Item -ItemType File -Path $app.Destination -Force
    }
    #install software
    Invoke-WebRequest $app.App_source -OutFile $app.Destination
    Start-Process -FilePath $app.Destination -ArgumentList $app.Argument -Wait
    #Delete installer
    Remove-Item -Recurse $app.Destination
  }
}
Member: StefanKittel
StefanKittel Jun 30, 2023 updated at 11:46:30 (UTC)
Goto Top
Hallo,

schau Dir mal chocolatey https://chocolatey.org/ als vereinfachte Softwareverteilung an.

chocoinstall.bat
@echo off

net session >nul 2>&1
if %errorLevel% == 0 (
	echo Administratorrechte bestaetigt!
) else (
	echo Administratorrechte benoetigt!
	pause
	exit
)

c:
@powershell -NoProfile -ExecutionPolicy unrestricted -Command "iex ((new-object net.webclient).DownloadString('https://chocolatey.org/install.ps1'))" && SET PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin  
pause

chocoupdate.bat
@echo off

net session >nul 2>&1
if %errorLevel% == 0 (
	echo Administratorrechte bestaetigt!
) else (
	echo Administratorrechte benoetigt!
	pause
	exit
)

c:

call choco install -y Firefox
call choco install -y googlechrome
call choco install -y adobereader
call choco install -y treesizefree
call choco install -y 7zip

pause
Member: Cleanairs
Cleanairs Jun 30, 2023 at 12:17:52 (UTC)
Goto Top
jo danke! Winget ist auch noch ganz nett face-smile